Paolo Cignoni
d55a1069de
converted to the new style with mark outside the trimesh class
2010-03-19 22:56:30 +00:00
Paolo Cignoni
9aa23c4f6c
removed harmless warnings
2010-03-18 10:03:31 +00:00
Paolo Cignoni
d340b8b92a
removed harmless gcc warnings
2010-03-02 23:17:15 +00:00
Paolo Cignoni
9f8497013f
removed harmless warnings
2010-02-24 09:55:28 +00:00
Paolo Cignoni
29e956d524
Corrected a small bug in CountNonManifoldVertexFFVF and changed the use of bit from selection to visit bit in the CountEdges
2010-01-03 01:59:32 +00:00
Nico Pietroni
a60c31845c
added function HasConsistentEdges
2009-10-14 13:56:06 +00:00
Paolo Cignoni
d2edfc1f4d
removed two dummy useless functions
2009-09-22 22:36:22 +00:00
Nico Pietroni
61d4d72c4c
removed closests[i]->C()=Color4b::Green; form MergeCloseVertex function
2009-07-14 14:31:20 +00:00
Paolo Cignoni
e8908f7742
Added CountBitLargePolygons (better name suggestion?) for counting the number of polygons in the case that there are vertexes surrounded by faux edges too (like in the case of dodecahedron of platonic.h)
2009-06-26 23:18:51 +00:00
Paolo Cignoni
c7320a32a3
added functions to remove connected components
2009-06-25 08:49:37 +00:00
Paolo Cignoni
b2bc0d07ba
small gcc compilation errors (typenames, missing std...)
2009-06-25 07:29:29 +00:00
mtarini
c0b0c7469c
Added diagnostic and measurement methods for bit-polygonal meshes: IsBitQuadOnly, IsBitTriOnly, IsBitPolygonal, IsBitTriQuadOnly, CountBitQuads, CountBitTris, CountBitPolygons, HasConsistentPerFaceFauxFlag...
2009-05-26 18:19:17 +00:00
mtarini
a7e5e51ddc
added IsPolygonal, which tells you whether the mesh actually represents a polygonal mesh (false if triangle only)
2009-04-27 14:13:28 +00:00
Paolo Cignoni
1236df14c5
Added RemoveDuplicateFace Function
2009-04-23 21:21:21 +00:00
Paolo Cignoni
fb261dc8bf
added cleaning function to merge very close vertice (for the one who needs a unify duplicate vertices that unify also vertices that are not exactly the same
2009-04-19 21:13:36 +00:00
Paolo Cignoni
3447c82e88
Removed a few harmless warnings
2009-03-30 20:58:18 +00:00
Paolo Cignoni
c39498df1f
Fixed CMeshO error
2009-03-12 15:56:31 +00:00
Paolo Cignoni
04e2464e3d
Added RemoveTVertexByCollapse and RemoveTVertexByFlip methods
2009-03-11 16:43:16 +00:00
Paolo Cignoni
c9173c73fe
corrected wrong invocation of istwomanifold check
2009-01-26 15:15:11 +00:00
ganovelli
a5cbc8c7f8
added return to RemoveNonManifoldVertex
2008-11-12 16:00:27 +00:00
Paolo Cignoni
d124cae6fb
added a missing include
2008-11-07 15:37:46 +00:00
Paolo Cignoni
df84db769c
Rewrote the function for the selection and counting of non manifold vertices. Now it does not require VF topology, just FF.
2008-11-07 10:12:39 +00:00
Paolo Cignoni
c1551eddfd
make Point derive Eigen's Matrix and some cleanning
2008-10-28 11:47:37 +00:00
Paolo Cignoni
7befff7bec
make point2 derived Eigen's Matrix, and a set of minimal fixes to make meshlab compile
...
with both old and new version. The fixes include:
- dot product: vec0 * vec1 => vec0.dot(vec1) (I added .dot() to the old Point classes too)
- Transpose: Transpose is an Eigen type, so we cannot keep it if Eigen is used. Therefore
I added a .tranpose() to old matrix classes, and modified most of the Transpose() to transpose()
both in vcg and meshlab. In fact, transpose() are free with Eigen, it simply returns a transpose
expression without copies. On the other be carefull: m = m.transpose() won't work as expected,
here me must evaluate to a temporary: m = m.transpose().eval(); However, this operation in very
rarely needed: you transpose at the same sime you set m, or you use m.transpose() directly.
- the last issue is Normalize which both modifies *this and return a ref to it. This behavior
don't make sense anymore when using expression template, e.g., in (a+b).Normalize(), the type
of a+b if not a Point (or whatever Vector types), it an expression of the addition of 2 points,
so we cannot modify the value of *this, since there is no value. Therefore I've already changed
all those .Normalize() of expressions to the Eigen's version .normalized().
- Finally I've changed the Zero to SetZero in the old Point classes too.
2008-10-28 00:59:46 +00:00
ganovelli
13c853509e
[Namespaces changes]
...
trimesh->tri
clean up of some namespaces to comply the following naming:
Complexes (3 letters namespaces):
order 0 (point cloud ) :vrt
order 1 (edge meshes) :edg
order 2 (triangle meshes) :tri
order 3 (triangle meshes) :tet
Simplexes (extended namespaces):
order 0 (vertex) :vertex
order 1 (edge) :edge
order 2 (triangle) :triangle (temporarily it remains "face")
order 3 (tetrahedron) :tetrahedron
2008-09-30 10:51:38 +00:00
Paolo Cignoni
1407af2537
removed harmless warnings
2008-07-09 10:31:55 +00:00
Paolo Cignoni
7f3c44851e
added a missing std::
2008-04-24 05:04:25 +00:00
Paolo Cignoni
7c37f033e1
Added check on deleted faces in RemoveDegenerateFace
2008-03-11 14:16:40 +00:00
Paolo Cignoni
378008bc5e
added HasConsistentPerWedgeTexCoord
2008-03-06 08:37:16 +00:00
Paolo Cignoni
5e52fd038c
corrected small bug in RemoveDuplicateVertex
2008-01-24 11:52:05 +00:00
Paolo Cignoni
573ff87db2
Added a missing IsD() test
2007-10-29 11:32:46 +00:00
Paolo Cignoni
12c8c9f3ff
Added Allocator::DeleteFace and Allocator::DeleteVertex; Now the use of SetD() should be deprecated.
2007-10-16 16:46:53 +00:00
Paolo Cignoni
3019fb9177
Added remove degenerate vertex to manage vertex with NAN coords
2007-07-24 07:09:49 +00:00
Paolo Cignoni
90217d66c4
Replaced call to old StarSize method with NumberOfIncidentFaces
2007-06-04 06:45:05 +00:00
Paolo Cignoni
f0eec0788b
added honoring of selected flag for flipmesh
2007-03-27 09:23:32 +00:00
mtarini
84946de883
Texture coord name change! "TCoord" and "Texture" are BAD. "TexCoord" is GOOD.
2007-03-12 15:42:11 +00:00
Paolo Cignoni
0ee9210dd2
std::numeric_limits<ScalarType>::max() -> (std::numeric_limits<ScalarType>::max)()
...
to avoid annoying misunderstaindings on msvc8
2007-02-27 15:17:17 +00:00
Paolo Cignoni
349a05f6f1
Removed useless and conflicting inclusion of face.h
2007-01-11 10:12:19 +00:00
Paolo Cignoni
1680347626
Corrected bug in the IsFFAdjacencyConsistent the Topology checking function.
2006-12-01 21:26:14 +00:00
Paolo Cignoni
d946007a70
Added a function for FF topology consistency check
2006-12-01 08:12:30 +00:00
Paolo Cignoni
fcc1187856
Corrected IsOrientedMesh. After the templating of the swapedge it did not worked any more....
...
Added Texture management to the FlipMesh
2006-12-01 00:00:56 +00:00
Paolo Cignoni
b50b9a7d8b
Added IsSizeConsistent
2006-11-27 10:36:35 +00:00
Paolo Cignoni
d2cdb34aa2
Corrected RemoveNonManifoldFace
2006-11-09 17:26:24 +00:00
Paolo Cignoni
7be5d031b9
typenames and qualifiers for gcc compliance
2006-10-15 07:31:22 +00:00
Paolo Cignoni
59d52a10e9
Added Remove NonManifoldFace
2006-10-09 20:06:46 +00:00
Paolo Cignoni
0102ac5f9f
missing std and other gcc detected syntax errors
2006-05-25 09:41:09 +00:00
Paolo Cignoni
b9cb941529
Redesigned the function for the removal of faces according to their area and edge lenght
2006-05-16 21:51:07 +00:00
Paolo Cignoni
6ce9535dc3
Changed HasMark to HasPerFaceMark(m) and commented some unused internal vars of the class
2006-05-03 21:40:27 +00:00
Paolo Cignoni
4ae1cb2a64
added a ; how could this ever compile?
2006-04-18 07:01:22 +00:00
Paolo Cignoni
2bf25202a4
Added ConnectedIterator (should be moved somewhere else)
...
Cleaned ConnectedComponents
2006-04-12 15:08:51 +00:00