Commit Graph

103 Commits

Author SHA1 Message Date
Paolo Cignoni 445dad8458 removed harmless warnings 2010-10-15 09:15:11 +00:00
Paolo Cignoni c77aeae697 Cleaned up a bit the Final flipping stage of EMC. Now it is a bit more robust. 2010-10-01 21:36:49 +00:00
Paolo Cignoni 349e9869cf Updated many vcg files to do not use anymore the vcg::Max(a,b) and vcg::Min(a,b). Use the std version instead. 2010-09-21 22:09:13 +00:00
Paolo Cignoni 882d039da6 removed mostly harmless gcc warnings (unused/uninitialized vars) 2010-07-14 08:00:16 +00:00
granzuglia 937a004f80 changed include file 2010-07-01 08:51:06 +00:00
ganovelli a42f07b445 added missing include 2010-06-24 12:30:48 +00:00
Paolo Cignoni b2d20dd837 Removed printf and added the standard callback approach 2010-04-30 09:55:34 +00:00
granzuglia 43592cc07e updated code in order to improve compatibility with g++ compiler. 2010-04-29 10:39:07 +00:00
granzuglia 904f0d9d3a updated callback function for ball pivoting. 2010-04-29 09:33:05 +00:00
granzuglia bc14f81543 patched many bugs in advancing front basic algorithm.
updated ball pivoting to new interface.
2010-04-29 09:19:49 +00:00
Paolo Cignoni 0165f918f1 removed harmless gcc warnings 2010-03-26 09:43:45 +00:00
Paolo Cignoni 3976724c18 removed harmless warnings and improved Cone generator 2010-03-18 10:07:39 +00:00
Paolo Cignoni eae78a0251 completed the correct working of temporary data inside the refinement functions 2009-06-25 06:19:00 +00:00
Paolo Cignoni 291c2790af Removed harmless warnings 2009-05-22 07:54:42 +00:00
Paolo Cignoni e1e58a75cf added another shape to platonic, a camera. 2009-05-21 23:04:49 +00:00
Paolo Cignoni 143f9461dd moved (and renamed) trivial walker from apps/ to vcg/complex/trimesh/create 2009-05-18 14:19:12 +00:00
Paolo Cignoni 08ffe4b7a1 re-correct the assert that was causing a failure. The previous commit tho marching cubes.h (done by me!) was rather wrong. Sorry,. 2009-05-08 21:41:37 +00:00
Paolo Cignoni 8bd0953add removed harmless warning 2009-04-22 10:31:33 +00:00
mtarini aeaec2ab4c All methods now set flags Faux (where appropriate) that identifies edges inside a polynomial face (quads & penta).
FaceGird now cuts closer aoround holes.
Rewritten Cilynder (too many errors in prev version)
2009-04-20 22:53:31 +00:00
Paolo Cignoni 0c61619049 Solved bug about aliasing when resampling with signed distance thin and long triangles. 2009-04-10 15:05:49 +00:00
Paolo Cignoni 3447c82e88 Removed a few harmless warnings 2009-03-30 20:58:18 +00:00
Paolo Cignoni 499822bc17 NO_QT defines to explicitly disable qt dependant behavior 2009-03-25 08:13:07 +00:00
Paolo Cignoni 17f0ac0431 added another grid building function. This one build up a possibly incomplete grid. 2009-02-16 00:59:24 +00:00
Paolo Cignoni ca1ac6323f add absolute distance resampling 2009-01-21 16:22:05 +00:00
Paolo Cignoni 0879d07401 Corrected a wrong template arg MyMesh into the right MeshType 2009-01-18 23:52:27 +00:00
matteodelle 1c65575000 Added faceface updatetopology in Sphere, otherwise it crashes! 2009-01-16 08:05:33 +00:00
Paolo Cignoni 0e037cabc1 added multisampling distance field evaluation 2009-01-15 01:31:09 +00:00
Paolo Cignoni 28c4843567 Heavily restructured. Now more robust and allow also the creation of discretized surfaces 2009-01-08 11:26:49 +00:00
Paolo Cignoni a37e44cff1 Made create:box working. Current version was plain wrong. Thanks to Lorenzo Marchi 2008-12-08 14:56:28 +00:00
Paolo Cignoni 0e13472efb corrected a wrong assert in grid creation function 2008-12-05 22:55:36 +00:00
Paolo Cignoni 8e23847cab Distance functor is now a template parameter 2008-11-20 16:24:42 +00:00
Paolo Cignoni 619f3f69ef Addedd missing include 2008-11-20 13:26:59 +00:00
Paolo Cignoni 49c72bc54e Disambiguated some grid utility names (IPtoTP into IPfToPf and IPiToPf) in order to avoid ambiguities (due to automatic cast?) 2008-10-30 09:01:03 +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
Paolo Cignoni ab200fc950 Port to eigen2: state of the mess:
* curently nothing change if you don't define VCG_USE_EIGEN
* make Matrix*, Point3 and Point4 derive Eigen::Matrix (still ugly)
* now catching all the dot products to replace them by .dot()
  note that most of meshlab already compile
2008-10-27 19:35:17 +00:00
Paolo Cignoni 4db69febbe big replacement .Zero => .SetZero, and start of Eigen's compatibilities (currently disabled by default) 2008-10-27 14:48:14 +00:00
ganovelli e5d28ed8b5 [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:55:18 +00:00
ganovelli ece2df9202 [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:53:28 +00:00
ganovelli f7da79d507 Add template parameter to PointDistanceFunctor 2008-09-24 08:56:06 +00:00
Paolo Cignoni bafcd1768e remove harmless warnings 2008-07-02 13:26:25 +00:00
Paolo Cignoni 8314b1759a Heavily restructured (an almost complete rewrite) of the class that convert a mesh to a distance field and run marching cubes on it. 2008-07-01 09:37:31 +00:00
Federico Ponchio a4a0d6acf3 last_seed++ shodl have been ++last_seed 2008-06-30 08:46:06 +00:00
Paolo Cignoni 9b324d2f50 added missing license info 2008-05-29 20:54:34 +00:00
Paolo Cignoni 2a69681d28 added facegrid method to build just the faces 2008-04-24 04:44:48 +00:00
Paolo Cignoni c5a92fd4c0 added missing std:: 2008-04-08 09:51:15 +00:00
ganovelli 0b3e46c93c added Cylinder(..). the filename platonic.h is lesser and lesser significant... 2008-02-15 14:38:32 +00:00
Paolo Cignoni 5519491d1f changed radius from percentage based to absolute and reverted the sign of the default walking 2007-12-18 17:30:04 +00:00
Paolo Cignoni 6144006bfd Re-Wrote basic build function 2007-10-19 22:29:36 +00:00
Massimiliano Corsini 1e6b800880 remove signed/unsigned warning 2007-10-09 12:04:06 +00:00
Paolo Cignoni c704229b67 corrected computation of Barycenter 2007-08-20 21:06:29 +00:00