Paolo Cignoni
ee9c389418
Rewrote the RemoveUnreferenceVertex to not use bit flags.
2017-01-22 00:32:44 +01:00
Paolo Cignoni
f9169b8ec2
Refactored a number of cleaning algorithms
...
Issues resolved:
- removed assert and used the correct meshassert exceptions
- removed wrong use of selection instead of visiting flag (various
filters destroyed selection when called)
- rewrote a totally clumsy count hole.
2016-11-02 12:11:18 +01:00
Paolo Cignoni
32333eba24
Huge copyright sanitization of the header files of vcg folder.
2016-06-13 05:29:25 +00:00
Paolo Cignoni
71ae65fde7
Modified according to the changes of edge::VVStarVE
2016-04-11 20:34:56 +00:00
Paolo Cignoni
247177a584
Corrected missing return value in SplitSelectedVertexOnEdgeMesh (thanks to David Cattermole)
2016-03-08 18:49:49 +00:00
Paolo Cignoni
3330625ba6
Added a simple IsWaterTight method
2016-01-30 23:05:51 +00:00
Paolo Cignoni
399e4b204d
added a require per face mark
2015-12-31 11:46:51 +00:00
Paolo Cignoni
e878336450
Renamed VertexTMark into EmptyMark to reflect its nature (do nothing) and be easier to be used in other context (e.g. as a dummy marker functor for edges)
2015-12-03 22:59:13 +00:00
Paolo Cignoni
874346d211
Removed unused typenames (with latest generation of compilers it become a warning as unused variables)
2015-09-24 16:41:34 +00:00
granzuglia
1dc8a067ac
- removed compiler time errors
2015-07-06 02:38:32 +00:00
Gianpaolo Palma
e5fbdd9e22
Added a new function (SelectFoldedFaceFromOneRingFaces) to selected the folded faces (also non self-intersected faces) using an angle threshold.
2015-07-03 12:21:54 +00:00
Nico Pietroni
f7a602625f
minor change to merge vertex coherently (keep the same global ordering of the vertices)
2014-12-08 15:13:32 +00:00
Paolo Cignoni
4b0e72293f
Added ComputeValence function
2014-11-12 00:13:05 +00:00
Paolo Cignoni
fdf0b5b2ec
minor aestetical changes and added edge size checking to the IsSizeConsistent function
2014-08-28 01:55:43 +00:00
Paolo Cignoni
c6e5015090
Added SplitSelectedVertexOnEdgeMesh that split an edge mesh along the selected vertices. Useful to decompose an edgemesh into simple manifold polylines.
2014-08-26 01:42:09 +00:00
Paolo Cignoni
e29b18045c
Improved float/double consistency removing some wrong Point3f and substitued with MeshType::CoordType
2014-06-19 10:26:13 +00:00
Paolo Cignoni
b6c540f554
Small changes in the long long way to making meshlab and the vcglib really float/double independent
2014-06-18 10:37:48 +00:00
Paolo Cignoni
2916ad7207
Refactored CountEdges into CountEdgeNum (now it also reports non manifold edges)
2014-05-23 15:03:15 +00:00
Nico Pietroni
b01f2c111e
changed some method to work with polygons
2014-04-24 16:08:33 +00:00
Paolo Cignoni
84c80a1972
Include header cleaning and reordering.
2013-11-25 10:01:24 +00:00
Paolo Cignoni
a1471cea44
Cleaned up a bit naming and comments and some interfaces of some bitquad functions
2013-10-10 16:02:27 +00:00
Paolo Cignoni
afec01ce96
corrected order of include files (face/topology.h must go after complex.h)
2013-10-09 09:18:08 +00:00
Paolo Cignoni
98e49178ba
Added IsCoherentlyOrientedMesh and cleaned up a bit the self intersection
2013-06-24 10:50:14 +00:00
Nico Pietroni
5f59f1fa5a
corrected some non templated type on SplitNonManifoldVertex function
2013-05-08 09:05:58 +00:00
Nico Pietroni
04bca27a7e
erased first assert of RemoveDuplicateEdge function
2013-04-20 15:13:49 +00:00
Paolo Cignoni
668bf05a1d
Refactored a bit CountConnectedComponents (added requiremens)
2013-03-25 10:33:22 +00:00
Paolo Cignoni
3a9a72c098
removed a useless template specialization to a few std::make_pair
2013-03-22 16:53:42 +00:00
Paolo Cignoni
1991e2e74f
Changed a bunch of assert(hasXXX) into requireXXXX
2013-01-02 09:22:47 +00:00
Paolo Cignoni
1d092cf736
Added a couple of missing Flags->cFlags
2012-11-08 18:31:13 +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
ba4a51e02d
Updated to reflect the naming changes in updateNormals
2012-10-09 08:00:25 +00:00
Paolo Cignoni
feeec9f979
Updated to reflect the naming changes in updateNormals
2012-10-08 09:12:21 +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
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
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
Nico Pietroni
894ebb26f6
added RemoveHugeConnectedComponentsDiameter function
2012-05-25 13:33:36 +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
6094438b4b
Changed all the MeshType::HasSomething() into the now standard tri::HasSomething(MeshType &m)
2012-01-20 07:58:43 +00:00
Paolo Cignoni
86617dd872
Changed the name of Clean::IsOrientedMesh() -> Clean::OrientCoherentlyMesh()
...
It is a mesh changing method!
2012-01-18 11:42:08 +00:00
Paolo Cignoni
ae58754015
Significant change of names to the UpdateSelection Class.
...
now follows the standard VertexClear instead of ClearVertex.
Updated all the other files of vcg using it...
(added also selection stuff for edges..)
2011-12-13 10:07:00 +00:00
Paolo Cignoni
342f182ee0
Added RemoveDuplicateEdge and CountNonManifoldEdgeEdge
2011-11-15 11:20:12 +00:00
Paolo Cignoni
486795fcfb
Better Comments on the Genus.
2011-10-17 23:33:48 +00:00
Paolo Cignoni
2fe129645b
Rolled back
2011-10-05 15:04:40 +00:00
Paolo Cignoni
5c358c02a4
Cleaned up small bug in the vertex clustering alg (crashed on empty sets and on non compacted meshes
2011-05-31 08:37:13 +00:00
Paolo Cignoni
f7abd17dfe
added RemoveDegenerateEdge and modifyed RemoveDuplicatedVertex to support edgemesh
2011-05-11 07:36:19 +00:00
Paolo Cignoni
5233b20f12
Added a function Flip a mesh so that its normals are orented outside.
...
Just for safety it uses a voting scheme.
It assumes that
* mesh has already has coherent normals.
* mesh is watertight and single component.
2011-04-07 22:28:28 +00:00
Paolo Cignoni
f8eb8a41dd
Cleaned up a bit triangle3. Removed some weird interpolation wrappers (that ended to be misused) and updated the rest of the lib to comply with this changes
2011-04-05 21:53:12 +00:00
ganovelli
9ff0ad3f1e
Ongoing Rearrangement of filepath
...
replaced the path to comply the filepaths modification.
The replacements are as follows:
/complex/trimesh/base.h --> /complex/complex.h
/complex/trimesh/allocate.h --> /complex/allocate.h
/complex/trimesh/append.h --> /complex/append.h
/complex/trimesh/ --> /complex/algorithms/
/complex/local_optimization/ ---> /complex/algorithms/local_optimization/
/complex/local_optimization.h ---> /complex/algorithms/local_optimization.h
/complex/intersection.h ---> /complex/algorithms/intersection.h
/complex/boundary.h ---> /complex/algorithms/boundary.h
2011-04-01 17:06:03 +00:00
ganovelli
1ad23912db
2011-04-01 16:25:49 +00:00