Commit Graph

32 Commits

Author SHA1 Message Date
Paolo Cignoni eae78a0251 completed the correct working of temporary data inside the refinement functions 2009-06-25 06:19:00 +00:00
Paolo Cignoni 2c3da1c3c9 changed the constructor of the MidPoint functor of the refine. Now it requires a Mesh as an argument to get reliable knowledge of the presence/absence of temporary data. 2009-06-24 20:31:57 +00:00
Paolo Cignoni 3447c82e88 Removed a few harmless warnings 2009-03-30 20:58:18 +00:00
Nico Pietroni d2bcd3dffa added in MidPoint inheritance of texture coordinates 2009-02-27 16:12:20 +00:00
Paolo Cignoni 4f6cff78ed Yet another missing template keyword for gcc 2009-01-20 08:18:01 +00:00
matteodelle 12e32feb59 Replaced forgotten CMeshO with MESH_TYPE in line 314 2009-01-15 17:31:23 +00:00
Paolo Cignoni 45ffbac554 added a forgot std:: 2009-01-14 16:22:40 +00:00
Paolo Cignoni 3f38ad70da Complete re-wrote of the refinement code. Now the predicate is called only once for each edge. no more std:maps are used but the new attributes to store temporary pointers inside newly subdivided faces. 2009-01-14 01:18:34 +00:00
Paolo Cignoni 8f591655f3 added comment on the two critical asserts 2008-12-09 07:52:27 +00:00
Paolo Cignoni 0047c70cae Translated comments, added various notes, removed some dead code, changed a bit the interface of the default edgelen predicate 2008-12-05 22:57:20 +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 b58cabc1b6 better comment at the begininning explaing a bit the Refine templated mechanism. 2008-10-07 07:02:01 +00:00
Federico Ponchio 696941893d Translated some italian comments... many more to translate. 2008-08-25 12:33:06 +00:00
Paolo Cignoni 598cb77fb6 Changed the edge split predicate, now it takes a pos instead of two pnts
Added quality interpolation
2008-04-07 12:58:48 +00:00
Paolo Cignoni d014eae1bc added color interpolation to butterfly 2008-03-18 10:31:47 +00:00
Paolo Cignoni 81bfbcaed8 corrected managment of selected flag when refining the whole mesh flipmesh 2007-03-27 09:25:14 +00:00
mtarini 22fd220c6f Texture coord name change! "TCoord" and "Texture" are BAD. "TexCoord" is GOOD. 2007-03-12 15:37:19 +00:00
Paolo Cignoni a707c1d217 added missing typenames 2007-01-18 18:15:14 +00:00
Paolo Cignoni fdaddf0e79 Added TrSplit function. 2007-01-17 14:31:47 +00:00
ganovelli cd438cf489 changed &*vert.end() to !vert.empty() -> &vert.back() to comply vs2005 compiler 2006-10-27 13:26:49 +00:00
Paolo Cignoni 6cfcd4eca0 removed wrong fn setting 2006-06-18 20:42:01 +00:00
Paolo Cignoni 8bfbf1111d Changes for compilation on linux AMD64. Some remarks: Linux filenames are case-sensitive. _fileno and _filelength do not exist on linux 2006-06-06 14:35:32 +00:00
Paolo Cignoni dc06357cfa HasPerWedgeTexture -> HasPerWedgeTexture(m) 2006-05-03 21:42:10 +00:00
Paolo Cignoni 6de3303285 removed div by zero bug in callback of refine (tnx to Mario Latronico) 2005-12-22 11:24:09 +00:00
Paolo Cignoni 9b82d2e334 Added Callback in refine 2005-12-13 11:01:01 +00:00
Paolo Cignoni aaa04175d3 commented out an old TRACE 2005-12-02 00:06:37 +00:00
Paolo Cignoni 44eb40324f small gcc-related compiling issues (typenames,ending cr, initialization order) 2005-07-11 13:16:34 +00:00
Marco Callieri 0d219f91b7 deleted a wrong declaration "typename typename" 2005-06-29 15:25:41 +00:00
Paolo Cignoni 0434c2512d Corrected the type name of wedge tex coords WedgeInterp in RefineE 2005-06-17 00:48:27 +00:00
Nico Pietroni 8225d40cbb added #include<vcg/complex/trimesh/update/topology.h> use of update topology in refineE 2005-02-25 10:28:04 +00:00
Nico Pietroni 91ce4200d3 1 warning corrected 2005-02-02 16:01:13 +00:00
ganovelli 9e35226e77 first working version 2004-10-12 15:42:29 +00:00