Commit Graph

897 Commits

Author SHA1 Message Date
Paolo Cignoni 3e090a41ff Added a test to avoid degenerative flip which produce two identical overlapping faces.
Little code refactoring.
The planar swap now try to improve the average quality of faces, instead of improving the quality of the worst face.
2008-03-20 15:45:54 +00:00
Paolo Cignoni c2bec8758d Added safer way of computing the quality histogram, robust in the case the mesh contains some outlier value (very high or very low) that makes the choice of the beginning interval wrong 2008-03-19 05:24:39 +00:00
Paolo Cignoni d014eae1bc added color interpolation to butterfly 2008-03-18 10:31:47 +00:00
ganovelli 8a265c9d32 taubin and desbrun estimates added (-> see vcg/simplex/vertexplus/component.h [component_ocf.h|component_occ.h ] 2008-03-17 11:29:59 +00:00
Paolo Cignoni 7c37f033e1 Added check on deleted faces in RemoveDegenerateFace 2008-03-11 14:16:40 +00:00
Paolo Cignoni 3d4222b231 Completed the garbage collecting functions CompactVertexVector and CompactFaceVector. 2008-03-11 09:22:07 +00:00
Paolo Cignoni d78ce1aee8 Minor changes. 2008-03-08 12:43:26 +00:00
Paolo Cignoni 378008bc5e added HasConsistentPerWedgeTexCoord 2008-03-06 08:37:16 +00:00
Paolo Cignoni 2aac6ba625 TriEdgeFlip::ComputPriority now use vcg::CircumCenter(triangle) to compute circumcenter coordinates 2008-03-02 11:00:10 +00:00
Paolo Cignoni 9841c8db32 _pos.V(i) become _pos.F()->V(i); TriEdgeFlip now access members of parent class with this->... 2008-03-01 11:16:30 +00:00
Paolo Cignoni 9703ced0df Added HasPerVertexColor static function 2008-02-21 17:27:06 +00:00
ganovelli 0b3e46c93c added Cylinder(..). the filename platonic.h is lesser and lesser significant... 2008-02-15 14:38:32 +00:00
ganovelli 9751b6fc2c changes to use vcg::vert::ImportLocal 2008-02-15 12:51:59 +00:00
Paolo Cignoni 73757c1177 added missing include matrix33 2008-02-15 08:08:59 +00:00
Paolo Cignoni b8f1e0f612 added a missing IsD() check 2008-02-07 10:24:51 +00:00
Paolo Cignoni fcf54790ea added hasPerWedgeColor and HasPerWedgeNormal 2008-01-28 14:46:03 +00:00
Paolo Cignoni eab6ea2400 added HasPerFaceNormal and HasPerVertexNormal 2008-01-28 08:42:07 +00:00
Paolo Cignoni 58482cfd03 added management of normals 2008-01-28 08:39:56 +00:00
Paolo Cignoni 5e52fd038c corrected small bug in RemoveDuplicateVertex 2008-01-24 11:52:05 +00:00
ganovelli f7e63772a2 include added 2008-01-19 17:43:49 +00:00
ganovelli 7051654171 more appropriate function names, licence updated, comment added 2008-01-12 19:41:46 +00:00
ganovelli c919dca603 Recompiled from previous out of date version. Still to revise but working 2008-01-12 19:07:05 +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 8b69adbfbd removed harmless gcc warnings 2007-12-13 17:57:33 +00:00
Paolo Cignoni 1f38a990b5 forgotten required std:: 2007-12-11 20:18:55 +00:00
Paolo Cignoni 7d6a210e75 Added the CompactVertexVector garbage collecting function. 2007-12-11 11:36:03 +00:00
Paolo Cignoni 200add7664 disambiguated pow call (again) 2007-11-23 17:02:47 +00:00
Paolo Cignoni 5de12ccbf3 disambiguated pow call 2007-11-23 15:42:11 +00:00
ganovelli 743e4f7a9e compilation with gcc 2007-11-20 09:50:32 +00:00
ganovelli a5d00b1c71 added missing newline at the end of file 2007-11-20 09:49:53 +00:00
ganovelli 79067524eb added updating of vertex and face normals 2007-11-14 11:56:23 +00:00
Federico Ponchio 3bb9c7cbc6 Addded check for no color in mesh 2007-11-06 16:12:24 +00:00
Paolo Cignoni b50e3f7760 added selection to the pasodoble smoothing 2007-11-05 23:47:20 +00:00
Paolo Cignoni c2f8cdac1f removed past end access in an assert 2007-11-05 23:46:43 +00:00
Paolo Cignoni 573ff87db2 Added a missing IsD() test 2007-10-29 11:32:46 +00:00
Paolo Cignoni d063cb7493 bug in FaceBorderFromNone corrected (same as in Topology.h) Ganovelli 2007-10-22 14:55:07 +00:00
Paolo Cignoni 6144006bfd Re-Wrote basic build function 2007-10-19 22:29:36 +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
Massimiliano Corsini 1e6b800880 remove signed/unsigned warning 2007-10-09 12:04:06 +00:00
Paolo Cignoni 6cee7ca8cd Overloaded Intersection function to compute trimesh-plane intersection,it return the set of faces that are contained into intersected cells. 2007-09-19 12:16:31 +00:00
Paolo Cignoni c704229b67 corrected computation of Barycenter 2007-08-20 21:06:29 +00:00
ganovelli be681204b5 added 2007-07-31 12:31:34 +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 91cbd0047f added the missing PerVertexNormalizedPerFaceNormalized 2007-07-12 23:11:35 +00:00
ganovelli 66c083f919 added return type 2007-07-05 16:32:04 +00:00
Federico Ponchio ec52ffd973 *** empty log message *** 2007-06-15 15:04:43 +00:00
Federico Ponchio acc11c1df4 *** empty log message *** 2007-06-11 15:26:30 +00:00
Paolo Cignoni f25f034dcb Minor changes. 2007-06-07 15:34:11 +00:00
Paolo Cignoni 7c12dca79d Minor changes : replaced TVp and TVi calls with VTp and VTi respectively. 2007-06-07 10:20:29 +00:00
Paolo Cignoni 080ec71ca5 Use the barycenter function from triangle3.h instead of
the one in face\base.h.
2007-06-06 15:38:57 +00:00
Nico Pietroni ac2edcede5 compiling error resolved 2007-06-06 14:26:51 +00:00
Paolo Cignoni 90217d66c4 Replaced call to old StarSize method with NumberOfIncidentFaces 2007-06-04 06:45:05 +00:00
Federico Ponchio 511f4053c9 *** empty log message *** 2007-06-01 09:07:23 +00:00
Federico Ponchio 7823c5dba1 FIxed off-by-one error on FaceBorderFromNone. 2007-05-31 15:24:50 +00:00
Paolo Cignoni e4aa42118a Small gcc compiling issues 2007-05-31 10:08:16 +00:00
Paolo Cignoni f354a9f445 Small gcc compiling issues 2007-05-31 09:39:56 +00:00
Federico Ponchio 007d53b7e0 *** empty log message *** 2007-05-30 15:09:58 +00:00
Federico Ponchio 73d01b5408 *** empty log message *** 2007-05-30 14:03:49 +00:00
Federico Ponchio 35d53d62c3 VFi++ -> ++VFi 2007-05-29 00:07:06 +00:00
Paolo Cignoni a9ed51c145 Added some comments, and cleared startup a little 2007-05-22 15:25:14 +00:00
Paolo Cignoni dd6a5552dc Added VertexClear 2007-05-22 15:19:42 +00:00
Paolo Cignoni 97d7baf66c Corrected gcc compiling issues 2007-05-21 13:22:40 +00:00
Paolo Cignoni 7ec9437835 Corrected gcc compiling issues 2007-05-21 11:12:10 +00:00
ganovelli 45bd389107 changes to comply "plus" types 2007-05-04 16:34:31 +00:00
Paolo Cignoni 7a36b9fadd only use typename when necessary 2007-05-02 13:25:45 +00:00
Nico Pietroni 176c70e7d7 *** empty log message *** 2007-04-24 09:44:48 +00:00
Paolo Cignoni 3b9bf21738 Corrected bug in selectionVertexFromFaceStrict 2007-04-20 10:11:51 +00:00
Nico Pietroni 058eed2f38 - line 152 changed call intersection to IntersectionPlaneTriangle because changing in function's name 2007-04-10 22:46:57 +00:00
Paolo Cignoni e7cf8d9203 Changed use of selected to visited flags. Improved variable namings and comments 2007-03-27 09:40: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
Paolo Cignoni f0eec0788b added honoring of selected flag for flipmesh 2007-03-27 09:23:32 +00:00
Paolo Cignoni ae9d8a8535 Solved an issue related to different casting double-float between gcc 3 and gcc 4 2007-03-22 11:07:16 +00:00
Paolo Cignoni 8f6e26f281 Substituted std::max with vcg::math::Max 2007-03-16 10:51:46 +00:00
mtarini 84946de883 Texture coord name change! "TCoord" and "Texture" are BAD. "TexCoord" is GOOD. 2007-03-12 15:42:11 +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 16ca848580 Added missing include and changed the call to jacobi 2007-03-08 22:48:17 +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 02beca15e3 Added Rad to the NormalThr Option and removed a bug in multiple exectuion of non optimal simplification (missing an isD check) 2007-02-25 09:20:10 +00:00
Paolo Cignoni 5ec1f9b0d3 Added guards on msvc pragmas 2007-02-22 09:18:41 +00:00
ganovelli 17560a65c0 Added HasPerVertexFlag 2007-02-14 15:31:41 +00:00
mtarini 28eb5780f0 added parameter theta (from conformal to equiareal) to AreaPresTextureOptimizer.
Improved feature lists (comments).
2007-02-02 04:11:00 +00:00
mtarini 436c9ae56c added three general-utility global functions for texture coordinates: SmoothTextureCoords, IsFoldFree, MarkFolds (see descriptions) 2007-02-02 01:39:58 +00:00
mtarini cea2074e7d added a few general comments on AreaPreserving optimizer, recapping optimizer features. 2007-02-02 01:23:47 +00:00
mtarini 5a341ba1f4 First version: general virtual class for texture optimizers. A subclass for area preservation. 2007-02-02 01:18:15 +00:00
mtarini 4b0950bf11 First version: general virtual class for texture optimizers. A subclass for area preservation. 2007-02-02 01:16:27 +00:00
mtarini d1f3afae97 First version: general virtual class for texture optimizers. A subclass for area preservation. 2007-02-02 00:55:35 +00:00
Paolo Cignoni cc7146cc86 Added small comment to grid function 2007-02-01 06:38:27 +00:00
Paolo Cignoni 5c9ed4eb3b Added FaceFromBorder 2007-02-01 06:37:05 +00:00
Paolo Cignoni a2439416b2 Remove some usless code in Minimum Weight Triangulation. 2007-01-31 15:25:49 +00:00
Paolo Cignoni 9cf8cbd534 Bugfix the init function. 2007-01-31 15:24:30 +00:00
Paolo Cignoni 33d860cbb9 Bug fix 2007-01-31 11:46:12 +00:00
mtarini 5b54eecefa aggiunta la VertexBorderFromNone (flag bordo per vertici senza richiedere nulla) 2007-01-30 18:49:23 +00:00
Paolo Cignoni ef3acb4fc8 Removed unuseful CoordType test 2007-01-27 13:14:34 +00:00
Paolo Cignoni 2797b41cd5 Corrected ClearHeap Bug (thanks to pirosu) 2007-01-26 21:27:05 +00:00
Paolo Cignoni 9732b0f8b8 Added Finalize() method to the interface, corrected minor bugs on border preserving and postsimplification cleanup
Avoided double make_heap (it is done only in the local_optimization init)
2007-01-19 09:13:14 +00:00
Paolo Cignoni f991e164a1 Added Finalize() method to the interface 2007-01-19 09:13:09 +00:00
Paolo Cignoni a707c1d217 added missing typenames 2007-01-18 18:15:14 +00:00
Paolo Cignoni 090e33d162 The minimum weight algorithm keep the topology consistent. 2007-01-18 11:17:43 +00:00
Paolo Cignoni fdaddf0e79 Added TrSplit function. 2007-01-17 14:31:47 +00:00
Paolo Cignoni 2226163daf First working release. 2007-01-15 11:41:09 +00:00
ganovelli d60eb7127a currMetric inizialied to heap.front() (it was heap.back()- wrong) 2007-01-11 11:48:33 +00:00
Paolo Cignoni f4d3561502 Added test in AddVertices to do not update un-initalized vert references (for newly allocated faces) 2007-01-11 10:24:25 +00:00
Paolo Cignoni 349a05f6f1 Removed useless and conflicting inclusion of face.h 2007-01-11 10:12:19 +00:00
matteodelle cd277247cc *** empty log message *** 2007-01-10 17:25:18 +00:00
Paolo Cignoni 0c8a863586 Bugfixed ComputeDihedralAngle function 2007-01-10 12:07:54 +00:00
Nico Pietroni 60958ee0e1 added initial define and included missing files 2007-01-03 15:51:28 +00:00
Paolo Cignoni 2581b0015e Bug fix on ComputeDihedralAngle function 2006-12-27 15:09:52 +00:00
Paolo Cignoni 8547f05f14 Commented some variant of the quality measure of weighted ears 2006-12-12 11:14:51 +00:00
ganovelli 466ab5840c added missing initialization of currMetric 2006-12-11 14:09:44 +00:00
Paolo Cignoni f57a022c06 Added many this-> for gcc compiling 2006-12-07 00:40:18 +00:00
Paolo Cignoni 38e3e600a9 Corrected bugs on selfintersection 2006-12-06 13:03:59 +00:00
Nico Pietroni d391c5f9f6 added max distance to rayIterator 2006-12-06 12:59:13 +00:00
Paolo Cignoni b9be8bd5fd Heavily restructured and corrected. Now a single Close ear function
Corrected Hole search function, and management of double non manifold vertex in a hole
Changed priority strategy in the heap, now a mix of quality and dihedral angle.
Changed but still untested IntersectionEar
2006-12-06 00:12:53 +00:00
ganovelli b2bfe8dc1b *** empty log message *** 2006-12-03 14:56:30 +00:00
ganovelli aa74eaa4e3 created 2006-12-03 14:55:44 +00:00
Paolo Cignoni 1680347626 Corrected bug in the IsFFAdjacencyConsistent the Topology checking function. 2006-12-01 21:26:14 +00:00
Paolo Cignoni 02456f0505 Corrected bug in the search of holes. Removed output prints 2006-12-01 21:24:16 +00:00
Paolo Cignoni 9c5b7ce5a1 Corrected pop_heap vs pop_back issue in heap usage 2006-12-01 08:53:55 +00:00
Paolo Cignoni d946007a70 Added a function for FF topology consistency check 2006-12-01 08:12:30 +00:00
Paolo Cignoni 2fc96f2682 Added Callback, Corrected some spelling errors (adiacense -> adjacency).
Added Validity Check function for hole loops
2006-12-01 00:11:17 +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 638be12fdc small gcc compiling issues 2006-11-30 11:49:20 +00:00
Paolo Cignoni 70c16f01ef Made static exposed funtions of the class 2006-11-29 16:21:45 +00:00
Paolo Cignoni 5670460684 Added check with the new end and avoided dangerous updating of already updated pointers 2006-11-29 15:58:50 +00:00
Paolo Cignoni ef0a22c229 Removed limit. 2006-11-29 15:25:22 +00:00
Paolo Cignoni 4110ebe3aa Code refactory and bugfix. 2006-11-29 15:18:49 +00:00
Federico Ponchio eb0ae58b64 removede int<->pointer conversions. 2006-11-29 14:20:10 +00:00
Paolo Cignoni 2f592ca2f8 Added Consistency check in the HasVFAdj static function 2006-11-28 22:35:29 +00:00
Paolo Cignoni d614e6baa5 Added default constructor with null initialization to adjacency members.
AddFaces and AddVertices NEED to know if the topology is correctly computed to update it.
2006-11-28 22:34:28 +00:00
Paolo Cignoni b50b9a7d8b Added IsSizeConsistent 2006-11-27 10:36:35 +00:00
Paolo Cignoni 2954c88fef Now compiles on gcc under linux. 2006-11-24 10:42:39 +00:00
Paolo Cignoni d74b87b91e Code refactory and added minimum weight triangolation. 2006-11-22 13:43:28 +00:00
Federico Ponchio bfdae426b8 passing VDistFunct() to functions wanting a reference, not a value
(why a reference btw?)
2006-11-21 16:06:54 +00:00
Federico Ponchio 4687fa762f Added usual typename. 2006-11-13 13:13:49 +00:00
Federico Ponchio cc5d4df4e8 Removed a couple of useless assert. 2006-11-13 13:12:27 +00:00
Paolo Cignoni 73985fe506 Clear some useless code 2006-11-13 10:11:38 +00:00
Nico Pietroni 94d7ced114 added normalization of normal in DoRay functions 2006-11-12 02:41:03 +00:00
Nico Pietroni fc770bdd96 added DoRayFuntion that return interpolated normal 2006-11-10 11:41:49 +00:00
Paolo Cignoni d2cdb34aa2 Corrected RemoveNonManifoldFace 2006-11-09 17:26:24 +00:00
Paolo Cignoni e2733d55df Necessary changes for compilation with gcc 3.4.6. Especially the hash function is a problem 2006-11-07 15:13:57 +00:00
Paolo Cignoni 06047a697d gcc compiling issues 2006-11-07 11:47:14 +00:00
Paolo Cignoni 865bb26e54 Corrected some errors in the reflections Has*** functions 2006-11-07 11:29:24 +00:00
Paolo Cignoni 62244759fc Added Quality weighted laplacian smoothing 2006-11-07 11:28:02 +00:00
Paolo Cignoni 0146bedd72 Added missing std:: 2006-11-07 07:56:43 +00:00
Paolo Cignoni 1c8f2d9055 Leipa ear now compute max dihedral angle. 2006-11-06 16:12:29 +00:00
ganovelli 05090aaee1 changed access throught iterator with static call to comply 2005 compiler 2006-10-31 11:30:41 +00:00
ganovelli cd438cf489 changed &*vert.end() to !vert.empty() -> &vert.back() to comply vs2005 compiler 2006-10-27 13:26:49 +00:00
ganovelli 30fac27e73 added override to HasFFAdjacency , HasVFAdjacency for the optional attributes (see also complex/trimesh/allocate.h) 2006-10-27 11:08:18 +00:00
ganovelli 841b424b5c the calls to HasFFAdjacency e HasVFAdjacency have been changed to override them for the optional attributes (see vcg/complex/trimesh/base.h) 2006-10-27 11:06:29 +00:00
ganovelli 73cf33acac added history in the file 2006-10-23 12:06:36 +00:00
Paolo Cignoni 4c66ab97d9 Added missing std:: 2006-10-20 07:44:45 +00:00
Federico Ponchio 7d06710d46 I nuovi seed ora devono essere ad almeno radius dalla mesh. 2006-10-19 10:11:01 +00:00
Paolo Cignoni 98d9d02773 Corrected Laplacian, Added selection to HCSmooth 2006-10-19 07:33:03 +00:00
Federico Ponchio 8fd20ba5aa *** empty log message *** 2006-10-18 21:26:39 +00:00
Federico Ponchio 50a6a8b79b *** empty log message *** 2006-10-18 21:22:15 +00:00
Federico Ponchio 2d6cd78082 *** empty log message *** 2006-10-18 15:40:04 +00:00
Paolo Cignoni 8af861d31d New policy for compute quality in TrivialEar.
Bugfixed LeipaEar.
Added new algorithm "selfintersection" with test for self intersection.
2006-10-18 15:06:47 +00:00
Federico Ponchio 310fcc2947 *** empty log message *** 2006-10-18 14:52:24 +00:00
Federico Ponchio 4e29f4f87e *** empty log message *** 2006-10-18 14:22:17 +00:00
Federico Ponchio 7047f4d4a7 using existing faces. 2006-10-18 14:08:50 +00:00
Federico Ponchio e4a4dd72bb Fixed a few bugs, added a few tricks. 2006-10-18 13:15:30 +00:00
Federico Ponchio 36db742b83 working backup 2006-10-18 10:08:15 +00:00
Paolo Cignoni 804c4aaf1c Added #include <assert.h> 2006-10-17 06:54:14 +00:00
Federico Ponchio 947b27d691 Added callback 2006-10-16 14:28:25 +00:00
Paolo Cignoni 570929bc45 First Working Version 2006-10-16 08:50:58 +00:00
Paolo Cignoni 7be5d031b9 typenames and qualifiers for gcc compliance 2006-10-15 07:31:22 +00:00
Federico Ponchio eb691cb768 *** empty log message *** 2006-10-14 16:20:06 +00:00
Federico Ponchio 568dbaf75f Rimossa (temporaneamente) la parte che cerca le altre componenti connesse. 2006-10-14 12:03:55 +00:00
Federico Ponchio 4a9d5af123 *** empty log message *** 2006-10-14 10:46:40 +00:00
Paolo Cignoni 736ef2bc24 Decreased vn when deleting a vertex 2006-10-14 00:39:52 +00:00
Paolo Cignoni b7d931e7dc Removed the class name Pivot before the methods of the class (gcc tolerated this!) 2006-10-14 00:15:21 +00:00
Federico Ponchio b0a192b60c First version somewhat stable. 2006-10-13 02:51:24 +00:00
Federico Ponchio 711e5ad192 *** empty log message *** 2006-10-13 02:11:35 +00:00
Paolo Cignoni 6e09ed9458 Bugfix and added a new type of ear (Liepa like) 2006-10-10 09:12:02 +00:00
Paolo Cignoni 6295f96fbd Heavyly restructured for meshlab inclusion. Now the access to the quadric elements are mediated by a static helper class. 2006-10-09 20:12:55 +00:00
Paolo Cignoni 2896499a4b Changed some access to VertexFaceIterator to reflect the shorter new operators. 2006-10-09 20:09:40 +00:00
Paolo Cignoni 59d52a10e9 Added Remove NonManifoldFace 2006-10-09 20:06:46 +00:00
Paolo Cignoni d644daee6b Optimized version of "EAR HOLE FILLING", the Ear is selected according to its dihedral angle. 2006-10-09 10:07:07 +00:00
Paolo Cignoni c2fb20c70b Updated to the new style face->Normal() becomes Normal(face) 2006-10-07 17:20:25 +00:00
Paolo Cignoni 2c722372aa removed a useless include 2006-10-07 15:04:25 +00:00
Paolo Cignoni 2daa4cdd9b first working implementationof "EAR HOLE FILLING". 2006-10-06 15:28:14 +00:00
Paolo Cignoni 1ada6a63ce BugFix 2006-10-02 12:06:40 +00:00
Federico Ponchio b5f612153c usual typename missing 2006-10-02 09:31:47 +00:00
Paolo Cignoni 655ae0ce8b Fixed a few bug. 2006-09-29 15:11:41 +00:00
Paolo Cignoni aabba26c14 Removed a useless, wrong version of AddFaces 2006-09-29 14:40:22 +00:00
Paolo Cignoni adfa71e1e0 It close one simple hole . . . 2006-09-27 15:33:32 +00:00
Paolo Cignoni b6c4ae457c Frist working release whit a few bugs.
It almost fills the hole ...
2006-09-27 09:29:53 +00:00
Paolo Cignoni d59c8cdc49 Added new version of pasodoble smoothing 2006-09-25 09:41:41 +00:00
Paolo Cignoni fb23c731ab First Non working Version 2006-09-25 09:17:44 +00:00
Paolo Cignoni ac4efc84ef initial commit 2006-09-21 18:10:05 +00:00
Federico Ponchio eb6d41150e VDistFunct() at line 292 was passed as a temporary.
Invalid under g++. Fixed.
2006-09-20 17:18:26 +00:00
Paolo Cignoni 11d1545f5f corrected bounds of a vector scan 2006-08-31 13:11:12 +00:00
Paolo Cignoni 4b9e281294 Added missing std:: to swap 2006-08-30 12:59:49 +00:00
Paolo Cignoni 63924b6ba0 Reverted to version 1.13. Version 1.14 was done on outdated version. 2006-08-30 06:50:07 +00:00
Paolo Cignoni 0004ccb15a added typedef VertContainer VertexContainer to avoid inconsistency with pre-existing methods 2006-08-23 16:49:25 +00:00
Paolo Cignoni 47b31587ba added bbox of the mesh
vn int->size_t
2006-08-23 15:32:24 +00:00
Paolo Cignoni 4c34a7674c *** empty log message *** 2006-08-23 15:29:44 +00:00
Paolo Cignoni 3cd4a11422 removed types FaceType, FacePointer, FaceIterator 2006-08-23 15:28:04 +00:00
Nico Pietroni 184edbcc3f first release version 2006-07-26 08:09:09 +00:00
Paolo Cignoni 10eb316ac5 Little improvement 2006-07-24 13:39:39 +00:00
Paolo Cignoni 7752f015eb Added default argument for compilation on linux 2006-07-17 09:25:28 +00:00
Paolo Cignoni 38e60efb30 Minor. Added a disambiguating this at the constructor of trimesh 2006-07-10 14:26:22 +00:00
ganovelli 9374d88dbe misleading comment removed 2006-07-06 12:30:32 +00:00
ganovelli 29b18eb3c0 Aggiunta superclasse UpdateTopology templated sui container e con funzioni sui container 2006-06-29 13:07:33 +00:00
ganovelli fe085b09ef Initial commit 2006-06-29 13:03:41 +00:00
ganovelli a8d6bb38ed agiunta UpdateBoundingBase, superclasse di UpdateBounding, templated sul container di vertici. 2006-06-29 13:02:38 +00:00
Paolo Cignoni f7dce1ceef Added missing IsD tests 2006-06-18 20:49:30 +00:00
Paolo Cignoni 6cfcd4eca0 removed wrong fn setting 2006-06-18 20:42:01 +00:00
Marco Di Benedetto ee1b991e25 Corrected ClearHeap(): iterator "hi" not decrementable if it was the first of the container. 2006-06-09 07:28:43 +00:00
Paolo Cignoni 5f423b1e96 Added ColorPreserving Cellbase template. 2006-06-08 13:55:16 +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 6ffc992641 Re-adapted to ms compilers 2006-05-26 10:18:11 +00:00
Paolo Cignoni 0102ac5f9f missing std and other gcc detected syntax errors 2006-05-25 09:41:09 +00:00
Paolo Cignoni 18458e04a2 Many changes for the different interpretation of hash_set between gcc and .net. Probably to be completed. 2006-05-25 09:37:14 +00:00
Paolo Cignoni 8be82261cf Updated HasPerFaceColor/Quality to the new style with mesh param. 2006-05-25 04:40:57 +00:00
Marco Di Benedetto 9ced8993e3 Corrected bbox inflation amount in case of _cellsize != 0 2006-05-24 16:42:22 +00:00
Paolo Cignoni 31d29d1f32 better comment to the init parameters 2006-05-24 15:16:01 +00:00
Paolo Cignoni a21b630e88 Added missing std:: to swap 2006-05-24 08:54:04 +00:00
Paolo Cignoni f641f1cd17 Removed not working Equalized color (use funcs in stat.h) 2006-05-21 07:00:01 +00:00
Paolo Cignoni b830d98941 Initial Commit 2006-05-21 06:59:13 +00:00
Paolo Cignoni 83a8f5efa3 Added DoubleFace management 2006-05-21 06:40:31 +00:00
Marco Di Benedetto f001cdf2e2 Added check for empty generated mesh (prevent call to mesh allocator with zero vertices or faces). 2006-05-19 20:49:03 +00:00
Marco Di Benedetto acf23d578f added check for deleted faces and modified/added std namespace qualifier. 2006-05-18 22:20:53 +00:00
Paolo Cignoni b24b496f50 Some minor optimizations 2006-05-18 13:59:20 +00:00
Paolo Cignoni c3833c0aa7 First working Version 2006-05-16 21:56:06 +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 740b84c8c6 Removed unused box function and rewrote initial comment. 2006-05-16 21:36:54 +00:00
Nico Pietroni 413995409c Updating of edge values id divided into 2 functions ( the first one update only a face...) added also resetting of edges flags.. (see first line of Set function) 2006-05-15 13:12:36 +00:00
Paolo Cignoni dc06357cfa HasPerWedgeTexture -> HasPerWedgeTexture(m) 2006-05-03 21:42:10 +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 3cb1b4442d Added new style HasPerFaceColor(m) and HasPerFaceMark(m) 2006-05-03 21:35:31 +00:00
Paolo Cignoni 9ce4c88f2a Corrected IsDeleted -> isD 2006-05-03 21:23:25 +00:00
Marco Di Benedetto e3a1490ec0 First Commit. 2006-05-02 14:17:36 +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
Paolo Cignoni 5e451b6435 commented out one function which does not compile on linux with gcc 3.4.5 2006-04-11 13:51:21 +00:00
Paolo Cignoni 29822d8362 changes necessary for gcc 3.4.5 on linux 64bit 2006-04-11 08:08:28 +00:00
Massimiliano Corsini 5358e40f63 Add cast to avoid warning 2006-03-29 10:12:08 +00:00
Paolo Cignoni 47443e5bb5 Double->Scalar in dodecahedron 2006-03-27 04:18:35 +00:00
Federico Ponchio 5b39ff496a HACK: MaxVal(0.0f) not defined in vcg/math/base.h as it should be,
changing it to 1e36 (pretty close :P)
2006-03-01 10:29:55 +00:00
Federico Ponchio 6faf120b1f Added typename 2006-02-28 16:51:29 +00:00
Paolo Cignoni a16d494cd5 fix bug end iterator++ 2006-02-28 12:22:48 +00:00
Paolo Cignoni baad6db4b9 fix bug end iterator++ 2006-02-28 12:13:49 +00:00
Paolo Cignoni d1bdc88911 minor bug in Face-Face topology loop fixed 2006-02-27 19:26:14 +00:00
Federico Ponchio ec70371a78 Area -> doublearea/2
added some typename
2006-02-27 18:02:57 +00:00
Paolo Cignoni 5fb0b4acc2 minor bug in Face-Face topology loop fixed 2006-02-27 11:56:48 +00:00
Nico Pietroni ce453edfb1 sintax error corrected 2006-02-09 08:38:04 +00:00
Nico Pietroni 1ea84f2954 commented one GetClosestFace function ... the code is the same then getClosest that return barycentric coordinates 2006-02-08 17:02:41 +00:00
Paolo Cignoni 9e5788c078 Added missing typenames 2006-02-06 10:45:47 +00:00
Paolo Cignoni 001fd1c573 Added IsD() test in SelfIntersection 2006-02-01 15:27:00 +00:00
Paolo Cignoni 2857c3bafb Corrected use of HasPerWedgeTexture 2006-01-30 09:00:40 +00:00
Paolo Cignoni 558c52d8cb Corrected Grid 2006-01-30 08:09:05 +00:00
Paolo Cignoni e61203f1ba Added missing typenames 2006-01-30 08:03:45 +00:00
Massimiliano Corsini 3b049ec0e4 fix signed/unsigned mismatch 2006-01-27 09:58:47 +00:00
Nico Pietroni 29c6470b0b used template types instead of point3f and float inside function calls 2006-01-24 13:23:22 +00:00
Paolo Cignoni 527e4042b5 Some changes in class Facet ( constructor and operator < ) 2006-01-24 09:58:11 +00:00
Paolo Cignoni 1e427593b7 Added a missing vcg:: 2006-01-23 13:33:54 +00:00
Paolo Cignoni 02f1e55b83 Added Grid function (to build range map meshes...) 2006-01-22 17:10:15 +00:00
Paolo Cignoni de85929aee Bug due to wrong compuation of size of auxiliary vector (vn instead of vert.size() ) 2006-01-22 17:08:50 +00:00
Paolo Cignoni a5f755bf9f vi/fi mismatch in ClipWithBox 2006-01-22 17:06:27 +00:00
Paolo Cignoni f5a5f77728 Corrected use of Area with the unambiguous DoubleArea
Added ClipWithBox function
2006-01-22 10:07:42 +00:00
Nico Pietroni f3d28fb710 erased extended marching cube method call. 2006-01-20 16:37:23 +00:00
Paolo Cignoni f8400e07c4 fix bug end iterator++ 2006-01-19 14:18:08 +00:00
Paolo Cignoni 56dbb91da2 add std:: namespace... 2006-01-19 14:06:37 +00:00
Paolo Cignoni 8e4764e73d Initial Release 2006-01-11 15:45:21 +00:00
Paolo Cignoni 35b967720e Added RemoveDegenerateFace and added its automatic invocation at the end of RemoveDuplicateVertex 2006-01-11 15:40:14 +00:00
Nico Pietroni 4bc0fa600a correct pass of variable closest_pt by reference in getclosestFace function 2006-01-10 13:31:54 +00:00
Paolo Cignoni 9f49fb189a Added ndim namespace to generic Matrix 2006-01-03 15:29:49 +00:00
Nico Pietroni d84e14fc2f minor changes 2006-01-03 11:12:14 +00:00
Paolo Cignoni 1c29faf575 Added some missing std:: 2006-01-02 09:49:36 +00:00
Paolo Cignoni ac8493bbad Splitted IsComplexManifold in IsTwoManifoldFace and IsTwoManifoldVertex 2005-12-29 12:27:37 +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
Massimiliano Corsini 3aa5e5f037 Remove printf 2005-12-21 14:15:03 +00:00
Massimiliano Corsini ebf668b881 Modify genus computation 2005-12-21 13:09:03 +00:00
Paolo Cignoni 738d1e1401 Better comment and a parameter more for UpdateColor::VertexBorderFlag 2005-12-19 16:47:42 +00:00
Massimiliano Corsini 34acf11b61 Fix IsOrientedMesh 2005-12-19 15:13:06 +00:00
Paolo Cignoni 94853880bb Reimplemented SelfIntersection 2005-12-16 13:13:44 +00:00
Massimiliano Corsini 54f4709e35 Reimplement isOrientedMesh 2005-12-16 10:54:59 +00:00
Massimiliano Corsini 8acb41e2a6 Take account for deletion in isComplexManifold 2005-12-16 10:53:39 +00:00
Massimiliano Corsini 4dc5c85023 Take account for deletion in isRegularMesh 2005-12-16 10:51:43 +00:00
Massimiliano Corsini ba6382f984 Reimplement isComplexManifold
Reimplement isRegular
2005-12-15 13:53:13 +00:00
Nico Pietroni ad86fd52a2 added assert on deleted flag condition 2005-12-14 17:14:13 +00:00
Massimiliano Corsini 00d3854048 Fix genus computation 2005-12-14 14:04:35 +00:00
ganovelli 546c392fc4 first importing from old version. NOT optimized! It works with VertexFace Adjacency even over non manifolds 2005-12-13 17:17:19 +00:00
Paolo Cignoni 9b82d2e334 Added Callback in refine 2005-12-13 11:01:01 +00:00
Paolo Cignoni 1885e99e9d Removed unuseful detectunreferenced 2005-12-12 12:11:40 +00:00
Paolo Cignoni b6f13e7eb1 First working version 2005-12-12 12:08:30 +00:00
ganovelli f73fa19346 modifications to compile with gcc 2005-12-12 11:15:26 +00:00
Nico Pietroni 94ef801ecb changed FaceType::ComputeNormal and FaceType::ComputeNormalizedNormal
with face::ComputeNormal and face::ComputeNormalizedNormal
2005-12-06 18:22:31 +00:00
Nico Pietroni af9fdd3d34 new version of index structure used 2005-12-06 18:04:01 +00:00
Nico Pietroni 1485e93b2b 1 bug corrected 2005-12-06 17:55:16 +00:00
Federico Ponchio e87fff3997 added #include triangle3.h for Normal(...)
added a few FaceType:: instead of face::
2005-12-06 15:30:45 +00:00
Paolo Cignoni 68993c3bf1 Changed DegeneratedFaces -> RemoveZeroAreaFaces 2005-12-04 00:25:00 +00:00
Paolo Cignoni a35e0d7ecd Added missing include and sdt:: (tnx to Mario Latronico) 2005-12-03 22:34:25 +00:00
Nico Pietroni 14d586206a corrected 1 bug in Cross Prod Gradient 2005-12-02 16:24:56 +00:00
Paolo Cignoni 0e5890dd55 Removed some pointer vs iterator issues that prevented gcc compilation 2005-12-02 00:14:43 +00:00
Paolo Cignoni 97f3e98cd2 Added and removed typenames for gcc compiling.
removed also some template arguments specifcation that gcc disliked...
commented out GetInSphereFace and SetMesh that are probably never used and i didnt succeed in compile
2005-12-02 00:13:34 +00:00
Paolo Cignoni f7cdd877ef Added assert(HasFlags) everywhere.. 2005-12-02 00:09:12 +00:00
Paolo Cignoni aaa04175d3 commented out an old TRACE 2005-12-02 00:06:37 +00:00
Paolo Cignoni cf80db3c13 Added HasFlags and a couple of missing include files 2005-12-02 00:05:34 +00:00
Paolo Cignoni 86e2eae135 add:
GetClosestVertex,
GetKClosestVertex,
GetInSphereVertex,
GetInBoxVertex,
ClosestIterator
2005-12-01 15:01:17 +00:00
Nico Pietroni 29b3da5541 New version of spatial structures used 2005-11-29 16:21:18 +00:00
Paolo Cignoni 40dc547110 added HasPerWedgeTexture taking mesh as input. (needed for optional components) 2005-11-26 00:16:03 +00:00
Nico Pietroni e463843198 corrected CrossProdGradient( ) 2005-11-23 16:24:44 +00:00
Paolo Cignoni dbc5a559c4 Moved ComputeNormal and ComputeNormalizedNormal out of the face class (no more a member function!) 2005-11-22 15:47:35 +00:00
Paolo Cignoni 88662e6045 Completed and tested self-intersection routine 2005-11-22 14:04:10 +00:00
Nico Pietroni 7d8f6cfd5c last version of index spacing used 2005-11-22 12:50:57 +00:00
Paolo Cignoni 0d97fa92f5 Moved ComputeNormal and ComputeNormalizedNormal out of the face class (no more a member function!) 2005-11-21 21:44:47 +00:00
Paolo Cignoni 25d8f00263 First Release (not working!) 2005-11-21 15:58:12 +00:00
Paolo Cignoni c86e0478f1 Removed Initialize use updateflags::Clear() instead. 2005-11-17 00:41:07 +00:00
Paolo Cignoni 896703158a Added missing includes (color and assert)
Added texture name members
2005-11-16 22:35:47 +00:00
Paolo Cignoni 4f523817c1 Changed ComputeSelfintersection 2005-11-16 16:33:23 +00:00
Paolo Cignoni 85109504ef Changed DegeneratedFaces, sets the D flags for each faces
that is found to be degenerated.
CounEdges and ConnectedComponents check now if a face IsD()
else for degenerated faces many asserts fail.
2005-11-15 12:16:34 +00:00
Paolo Cignoni f32fb12d03 Changed Volume Routine, before was returning negative values 2005-11-15 12:09:17 +00:00
Paolo Cignoni f5d1b6c337 changed access to face functions (border, area)
removed some typecast warnings
2005-11-14 09:28:18 +00:00
Paolo Cignoni 73ca69b0b7 Added casts to remove warnings 2005-11-10 15:38:46 +00:00
Paolo Cignoni e58bf0d711 Removed flags clearing (now it should be in the constructor of face and vertex) 2005-11-10 15:37:58 +00:00
Paolo Cignoni 4f73a93dd0 Added clarifying comment in an assert 2005-11-10 15:36:42 +00:00
Paolo Cignoni 8f621b53ef correct IsBorder 2005-10-25 09:17:41 +00:00
Paolo Cignoni dee2e4f284 Re-inserted the cFFp and cVFp access. If only the const version of the member function exists, the compiler will call it
when a non-const object invokes that function
2005-10-13 09:32:11 +00:00
Paolo Cignoni 029aa3cdec removed the access to the face member function normal and substituted with vcg::normal(*f); 2005-10-13 08:38:00 +00:00
Federico Ponchio 1723bbf895 cFFp doesn not exist -> FFp (there is the const version...)
same for cVFp.
2005-10-12 17:26:19 +00:00
Paolo Cignoni ead8780772 Removed clearing of flags of added faces. Now the flag component has a constructor that clear it.
FF and VF adjacency are updated only if they are present and consistent (e.g. only if VFp(k) != 0 or FFp(k)!=0)
2005-10-12 10:47:21 +00:00
Paolo Cignoni 6b14910e5f Now creation of new edge use Ordered() constructor to comply the fact that the basic collapse is simmetric. 2005-10-12 10:44:01 +00:00
Paolo Cignoni c12401a795 Removed unused local type Edge. Now it use the standard simplex edge. 2005-10-12 10:36:26 +00:00
Paolo Cignoni d8e79083e0 Added new functions belonging to triMeshInfo
Started the Self-Intersection routine
2005-10-11 16:03:40 +00:00
Nico Pietroni b61d0de3b6 corrected bugs on GEtKClosestVert and GetInSphereVert 2005-10-05 17:02:52 +00:00
Paolo Cignoni 5182d24c7f fixed some bugs 2005-10-03 16:19:07 +00:00
Paolo Cignoni ecdb5c6ad4 add template parameter for spatialindexing struction 2005-10-03 16:18:15 +00:00
Paolo Cignoni f851e3d3d8 used new version of grid query 2005-10-03 16:16:54 +00:00
Paolo Cignoni c37db42415 Minor changes 2005-10-03 16:00:08 +00:00
Paolo Cignoni 11a25b6957 Alligned with TriMeshInfo Code 2005-10-03 15:57:53 +00:00
Nico Pietroni 805b84bf43 added GetInSphere and GetInBox functions
rensmed Functions respectively with Face suffix or Vertex suffix for query on vertex or faces
2005-10-03 13:59:39 +00:00
Paolo Cignoni a7b6938a1e Changed the sense of the < operator for heap: it is reversed according to the stl where highest score elements must float in the heap
Completed TimeBudget Termination condition.
Parametrized the ClearHeap procedure now there is a HeapSimplexRatio param. Removed dirty printf.
2005-10-02 23:23:52 +00:00
Paolo Cignoni 2ef5b676b5 Changed the sign of the priority of a collapse. Now it is its the error as it should (and not -error) 2005-10-02 23:19:36 +00:00
Nico Pietroni e58a99de93 used functor defined in face/distance.h for distance point-face
used functor defined in intersection3.h for ray-triangle intersection
added GetKClosest and DoRay Functions
2005-09-30 13:10:37 +00:00
Paolo Cignoni 0fa8212a49 changed name of include, removed use of an undefined type (scalar instead of Scalar)
removed unused code portions (the old closest code)
2005-09-28 08:30:48 +00:00
Nico Pietroni a9c5d8fd42 Added RayIterators.
Added ClosestIterators on Triangles and Vertices.
Added Closest Functions on triangles and Vertices.
2005-09-21 09:24:30 +00:00
Nico Pietroni e469fef8bd Modified MArk function parameter form ConstVertexPointer to VertexPointer 2005-09-20 13:58:55 +00:00
Nico Pietroni f569a25540 added ray iterator of faces 2005-09-19 13:36:24 +00:00
Paolo Cignoni b4e997ae7a fixed bugs 2005-09-19 13:10:12 +00:00
Paolo Cignoni c2e01165d6 Small gcc compliling issues 2005-09-16 11:53:51 +00:00
Paolo Cignoni e6739a6a71 fixed bugs 2005-09-15 13:16:42 +00:00
Nico Pietroni 417bf69fc3 minor changes 2005-09-15 11:15:00 +00:00
Paolo Cignoni 744b1a2bbb used new version of Grid_ptr 2005-09-14 14:34:41 +00:00
Paolo Cignoni aef362e62d ConstVertexPointer --> VertexPointer
ConstEdgePointer --> EdgePointer
2005-09-14 14:09:16 +00:00
Nico Pietroni 3e89d13fea used closest function from grid 2005-09-14 12:56:47 +00:00
Paolo Cignoni f82f32c6a7 changed typedef A2UGridLink da 'GridStaticPtr<MESH::FaceContainer,double>::Link' a typedef 'GRID::Link' 2005-08-26 09:12:48 +00:00
ganovelli 831d12d4f6 added math:: namespace before min and max 2005-08-08 10:28:13 +00:00
Nico Pietroni 47af92e51f renamed typedef VertexContainer into VertContainer (like trimesh) 2005-08-02 11:37:29 +00:00