Paolo Cignoni
eaf97c0bf3
Great speed improvement of ball pivoting (40x on a 100k vert mesh)
2012-11-14 08:28:42 +00:00
Paolo Cignoni
e268e69ad3
Commenting and cleaning up the ball pivoting/ advancing front framework
2012-11-14 06:17:15 +00:00
Nico Pietroni
3864a934da
corrected 1 call of VFStarVF
2012-11-12 12:59:50 +00:00
Luigi Malomo
5aa4e3a489
warnings removed fo CrossField::IsSingularByCross() function
2012-11-12 12:40:56 +00:00
Luigi Malomo
8dc138cf27
fixed CrossField::IsSingularByCross() function
2012-11-12 12:38:20 +00:00
Paolo Cignoni
ed6042e502
Committed temporary version of the cleaned up curvature computation files
2012-11-12 11:15:21 +00:00
Paolo Cignoni
feb77d945a
Significant changes of interface of VFOrderedStarFF (that substitute two very similar VFOrderedStarFF_VF)
...
Added EFStarFF
2012-11-10 16:53:10 +00:00
Paolo Cignoni
9cea19e537
Cleaned up the UpdateFlags class. Assert into throw...
2012-11-10 16:33:38 +00:00
Paolo Cignoni
586d800c66
added missing edge reflection functions (HasEdgeXXXX etc)
2012-11-10 14:57:53 +00:00
Paolo Cignoni
9900cfd4cc
Added comments and requirements (exception throwing)
2012-11-10 14:41:35 +00:00
Paolo Cignoni
2a21d5fb8e
simple comments and re-indentation for better reading
2012-11-10 14:36:54 +00:00
Paolo Cignoni
a1e4341c98
assert->trhow and first version of the allocateEdge
2012-11-10 06:45:58 +00:00
Paolo Cignoni
1a8c1dafe2
VFlip() and FFlip are const members but there is no need of returning a pointer to a Const element
2012-11-09 11:11:50 +00:00
Paolo Cignoni
6b48acfa9f
Added all the missing component exceptions for colors
2012-11-09 10:52:35 +00:00
Paolo Cignoni
d4cf2019bf
Disambiguated a ComputeNormal()
2012-11-08 18:44:35 +00:00
Paolo Cignoni
e1fb5617ff
assert -> throw exception
2012-11-08 18:37:10 +00:00
Paolo Cignoni
3170472174
added a IMark()->cIMark()
2012-11-08 18:35:38 +00:00
Paolo Cignoni
c367bf93fa
Improved the VertexNormalPointCloud smoothing algorithm (it can re use a kdtree)
2012-11-08 18:33:55 +00:00
Paolo Cignoni
1d092cf736
Added a couple of missing Flags->cFlags
2012-11-08 18:31:13 +00:00
Paolo Cignoni
0d95c87141
Removed the old normal extrapolation
2012-11-08 17:20:31 +00:00
Paolo Cignoni
51a65af2c0
Added new version of algorithm for computing normals for point clouds. Approx 8 times faster and works for clouds of a few millions of points...
2012-11-08 15:33:32 +00:00
Paolo Cignoni
26ee5e5246
const access to flags -> cFlags()
2012-11-07 22:53:41 +00:00
Paolo Cignoni
a97119dde3
Name Cleanup VertexVectorHasPerFaceVFAdjacency -> VertexVectorHasVFAdjacency
2012-11-07 22:51:16 +00:00
Paolo Cignoni
e88379c8c6
Added VertexNormalPointCloud to smooth the normals of a point cloud by using the kdtree instead of the octree...
2012-11-07 22:49:46 +00:00
Paolo Cignoni
8e9430889c
simple orthographic errors in comments
2012-11-07 17:56:07 +00:00
Paolo Cignoni
9f39a0c7cb
added cflags to the emtpycore face component
2012-11-07 15:51:51 +00:00
Paolo Cignoni
5e6d0fe221
corrected use of constant flags method
2012-11-07 15:43:38 +00:00
Paolo Cignoni
1046deb107
Corrected bug recently introduced due to small difference in the signature of the flags functions...
2012-11-07 15:42:14 +00:00
Paolo Cignoni
7bc4277fcd
Cleaned up documentation of components (new doxygroup for them, written something for most of them...).
...
Cleaned Edge components (Added adjacency stuff, implemented the single emptycore)
2012-11-07 01:24:45 +00:00
Paolo Cignoni
bb4f118a03
Small bug in the time computation of Poisson sampling
2012-11-07 01:14:27 +00:00
Paolo Cignoni
4e6a97770b
Significant changes to the Geodesic computation class
...
- Cleaned: removed useless wrapper
- Documented
- Removed the automatic computation of the farthest vertex NOBODY never ever used it in all our basecode (but every one declared a useless var for that...)
- Changed the name of the class to something meaningful (Geodesic::Compute instead of Geo::FarthestVertex)
2012-11-07 01:07:08 +00:00
Paolo Cignoni
2523982d4d
harmless gcc warning (comment in comment)
2012-10-31 21:04:58 +00:00
Paolo Cignoni
b6d198362c
Small changes to the compactVector (added a check on empty vectors) and improved the sample on allocation.
2012-10-31 06:58:08 +00:00
Paolo Cignoni
578ea5ae6b
Added control in the creation of a pos that you pass a consistent triple
2012-10-26 12:39:58 +00:00
Nico Pietroni
8e8f537321
corrected order of functions call in NextE()
2012-10-26 12:28:17 +00:00
Paolo Cignoni
ed4500a156
Improving Documentation: removed doxygen warnings.
2012-10-26 07:08:18 +00:00
Paolo Cignoni
fe95eeca43
Improving Documentation: removed a ton of doxygen warnings. Cleared a bit the groups structure, added a few comments to allocator
2012-10-26 06:16:15 +00:00
Paolo Cignoni
6c3d86d448
Still Improving the documentation.
2012-10-25 23:52:48 +00:00
Paolo Cignoni
7e5ebe06f4
removed useless append.h and a spurious uber still floating around...
2012-10-25 23:39:31 +00:00
Paolo Cignoni
d59ea952ed
Added append to the set of files always included by complex.h
2012-10-25 23:37:25 +00:00
Paolo Cignoni
fc5a0216ac
Improved documentation about allocation. Added sample on allocation.
2012-10-25 22:53:33 +00:00
Paolo Cignoni
d784bebe07
Added guards to avoid useless (and sometime dangerous) inclusion of internal file of the vcglib
2012-10-25 21:29:10 +00:00
Paolo Cignoni
671af109a9
improved vertex component documentation
2012-10-25 21:20:10 +00:00
Paolo Cignoni
2c32f546ef
Added a VertexConstDataWrapper to the kdtree helper classes for a simpler use of a kdtree to index the vertexes of a mesh
2012-10-25 16:55:52 +00:00
Paolo Cignoni
9658740974
Improving documentation. Reordered groups and started documenting main components
2012-10-25 13:47:31 +00:00
Paolo Cignoni
4c0acdbb7c
Removed all the UberXXX members from the various components. No more needed since many years. Still there just because we are quite lazy...
2012-10-25 13:46:08 +00:00
Paolo Cignoni
049c996846
Removed all the UberXXX members from the various components. No more needed since many years. Still there just because we are quite lazy...
2012-10-25 13:16:03 +00:00
Paolo Cignoni
cfda5a3eca
Removed all the UberXXX members from the various components. No more needed since many years. Still there just because we are quite lazy...
2012-10-25 13:07:25 +00:00
Paolo Cignoni
b045c9b992
Removed old useless files. Why do we kept them?
2012-10-25 13:01:34 +00:00
Paolo Cignoni
84b9387264
Removed inclusion of subset.h
2012-10-23 23:41:41 +00:00
Paolo Cignoni
864f9cb9d7
Removed two now useless files, boundary (that involved conversion between tetrahedral and tri meshes) and subset (duplicate functionalities wrt append.h)
2012-10-23 11:12:41 +00:00
Paolo Cignoni
027da6f0a8
Just changed the default number of rotation attempt for packing OO polygons
2012-10-23 08:48:26 +00:00
Paolo Cignoni
b26b406f8f
Added a ToEigenVector method
2012-10-22 18:43:24 +00:00
Paolo Cignoni
ecd88fcb28
Added a default parameter to the sampling class and a few utility sampling classes for taking point on faces.
2012-10-22 18:42:11 +00:00
Paolo Cignoni
c980267cd8
Corrected refine, Now instead of using a dangerous vector of vertex type (that could cause issues with ocf types) it use just a vector of pair<position,normal>
2012-10-22 18:37:51 +00:00
Paolo Cignoni
c932c5d60a
Removed Covariance computing function from Matrix Class, moved into fitting
2012-10-22 18:34:08 +00:00
Paolo Cignoni
c87cd495de
Rewrote of the Fitting to plane functions. Added Weighted version and sample
2012-10-22 18:27:30 +00:00
granzuglia
3a6031554b
- updated file according to new vcglib syntax
2012-10-22 12:11:49 +00:00
granzuglia
1151b88b54
- updated file according to new vcglib syntax
2012-10-22 12:06:43 +00:00
ganovelli
60be67113d
removed
2012-10-19 15:08:14 +00:00
Paolo Cignoni
75122cd193
Improved comments and interface of perlin noise color
2012-10-19 12:32:05 +00:00
Paolo Cignoni
1918c53a09
Cleaning of names and reordering of Color functions
2012-10-19 11:52:57 +00:00
Paolo Cignoni
b1a1b36260
Re added the empty component. It can be useful sometimes...
2012-10-19 11:45:51 +00:00
Paolo Cignoni
f96cbbe7e4
Made the member with the distfunctor no more a reference but a copy. To avoid issues when passing temporary dist functors...
2012-10-18 09:01:51 +00:00
Paolo Cignoni
d3d85dd0c0
corrected small bug in the gridclosest scanning function that caused rescan of the inner box when the search region in the uniform grid was growing.
2012-10-18 08:44:11 +00:00
Nico Pietroni
f4ef1e09d5
removed import/export functions and added to wrap/io_trimesh/import_field.h and wrap/io_trimesh/export_field.h
2012-10-16 10:07:58 +00:00
Paolo Cignoni
ac9b6b16f2
Improved documentation of inertia and slightly changed the interface (added a constructor)
2012-10-16 07:36:35 +00:00
Paolo Cignoni
036aeae1c9
corrected a bug in torus creation
2012-10-15 12:49:17 +00:00
Paolo Cignoni
ec0c145454
corrected the order or the parameter of the torus
2012-10-15 09:58:01 +00:00
Paolo Cignoni
372ee1ed99
Corrected a small (!) bug in the IntersectionSegmentTriangle. (the line triangle intersection function returns a **signed** distance...)
2012-10-15 09:42:05 +00:00
Paolo Cignoni
1331ead487
Corrected a small bug in TestFaceFaceIntersection
...
the case of two faces sharing an edge was not managed correctly in the case the two faces had the two edges opposite to the shared vertex lying on the same plane.
2012-10-15 09:26:15 +00:00
Paolo Cignoni
fb60087ee4
component_ocf are now part of the standard inclusion sequence of complex.h
...
No more need of including them.
It was needed to avoid the issue of wrong inclusion order that could trigger a failure in the partial specialization of the reflection functions that should say if a component is present or not...
2012-10-15 09:17:48 +00:00
Paolo Cignoni
42252b04b4
Improved documentation of Attribute mechanims
2012-10-15 08:17:26 +00:00
Nico Pietroni
8d4bdc467e
added function VFExtendedStarVF
2012-10-14 09:24:49 +00:00
Nico Pietroni
210b348626
corrected UpdateNormal calls
2012-10-14 07:41:58 +00:00
Nico Pietroni
a8e4104559
removed missmatch initialization in SelectSingularByCross function
2012-10-14 07:40:26 +00:00
Paolo Cignoni
980b463a41
Added Torus primitive creation
2012-10-11 22:45:21 +00:00
Paolo Cignoni
a40bb0ff93
minimal change (useless passing by reference of const intended parameters)
2012-10-11 11:19:37 +00:00
Paolo Cignoni
6739455da9
Updated to reflect the naming changes in updateNormals
2012-10-11 11:11:33 +00:00
Paolo Cignoni
41060feef9
Updated to reflect the naming changes in updateNormals
2012-10-11 11:09:30 +00:00
Paolo Cignoni
df87b9710e
Updated to reflect the naming changes in updateNormals
2012-10-11 11:08:38 +00:00
Paolo Cignoni
bf13a8ee8f
Changed a bit the interface of the exception throwing. Updated normals and other to follow this changes
2012-10-11 11:04:37 +00:00
Paolo Cignoni
36c12730d9
Substituted old deprecated LinAlg with Eigen stuff
2012-10-11 11:02:52 +00:00
Paolo Cignoni
19675a4e33
Deprecating the use of old dangerous linear algebra code. Please use Eigen!
...
Now attempting to include lin_algebra will block your compilation...
2012-10-11 10:48:55 +00:00
Paolo Cignoni
44b9b56c42
Updated to reflect the naming changes in updateNormals
2012-10-09 08:51:15 +00:00
Paolo Cignoni
ba4a51e02d
Updated to reflect the naming changes in updateNormals
2012-10-09 08:00:25 +00:00
Paolo Cignoni
f9b2088e12
Cleaned up and moved into the tri namespace all the refine class
2012-10-09 07:56:47 +00:00
Paolo Cignoni
34f4e6c98c
**** SIGNIFICANT CHANGE ****
...
Name uniformation NO MORE PLURALS IN NAMES
From UpdateNormals to UpdateNormal
2012-10-09 07:55:30 +00:00
Paolo Cignoni
905e1a7209
Cleaned up a bit
2012-10-09 07:53:55 +00:00
Paolo Cignoni
bc3952ccc1
Updated to reflect the naming changes in updateNormals
2012-10-09 07:48:22 +00:00
Paolo Cignoni
fc75c0c62d
Harmless gcc warnings
2012-10-09 07:05:45 +00:00
Paolo Cignoni
707577cbf9
Removed unnecessary include files:
2012-10-08 12:07:14 +00:00
Nico Pietroni
c4b53d16cc
edded 2 includes:
...
* component.h for per face Normal calculation function
* exception.h for excepion handling
2012-10-08 11:51:35 +00:00
Paolo Cignoni
f53f93d553
Updated to reflect the naming changes in updateNormals
2012-10-08 10:27:19 +00:00
Paolo Cignoni
feeec9f979
Updated to reflect the naming changes in updateNormals
2012-10-08 09:12:21 +00:00
Paolo Cignoni
bd171b714f
Orthography lenght -> length
2012-10-08 09:10:03 +00:00
Paolo Cignoni
1ba693c4f7
Orthography lenght -> length
2012-10-08 09:07:50 +00:00
Paolo Cignoni
b974b6987d
Updated to reflect the naming changes in updateNormals
2012-10-08 09:06:50 +00:00
Paolo Cignoni
c059114300
Orthography lenght -> length
2012-10-08 09:05:11 +00:00
Paolo Cignoni
dfc9192715
Orthography lenght -> length
2012-10-08 09:03:25 +00:00
Paolo Cignoni
33e1231056
Heavily reformatted and cleaned for documentation. Hopefully no semantic changes involved...
2012-10-08 09:01:24 +00:00
Paolo Cignoni
6f7db152b2
updated to the new eigen folder structure (something moved out from unsupported folder...)
2012-10-05 17:01:22 +00:00
Paolo Cignoni
ab76074ccc
removed useless ;
2012-10-04 20:41:28 +00:00
Paolo Cignoni
cbf99ac69a
updated to the change update/edge -> update/component_ep
2012-10-04 20:40:40 +00:00
Paolo Cignoni
18e2f6dd7c
Updated to the new exception based strategy (no more assert for missing components)
2012-10-04 20:37:49 +00:00
Paolo Cignoni
f62ca270b7
Better naming for the EdgePlane face component for fast closest query
2012-10-04 16:22:08 +00:00
Paolo Cignoni
2b0dbf2d20
Better naming for the EdgePlane face component for fast closest query
2012-10-04 16:19:03 +00:00
Paolo Cignoni
a7dc9a853e
Better naming for the EdgePlane face component for fast closest query
2012-10-04 16:17:31 +00:00
Paolo Cignoni
d97f08e23e
Better naming for the EdgePlane face component for fast closest query
2012-10-04 16:15:24 +00:00
Paolo Cignoni
2577210a54
**** SIGNIFICANT CHANGES *****
...
- Cleaned up include order: Now you only need to include <vcg/complex/complex.h> (no more vertex/base.h etc)
- Added official VN() EN() FN() const members for knowing number of vertexes etc...
- Added exceptions (at last!)
Now instead of:
assert(HasPerVertexNormal(m))
you should write:
if(!HasPerFaceNormal(m)) throw vcg::MissingComponentException();
2012-10-04 11:10:25 +00:00
Nico Pietroni
1aecce2033
added IsCCW function
2012-10-03 16:39:29 +00:00
Nico Pietroni
7ffcc407c9
corrected some warning and added support for read/write rosy format
2012-10-03 16:38:23 +00:00
Paolo Cignoni
14cffd1f6e
Removed template default parameter. Now if you use the distortion class you have to specify if you want per vertex or per wedge tex coords.
2012-10-02 13:42:33 +00:00
Nico Pietroni
dcb0d036ff
added FindSharedFaces and VFOrderedStarVF functions
2012-09-22 12:54:30 +00:00
Massimiliano Corsini
47adc093b2
add the possibility to specify the cell size
2012-09-19 09:05:40 +00:00
Nico Pietroni
a95c0efa2e
added GradientToCross and ExporttoRosy format see Interactive Visualization of Rotational Symmetry Fields on Surfaces
...
Jonathan Palacios and Eugene Zhang
2012-09-18 15:31:40 +00:00
Nico Pietroni
e2e948dbd6
added cast to float lines 308 309
2012-09-18 15:18:33 +00:00
Nico Pietroni
0cde611654
added function SetQasDistorsion and minor changes
2012-09-18 15:14:12 +00:00
Nico Pietroni
3658530bde
corrected some warning
2012-09-05 23:25:55 +00:00
Nico Pietroni
be2d3613b9
added one more call of VFStarVF that returns also the indexes of vertices as seen from the faces
2012-09-03 15:57:52 +00:00
Nico Pietroni
d9a95aaffc
added Function FaceClearS
2012-09-03 15:56:24 +00:00
Nico Pietroni
10e827b071
added include <wrap/callback.h>
2012-09-03 15:55:41 +00:00
Nico Pietroni
b297040835
added MakeDirectionFaceCoherent
...
solved gcc compiling issues
2012-09-03 15:54:25 +00:00
Massimiliano Corsini
dec783bcf0
add SetByPointers to deal with containers of pointers instead of containers of elements
2012-09-03 13:50:42 +00:00
Federico Ponchio
0ac7034397
added method to get Projection matrix given near and far.
2012-08-29 13:21:22 +00:00
Massimiliano Corsini
f16b821dc0
minor fix
2012-08-27 15:50:55 +00:00
Nico Pietroni
fc97ed0e1c
added support for primitive subdivision into cells
2012-08-27 12:47:12 +00:00
Nico Pietroni
461c8e1552
added support for primitive subdivision into cells
2012-08-27 12:46:50 +00:00
Marco Di Benedetto
c209a384a0
fixed Color4bOcf interface (missing "public" section).
2012-08-22 18:36:59 +00:00
Paolo Cignoni
cfba5001fd
Disambiguate function name PerVertexWeighted -> PerVertexNelsonMaxWeighted
2012-07-31 09:15:20 +00:00
Paolo Cignoni
f3ef64cc0c
Heavily changed the whole hole filling class, now much shorter, more readable and hopefully more robust.
...
Still to better balance shape vs diedral angle quality measure.
2012-07-31 09:13:48 +00:00
granzuglia
0edde01197
- removed compiler time error from TestIntersection to TestFaceFaceIntersection
2012-07-27 17:48:17 +00:00
Paolo Cignoni
2aa57698ad
better uniform naming for detach attach functions (now there is FFAttach, FFAttachManifold, FFDetach, etc)
...
changed SharedVertex into FindSharedVertex
added FindSharedEdge
2012-07-27 12:59:27 +00:00
Paolo Cignoni
500a478e14
Improved the SplitNonManifoldVertex function. Now it is able to also move the split vertexes apart
2012-07-27 12:57:34 +00:00
mtarini
3adc453f53
Now zonohedra construction robust to basically *any* input, no matter how degenerate.
2012-07-24 01:48:21 +00:00
granzuglia
0448e15f5b
- removed compile time errors
2012-07-23 12:16:17 +00:00
mtarini
15665c15ef
added a few testing methods (IsTriOnly, IsQuadOnly, IsTriQuadOnly)
2012-07-20 13:50:08 +00:00
Massimiliano Corsini
a5bec5b623
Fix Remove method (replace 3d box with 2d box)
2012-07-20 11:07:04 +00:00
Paolo Cignoni
f1d6d5d32a
Changed the GetInfo of the hole stuff. Now it require the userbit specified
2012-07-19 08:09:28 +00:00
mtarini
a70fd3daa5
Better comments
2012-07-18 22:18:14 +00:00
mtarini
8e4a8e9b6e
first version
2012-07-18 22:02:36 +00:00
mtarini
240b88a582
added method MergeFlatFaces (does what it says). Plus clean-ups.
2012-07-18 21:46:12 +00:00
Paolo Cignoni
45b0deb7eb
Important Change: ** LastBitFlag ** now is named ** FirstUnusedBitFlag **
...
Corrected the name of the function allocating a user bit among the flags of the simplexes.
Changed in ALL the simplexes (vertex, edge, face, etc) and updating functions.
Note that the LastBitFlag should never be used by common users...
2012-07-18 09:37:32 +00:00
mtarini
36d9030955
added SplitNonFlatQuads method
2012-07-17 19:21:46 +00:00
ganovelli
d9132e6cbc
corrected assertion
2012-07-09 15:14:36 +00:00
ganovelli
924cf9a4ec
changed a comment
2012-07-09 15:12:56 +00:00
Paolo Cignoni
7ffb878913
SIGNIFICANT CHANGE
...
About the point to mesh distance functionalities
Now the two different 'path' for this distance computation (with or without the precomputation of planes and edges for triangular faces) are well distinct and with different names:
PointDistanceEP and PointDistanceBase
See the sample/trimesh_closest sample for more details
2012-07-06 15:24:04 +00:00
Paolo Cignoni
58eced0506
Changed one of the init overload Set(), the one that allowed to specify the cell radius but ACTUALLY it did not use it...
...
now has a new name : SetWithRadius
2012-07-06 09:40:09 +00:00
Paolo Cignoni
87d01da58f
Yet some other changes to the stat collecting functions for computing the average edge lenght on a mesh.
2012-07-06 09:06:43 +00:00
Paolo Cignoni
3d956d8b48
Changed ComputeFaceEdgeHistogram into ComputeFaceEdgeDistribution. It was plainly wrong... :(
2012-07-06 08:08:24 +00:00
Paolo Cignoni
38b8ab1f15
Corrected a bug in GridStaticPointer: The hint about the number of cell to be used was ignored and used only to compute the expansion offset.
2012-07-06 06:58:17 +00:00
Paolo Cignoni
81a4cd4765
Corrected two wrong (unused) return types in stat collecting functions for trimesh
2012-07-06 05:38:05 +00:00
Paolo Cignoni
24110c34b2
added an Empty Component for the edgePlane component.
2012-07-06 05:07:25 +00:00
granzuglia
398f906bb6
added missing cmath include
2012-07-05 14:46:16 +00:00
Paolo Cignoni
b77fa00b5e
removed a few unused commented out funcs
2012-07-04 15:27:17 +00:00
Paolo Cignoni
cd1ae00082
Added tri::UpdateFlags<MESH_TYPE>::FaceBorderFromFF(m); to the basic refine call.
...
In order to move these per face flags in less places as possible...
2012-07-04 15:25:21 +00:00
Paolo Cignoni
b2e2bfe2df
added Cotangent weighting to the basic laplacian smoothing.
2012-07-04 15:23:59 +00:00
granzuglia
db57bd4e19
added missing public keyword on the static Name function of some ocf components.
2012-07-03 11:12:21 +00:00
Paolo Cignoni
bfc10096f0
small improvemnt in stat collection for voronoi atlas
2012-07-03 10:21:41 +00:00
Paolo Cignoni
7e4e023266
Removed a dubious unused normalize method...
2012-07-03 09:29:48 +00:00
Paolo Cignoni
f036874693
better comments
2012-07-03 09:14:17 +00:00
Paolo Cignoni
e362d54a25
Timing functions and stat collecting for voronoi atlas
2012-07-03 09:13:07 +00:00
Paolo Cignoni
b08fda7641
Corrected SegmentPointSquaredDistance to do not use anymore a hardcoded EPSilon value...
2012-07-02 16:45:49 +00:00
Paolo Cignoni
776fbe45a0
First Version of the Voronoi Atlas parametrizator.
2012-07-02 16:41:28 +00:00
Paolo Cignoni
539de75614
Cleaned up a bit the printint stuff. Now it should collect stats in a more clean way
2012-07-02 16:31:52 +00:00
ganovelli
0f99bd505e
changes and minor fix to enable input/output with VMI on memory
2012-07-02 14:38:10 +00:00
Paolo Cignoni
487b6c7bd5
Corrected a bug in search for the best edge to be fixed in the FindFarthestVert when setting up the system for the poisson solver...
2012-07-02 09:38:42 +00:00
Paolo Cignoni
7cc19a31c6
Added two stupid wrapper to ComputePerFaceQualityMinMax and ComputePerVertexQualityMinMax
2012-07-02 08:30:17 +00:00
Paolo Cignoni
52fed4c451
Added a PerWedgeMakeUnitaryUV to normalize for packing
2012-07-02 08:29:11 +00:00
Paolo Cignoni
ad9a7a237d
updated to match the Distorsion->Distortion name change
2012-07-02 08:19:06 +00:00
Paolo Cignoni
d900752b52
Renamed to correct the spelling error (distorsion -> distortion)
2012-07-02 08:15:24 +00:00
Paolo Cignoni
d6ff9f01de
Heavily modified. Corrected Spelling of distorsion->distortion
...
Completed a few measures and added difference between angle distortion in cos or rad space
2012-07-02 08:13:50 +00:00
Paolo Cignoni
28f3e120f0
Corrected naming for the unreference vertices function now the func that just count the unref vert is called CountUnreferencedVertex
2012-06-28 17:21:20 +00:00
Paolo Cignoni
9ed6314d10
removed harmless gcc warnings
2012-06-28 09:09:08 +00:00
Nico Pietroni
066f46c20b
first release version
2012-06-22 14:27:33 +00:00
Nico Pietroni
614a5fec16
first release version
2012-06-22 14:25:35 +00:00
Nico Pietroni
0e3d2abcfd
corrected return value of closest point
2012-06-22 14:23:33 +00:00
Paolo Cignoni
af15a07c0f
corrected small bug in RemoveDuplicateFace involving the unsafe subtracting 1 from an unsigned int that could be zero...
2012-06-14 13:48:25 +00:00
Federico Ponchio
cb639a12d7
renamed from max/min to hi/low
2012-06-14 09:40:26 +00:00
Paolo Cignoni
36905c5d93
Added extrude.h file for the creation of extruded meshes from profiles
2012-06-06 06:25:56 +00:00
Paolo Cignoni
75ebfa9d5a
Rewrote and commented the function that given a face pointer it follows the chain of non-faux edges. Now it supports the case of meshes with face with ALL edges faux (isolated faces in a polygon).
2012-05-28 11:30:37 +00:00
Nico Pietroni
894ebb26f6
added RemoveHugeConnectedComponentsDiameter function
2012-05-25 13:33:36 +00:00
Nico Pietroni
d4ad0bd6f6
added check if length of segment is zero then function SegmentPointDistance still works
2012-05-25 13:32:48 +00:00
Nico Pietroni
5445d99402
several major modifications
2012-05-25 13:21:11 +00:00
Nico Pietroni
c1e19b4b55
added assert(0) for cVFi function if does not exixts the component
2012-05-25 13:19:03 +00:00
Paolo Cignoni
cb3fc0dbe2
corrected harmless gcc warnings
2012-05-06 16:01:14 +00:00
Paolo Cignoni
0c16045423
corrected harmless gcc warnings
2012-05-06 15:36:02 +00:00
Paolo Cignoni
64d7f31279
corrected bug in the face laplacian normal smoothing
2012-05-06 15:31:07 +00:00
Paolo Cignoni
37759ffcb0
sligthly better comments
2012-05-06 14:42:04 +00:00
Paolo Cignoni
05195b6201
in the functions for creating meshes: corrected bug in the OrientedRect and changed the interface of the grid to allow the creation of a flag grid
2012-05-06 14:22:29 +00:00
Paolo Cignoni
0cad100f9d
corrected harmless gcc warnings
2012-05-06 14:20:34 +00:00
Paolo Cignoni
486475d4a3
added another assert to histogram to avoid trash result...
2012-05-05 14:55:50 +00:00
Paolo Cignoni
7537b20933
Added a NormalizedDirection method
2012-05-05 14:54:45 +00:00
Paolo Cignoni
e532ec9751
Added VVStarVE and VEStarVE functions (to get stars of vertexes and edges when working with edge meshes) to edge topology.
2012-04-27 09:23:01 +00:00
Paolo Cignoni
4c44513d4f
corrected bug in the UpdateTopology::EdgeEdge function: it touched a vector element beyond .end()
2012-04-22 09:01:04 +00:00
Paolo Cignoni
39df21640a
Updated to reflect the change from ColorRamp -> SetColorRamp
2012-04-18 21:19:11 +00:00
Paolo Cignoni
8eb94a7f9d
Changed ColorRamp non static method into a static one (that constructs a Color4b object) and added a more uniform SetColorRamp method.
2012-04-18 21:17:04 +00:00
Paolo Cignoni
5f22a3f7b5
added a very simple function wrapper to get a poisson disk distribution over a mesh with just function call
2012-04-18 21:12:12 +00:00
Paolo Cignoni
508c733bd4
added a missing updateQuality::FaceFromVertex
2012-04-18 21:09:56 +00:00
Paolo Cignoni
ba507529c8
Modified intersectionPlaneQuality so that it also compute the per vertex normal according to the mesh...
2012-04-18 21:09:08 +00:00
Paolo Cignoni
ffdc2f2b28
Geodesic: Added possibility of saving also the implict tree of the shortest path. For each vertex you can give an attribute where the function will save the 'parent' e.g. the previous vertex in the shortest path to the closest source.
2012-04-12 23:54:23 +00:00
Marco Di Benedetto
1c5f2c2264
added static capability query function for ocf vertex texcoord (VertexVectorHasPerVertexTexCoord()) (not having it caused false positives).
2012-04-10 16:47:15 +00:00
Marco Di Benedetto
a82ac9639f
added constant accessors without the infamous "c" prefix for color (C()) and texcoord (T()).
2012-04-10 15:46:20 +00:00
granzuglia
1548d6415a
added missing functions in Empty:
...
- static bool HasCurvatureDir() { return false; }
- static bool IsCurvatureEnabled(const typename TT::VertexType *) { return false; }
2012-04-06 08:10:32 +00:00
Paolo Cignoni
5aed57a364
Heavy restructuring of the append function. Now it is hopefully must more efficient.
...
Added a parameter for requesting the copy of the non trivial topology. (e.g. all the adjacency relations beyond FV and EV).
2012-04-04 10:11:46 +00:00
Paolo Cignoni
b0d7d5c52e
removed harmless gcc warnings
2012-04-04 10:05:35 +00:00
Paolo Cignoni
ea701b39b3
Restructured Face component in order to follow the unique emptycore approach that avoid an endless derivation chain in the type definition
2012-04-04 10:04:46 +00:00
Paolo Cignoni
3811efacd8
removed useless include
2012-04-04 09:59:42 +00:00
Paolo Cignoni
059a2f220b
added EdgeCount method for counting selected edges
2012-04-04 09:59:10 +00:00
Paolo Cignoni
06d481f5de
standardized function names e used area function of vcg lib
2012-04-04 09:57:46 +00:00
Paolo Cignoni
783aef369b
added hn initialization in the trimesh constructor
2012-04-04 09:53:54 +00:00
msabbadin
7c3687b8db
corrected an assert in PrincipalDirections static method:
...
from assert(m.HasVFAdjency());
to assert(tri::HasPerFaceVFAdjacency(m) && tri::HasPerVertexVFAdjacency(m));
2012-04-02 14:42:56 +00:00
Paolo Cignoni
8a631d48c1
Corrected a significant bug in the reflection types for ocf components.
...
Changed the basic reflection mechanism: Instead of having a function templates over all the four containers now we template over Trimesh and we rely on a second function templated on face/vert that wants a vector<face> ; this second function only is eventually overloaded by another function that needs a vector_ocf of faces.
That is Before we had:
- in complex.h
template < class CType0, class CType1, class CType2 , class CType3>
bool HasPerFaceVFAdjacency (const TriMesh < CType0, CType1, CType2, CType3> & /*m*/) {return TriMesh < CType0 , CType1, CType2, CType3>::FaceContainer::value_type::HasVFAdjacency();}
- in the component_ocf.h
template < class VertContainerType, class FaceType, class Container1, class Container2 >
bool HasPerFaceVFAdjacency (const TriMesh < VertContainerType , face::vector_ocf< FaceType >, Container1, Container2 > & m)
{
if(FaceType::HasVFAdjacencyOcf()) return m.face.IsVFAdjacencyEnabled();
else return FaceType::FaceType::HasVFAdjacency();
}
While now we have:
- in complex.h
template < class FaceType > bool FaceVectorHasPerFaceVFAdjacency (const std::vector<FaceType > &) { return FaceType::HasVFAdjacency(); }
template < class TriMeshType> bool HasPerFaceVFAdjacency (const TriMeshType &m) { return tri::FaceVectorHasPerFaceVFAdjacency (m.vert); }
- and in component_ocf.h
template < class FaceType >
bool FaceVectorHasPerFaceVFAdjacency(const face::vector_ocf<FaceType> &fv)
{
if(FaceType::HasVFAdjacencyOcf()) return fv.IsVFAdjacencyEnabled();
else return FaceType::HasVFAdjacency();
}
2012-03-31 01:16:58 +00:00
Paolo Cignoni
b43fffd46f
added a few security assert on deletion of simplexes that you are actually deleting objects that belongs to the given mesh
2012-03-30 23:43:04 +00:00
Paolo Cignoni
e3d0a6d0cb
added method for generating a random point into a triangle (it generate three random barycentric coords)
2012-03-30 23:42:04 +00:00
Nico Pietroni
a53447ab1c
added VFOrderedStarVF_FF function
2012-03-29 16:36:01 +00:00
Nico Pietroni
fe71126700
added TransformationMatrix function
2012-03-29 16:34:31 +00:00
Nico Pietroni
d5e7d551ba
clean up the code and used new per face component
2012-03-29 16:33:33 +00:00
ganovelli
bbcfbfabc2
added CurvatureDir to Face
2012-03-28 12:39:22 +00:00
ganovelli
749f67c3b6
added curvature direction
2012-03-28 11:56:10 +00:00
Nico Pietroni
4f166fbd95
added Crease Flag access functions
2012-03-16 13:49:04 +00:00
Nico Pietroni
d4275a3597
added several functions
2012-03-16 13:48:18 +00:00
Nico Pietroni
d941439fbb
corrected several bugs and done several changes
2012-03-16 13:47:42 +00:00
Paolo Cignoni
57bd611892
added assert in the VFIterator to handle uninitialized topology.
2012-03-14 16:02:30 +00:00
Paolo Cignoni
c4e116a42a
Corrected a bug in the RemoveUnreferencedVertex. It considered only faces and removed vertices referenced by edges
2012-03-14 16:01:30 +00:00
Paolo Cignoni
f58551601a
CHANGE to the VERY USED PointDistanceBase, the basic functor used to find the closest point to a face in all the grids.
...
It has a bug that could return a nan in some degnerate case where an almost null face has different vertices but the squared distance between them could be zero.
Now it should handle also these cases.
2012-03-14 15:59:42 +00:00
Paolo Cignoni
b57a747441
rewriting of the SegmentPointSquaredDistance, now it is much much much shorter.
2012-03-14 15:57:37 +00:00
Nico Pietroni
ad417602bd
added default constructor
2012-03-09 11:01:25 +00:00
Nico Pietroni
5e7f95f94a
major changes
2012-03-08 18:09:31 +00:00
Nico Pietroni
f97f54a89b
erased vertex manifold as prerequisite
2012-03-08 18:09:09 +00:00
Nico Pietroni
1aed2f16da
first release version.. need to be tested in several functions
2012-03-08 18:08:35 +00:00
Paolo Cignoni
add25e7bf0
added a missing std::
2012-02-27 07:06:26 +00:00
Paolo Cignoni
29fdad2622
Added constructor with seed to the Mersenne rnd generator
2012-02-27 06:58:17 +00:00
Paolo Cignoni
6983d4f6e9
Added a few comments...
2012-02-25 14:40:23 +00:00
Paolo Cignoni
bc57fc36b4
Moved here and cleaned the kdtree for points implemented by Gael
2012-02-22 16:57:44 +00:00
Luigi Malomo
01453b8b0e
Fixed a call to InterpolationParameters. A Point3 reference must be provided for barycentric coordinates output, instead of 3 separate scalars.
2012-02-14 12:13:38 +00:00
Luigi Malomo
f358db54fd
Added a quick check for callback presence (avoid crash if cb function is not provided)
2012-02-14 12:02:43 +00:00
Paolo Cignoni
1def190868
harmless gcc warnings
2012-02-09 17:55:41 +00:00
Paolo Cignoni
159f9d0c0f
added an assertion to block the use of VEiterators in case of unitialized VEadjacency
2012-02-09 17:54:25 +00:00
Paolo Cignoni
c8e202738c
added initialization of VE adjacency components to something that allows to discriminate between the uninitializated adjacency and a vertex with no edges
2012-02-09 17:53:08 +00:00
Paolo Cignoni
d331cf7f60
Added OrientedDisk creation method. and a missing "clear()"
2012-02-09 17:50:38 +00:00
Paolo Cignoni
790cf5d7ef
Added a second function to compute the distance between a point and a box, according to the fact that you need the distance between the surface of a box or the distance from the filled box (e.g. the distance is 0 inside the box)
2012-02-09 17:30:54 +00:00
Paolo Cignoni
86f636b64b
Added function to add a point with radius to a bbox.
2012-02-09 17:24:23 +00:00
Nico Pietroni
69508353bb
resolved minor compilation issues
2012-02-09 14:02:34 +00:00
Paolo Cignoni
c90b11ca80
Changed all the MeshType::HasSomething() into the now standard tri::HasSomething(MeshType &m)
...
This changed implied the fact that you need different functor constructor (you have to keep the mesh inside it to know at runtime if some attribute are present or not)
2012-01-25 10:23:22 +00:00
Nico Pietroni
fc7983d3fd
added HasPolyInfo function, line 538
2012-01-24 13:34:46 +00:00
Nico Pietroni
5ad96544bb
added several functions...
2012-01-23 13:09:38 +00:00
Paolo Cignoni
b10ed11bc0
Added two functions to build disk, rectangles and squares (oriented in space).
...
Changed the reflection functions as usual
2012-01-23 07:07:19 +00:00
Paolo Cignoni
c32db09276
Changed the name of the Distance from point to plane
...
from DistancePointPlane
to SignedDistancePointPlane
to underline the fact that it is SIGNED!!!
2012-01-23 06:47:31 +00:00
Paolo Cignoni
48e607f884
Changed all the MeshType::HasSomething() into the now standard tri::HasSomething(MeshType &m)
2012-01-23 06:38:32 +00:00