Commit Graph

2050 Commits

Author SHA1 Message Date
ganovelli 729cd02057 [SIMPLEXplus promotion]
This modification removes the old way to define simplexes (already deprecated and unsupported).
In the following SIMPLEX = [vertex|edge|face|tetrahedron]

All the stuff that was in vcg/simplex/SIMPLEXplus/ has now been promoted to vcg/simplex/

Details:
- the folder vcg/simplex/SIMPLEX/with has been removed
- the file vcg/simplex/SIMPLEX/base.h has been renamed into  vcg/simplex/SIMPLEX/base_old.h 
- the content of vcg/simplex/SIMPLEXplus/ has been moved into vcg/simplex/SIMPLEX/
- the folder vcg/simplex/SIMPLEXplus/ has been removed

Actions the update the  code using vcglib:
replace <vcg/simplex/SIMPLEXplus/*> with  <vcg/simplex/SIMPLEX/*> in every include
for MESHLAB users: already done along with this commit
2009-01-14 17:45:18 +00:00
Massimiliano Corsini fdaa2e88d1 poisson disk under development... (not working for now) 2009-01-14 17:12:12 +00:00
Paolo Cignoni 45ffbac554 added a forgot std:: 2009-01-14 16:22:40 +00:00
Paolo Cignoni 2497e3d286 Added Edge Uniform sampling function that takes samples uniformly only on the mesh edges by regularly subdividing them 2009-01-14 15:56:07 +00:00
Paolo Cignoni 1f992d7929 Added helper function to returning a list of all the unique edges of a mesh 2009-01-14 15:54:50 +00:00
Paolo Cignoni d236258507 added silly stuff needed for the MS implementation of hash_multimap 2009-01-14 14:55:50 +00:00
Paolo Cignoni dec8245691 Corrected a missing underscore in a preprocessor define check 2009-01-14 13:33:33 +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 9dc34faae4 added missing face flags clear/setting members 2009-01-14 01:16:11 +00:00
Paolo Cignoni 3cee0f23b5 commented out a addCell call that was undefined 2009-01-13 21:10:57 +00:00
Paolo Cignoni 9849e12bd1 removed nasty useless undefs 2009-01-13 15:52:27 +00:00
Paolo Cignoni fdf4e402f3 forgot a couple of std:: 2009-01-13 06:33:53 +00:00
Paolo Cignoni 017d27dc36 Better commnts and other minor beautifications 2009-01-13 06:27:01 +00:00
Paolo Cignoni a546c88a7c Heavy restructured the whole spatial hashing. Much shorter code. The dynamic part is now missing... 2009-01-12 22:46:00 +00:00
Massimiliano Corsini c4ca67e959 fix typo 2009-01-12 16:11:37 +00:00
Paolo Cignoni 417c52b7b0 Better comments clarifying the purpose of Samplers and Algorithms for sampling 2009-01-12 16:01:49 +00:00
Massimiliano Corsini 1a05696eb5 first sketch of the Poisson disk (projection-based) sampling 2009-01-12 14:22:03 +00:00
Massimiliano Corsini abbf0d60ce starting to implement PoissonDisk sampling 2009-01-11 15:43:58 +00:00
Massimiliano Corsini 44aa343da6 minor changes in poisson disk 2009-01-09 17:05:10 +00:00
Massimiliano Corsini 3586a13438 replace rand() with MarsenneTwister generator 2009-01-09 14:35:46 +00:00
Paolo Cignoni 51e1718626 added the possibility to decide the size of the grid with an optional parameter of the Set 2009-01-08 11:29:24 +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 3e85ffd0ff New function for computing baric coords in a more robust way 2009-01-08 11:24:54 +00:00
Paolo Cignoni 20272bf7ac gcc compilation issues 2009-01-08 07:52:16 +00:00
ganovelli 8ae63ef1c3 - added optional parameter to return the closest vertex as a vertex attribute
- added a tolerance to check triangle inequality
2009-01-07 14:25:46 +00:00
ganovelli 2e7bde9f24 more clean up, unified single and multiple sources cases 2009-01-06 15:13:43 +00:00
Paolo Cignoni 0db413a1f4 fix compilation 2008-12-29 12:01:23 +00:00
ganovelli 818129d045 refactorized but Still to clean up;
It seems to work but "continuous" distance estimation cannot work with multiple sources.
In this case edge leght estimation is used.
2008-12-22 19:51:11 +00:00
Paolo Cignoni 56d93a02b6 Othography. Fartest -> Farthest 2008-12-21 07:44:29 +00:00
Paolo Cignoni 190e1612c7 added VVStarVF that computes the star of a given vertex exploiting VF adjacency 2008-12-21 01:41:07 +00:00
Paolo Cignoni eca304e5f5 mark of Vertex should not be named HasFaceMarkOcf!! 2008-12-21 01:39:46 +00:00
Paolo Cignoni 36c902097a put class in namespace tri, removed useless parameter from DistanceFromBorder() 2008-12-21 01:37:29 +00:00
ganovelli 157301b773 change to comply random generation 2008-12-19 10:40:31 +00:00
ganovelli 39ffa7cd3d [SIMPLEXplus promotion]
This modification removes the old way to define simplexes (already deprecated and unsupported).
In the following SIMPLEX = [vertex|edge|face|tetrahedron]

All the stuff that was in vcg/simplex/SIMPLEXplus/ has now been promoted to vcg/simplex/

Details:
- the folder vcg/simplex/SIMPLEX/with has been removed
- the file vcg/simplex/SIMPLEX/base.h has been renamed into  vcg/simplex/SIMPLEX/base_old.h 
- the content of vcg/simplex/SIMPLEXplus/ has been moved into vcg/simplex/SIMPLEX/
- the folder vcg/simplex/SIMPLEXplus/ has been removed

Actions the update the  code using vcglib:
replace <vcg/simplex/SIMPLEXplus/*> with  <vcg/simplex/SIMPLEX/*> in every include
for MESHLAB users: already done along with this commit
2008-12-19 10:39:32 +00:00
ganovelli 8a1fdbe37f [SIMPLEXplus promotion]
This modification removes the old way to define simplexes (already deprecated and unsupported).
In the following SIMPLEX = [vertex|edge|face|tetrahedron]

All the stuff that was in vcg/simplex/SIMPLEXplus/ has now been promoted to vcg/simplex/

Details:
- the folder vcg/simplex/SIMPLEX/with has been removed
- the file vcg/simplex/SIMPLEX/base.h has been renamed into  vcg/simplex/SIMPLEX/base_old.h 
- the content of vcg/simplex/SIMPLEXplus/ has been moved into vcg/simplex/SIMPLEX/
- the folder vcg/simplex/SIMPLEXplus/ has been removed

Actions the update the  code using vcglib:
replace <vcg/simplex/SIMPLEXplus/*> with  <vcg/simplex/SIMPLEX/*> in every include
for MESHLAB users: already done along with this commit
2008-12-19 10:34:41 +00:00
ganovelli 045832c348 [SIMPLEXplus promotion]
This modification removes the old way to define simplexes (already deprecated and unsupported).
In the following SIMPLEX = [vertex|edge|face|tetrahedron]

All the stuff that was in vcg/simplex/SIMPLEXplus/ has now been promoted to vcg/simplex/

Details:
- the folder vcg/simplex/SIMPLEX/with has been removed
- the file vcg/simplex/SIMPLEX/base.h has been renamed into  vcg/simplex/SIMPLEX/base_old.h 
- the content of vcg/simplex/SIMPLEXplus/ has been moved into vcg/simplex/SIMPLEX/
- the folder vcg/simplex/SIMPLEXplus/ has been removed

Actions the update the  code using vcglib:
replace <vcg/simplex/SIMPLEXplus/*> with  <vcg/simplex/SIMPLEX/*> in every include
for MESHLAB users: already done along with this commit
2008-12-19 10:34:17 +00:00
ganovelli d88ae15696 [SIMPLEXplus promotion]
This modification removes the old way to define simplexes (already deprecated and unsupported).
In the following SIMPLEX = [vertex|edge|face|tetrahedron]

All the stuff that was in vcg/simplex/SIMPLEXplus/ has now been promoted to vcg/simplex/

Details:
- the folder vcg/simplex/SIMPLEX/with has been removed
- the file vcg/simplex/SIMPLEX/base.h has been renamed into  vcg/simplex/SIMPLEX/base_old.h 
- the content of vcg/simplex/SIMPLEXplus/ has been moved into vcg/simplex/SIMPLEX/
- the folder vcg/simplex/SIMPLEXplus/ has been removed

Actions the update the  code using vcglib:
replace <vcg/simplex/SIMPLEXplus/*> with  <vcg/simplex/SIMPLEX/*> in every include
for MESHLAB users: already done along with this commit
2008-12-19 10:33:51 +00:00
ganovelli 4f8ed978a7 [SIMPLEXplus promotion]
This modification removes the old way to define simplexes (already deprecated and unsupported).
In the following SIMPLEX = [vertex|edge|face|tetrahedron]

All the stuff that was in vcg/simplex/SIMPLEXplus/ has now been promoted to vcg/simplex/

Details:
- the folder vcg/simplex/SIMPLEX/with has been removed
- the file vcg/simplex/SIMPLEX/base.h has been renamed into  vcg/simplex/SIMPLEX/base_old.h 
- the content of vcg/simplex/SIMPLEXplus/ has been moved into vcg/simplex/SIMPLEX/
- the folder vcg/simplex/SIMPLEXplus/ has been removed

Actions the update the  code using vcglib:
replace <vcg/simplex/SIMPLEXplus/*> with  <vcg/simplex/SIMPLEX/*> in every include
for MESHLAB users: already done along with this commit
2008-12-19 10:33:23 +00:00
ganovelli f9a1578c8d [SIMPLEXplus promotion]
This modification removes the old way to define simplexes (already deprecated and unsupported).
In the following SIMPLEX = [vertex|edge|face|tetrahedron]

All the stuff that was in vcg/simplex/SIMPLEXplus/ has now been promoted to vcg/simplex/

Details:
- the folder vcg/simplex/SIMPLEX/with has been removed
- the file vcg/simplex/SIMPLEX/base.h has been renamed into  vcg/simplex/SIMPLEX/base_old.h 
- the content of vcg/simplex/SIMPLEXplus/ has been moved into vcg/simplex/SIMPLEX/
- the folder vcg/simplex/SIMPLEXplus/ has been removed

Actions the update the  code using vcglib:
replace <vcg/simplex/SIMPLEXplus/*> with  <vcg/simplex/SIMPLEX/*> in every include
for MESHLAB users: already done along with this commit
2008-12-19 10:33:01 +00:00
ganovelli 49b4970452 [SIMPLEXplus promotion]
This modification removes the old way to define simplexes (already deprecated and unsupported).
In the following SIMPLEX = [vertex|edge|face|tetrahedron]

All the stuff that was in vcg/simplex/SIMPLEXplus/ has now been promoted to vcg/simplex/

Details:
- the folder vcg/simplex/SIMPLEX/with has been removed
- the file vcg/simplex/SIMPLEX/base.h has been renamed into  vcg/simplex/SIMPLEX/base_old.h 
- the content of vcg/simplex/SIMPLEXplus/ has been moved into vcg/simplex/SIMPLEX/
- the folder vcg/simplex/SIMPLEXplus/ has been removed

Actions the update the  code using vcglib:
replace <vcg/simplex/SIMPLEXplus/*> with  <vcg/simplex/SIMPLEX/*> in every include
for MESHLAB users: already done along with this commit
2008-12-19 10:32:32 +00:00
ganovelli c9b6f8f7c8 2008-12-19 10:31:56 +00:00
ganovelli 698f6cbd7e [SIMPLEXplus promotion]
This modification removes the old way to define simplexes (already deprecated and unsupported).
In the following SIMPLEX = [vertex|edge|face|tetrahedron]

All the stuff that was in vcg/simplex/SIMPLEXplus/ has now been promoted to vcg/simplex/

Details:
- the folder vcg/simplex/SIMPLEX/with has been removed
- the file vcg/simplex/SIMPLEX/base.h has been renamed into  vcg/simplex/SIMPLEX/base_old.h 
- the content of vcg/simplex/SIMPLEXplus/ has been moved into vcg/simplex/SIMPLEX/
- the folder vcg/simplex/SIMPLEXplus/ has been removed

Actions the update the  code using vcglib:
replace <vcg/simplex/SIMPLEXplus/*> with  <vcg/simplex/SIMPLEX/*> in every include
for MESHLAB users: already done along with this commit
2008-12-19 10:30:51 +00:00
ganovelli d3682195ca replaced a "3" with a f->VN() 2008-12-18 17:53:42 +00:00
ganovelli db04989f13 added support for meshes with holes 2008-12-18 17:52:48 +00:00
Paolo Cignoni 20b46e3122 added the default use of a safe random generator for shuffling vectors (mingw rand seems really bad...) 2008-12-18 00:30:52 +00:00
Paolo Cignoni 0b15c9b4b4 added a few const, and a default value for the generate(int) call 2008-12-18 00:29:03 +00:00
Paolo Cignoni c2c940338e added a missing PerFaceFromCurrentVertexNormal mode 2008-12-18 00:27:47 +00:00
Marco Callieri 7548c5e2ac corrected a pow argument casting 2008-12-16 09:52:04 +00:00
Paolo Cignoni 0f0ac756e4 Polar Functor is now templatized 2008-12-15 13:16:00 +00:00
Paolo Cignoni a9a17a0713 Aligned with current implementation of RandomGenerator 2008-12-15 08:49:02 +00:00
ganovelli ca3f973398 added unsupported to deprecated in the warning 2008-12-12 18:11:42 +00:00
ganovelli 76eefc7fb8 added unsupported to deprecated in the warning 2008-12-12 18:10:36 +00:00
Paolo Cignoni 8ef495be20 added test to skip degenerate triangles in curvature computation 2008-12-12 15:08:36 +00:00
Paolo Cignoni 4e2808a64e added assert for avoiding to put trash into a histogram 2008-12-12 15:06:27 +00:00
Paolo Cignoni 46cc8c7327 Removed harmless warnings 2008-12-11 13:56:37 +00:00
Paolo Cignoni 85dc63a154 moved here from meshlab. Long time due. 2008-12-11 13:52:25 +00:00
Paolo Cignoni 3485b76d8f Added explicit casts 2008-12-09 11:36:34 +00:00
Paolo Cignoni 8f591655f3 added comment on the two critical asserts 2008-12-09 07:52:27 +00:00
Paolo Cignoni 2143a5138a corrected bug in PerVertexFromCurrentFaceNormal (wrong use of Construct() ) 2008-12-09 07:51:33 +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 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 0e13472efb corrected a wrong assert in grid creation function 2008-12-05 22:55:36 +00:00
Paolo Cignoni e744ca1c0e added the missing HasPerVertexMark 2008-12-05 22:45:05 +00:00
Paolo Cignoni f6388be600 added VertexSet, the dual of UpdateFlags::VertexClear(bitmask); 2008-12-05 22:44:03 +00:00
Paolo Cignoni 007d6b94f5 added two const to the next and prev index returning functions 2008-12-05 22:42:55 +00:00
Paolo Cignoni cca3b3ad5f cleaned up a lot of typename gcc compilation issues 2008-12-02 10:04:16 +00:00
Paolo Cignoni 928c8dd997 Removed harmless warnings 2008-11-28 14:55:45 +00:00
Paolo Cignoni 62c3f721aa Added missing include trimesh/allocate.h 2008-11-28 13:45:39 +00:00
Paolo Cignoni 13e5060688 Re-added the original constructor with the seed. Very useful for using custom static generators. 2008-11-27 21:04:17 +00:00
ganovelli 3cbdda3232 added EmptyEEAdj to the type holder 2008-11-27 18:21:01 +00:00
ganovelli 1d263ec3ff added the possibility to include a container of edges as a third parameter.
This mod should be  fully backward compatible (tested .net 2005 and gcc 4.2.4)
2008-11-27 18:01:07 +00:00
Massimiliano Corsini b73fba8706 refactoring 2008-11-27 16:39:05 +00:00
Paolo Cignoni 46b3024de6 Changed as to include new Random methods 2008-11-27 15:05:36 +00:00
Massimiliano Corsini c13722fd54 minor changes 2008-11-27 11:49:17 +00:00
Massimiliano Corsini 67d185c384 other bugs fixed 2008-11-27 11:37:23 +00:00
Massimiliano Corsini 7b8d3a07f0 first fixes 2008-11-27 11:31:01 +00:00
Massimiliano Corsini 50a436594e re-styled and improved uniform random number generator 2008-11-27 11:27:54 +00:00
ganovelli 9d8e452e65 added Alloc to support polygon meshes 2008-11-26 17:58:15 +00:00
ganovelli 01750729b6 missing checks on deleted simplex added 2008-11-26 17:57:09 +00:00
ganovelli faeef173e8 added AddEdge and RemoveEdge (still much ongoing) 2008-11-26 17:56:00 +00:00
ganovelli 4cae6b5107 added the update of the pointers related to the AddEdges 2008-11-26 17:46:31 +00:00
ganovelli a00abdc73c added EmptyHEData in EdgeBase 2008-11-26 17:43:28 +00:00
ganovelli cb547de5ec removed a few bugs, added EmptyHEData class 2008-11-26 17:42:55 +00:00
ganovelli 327874865a removed a few bugs on calls to Alloc() 2008-11-26 17:41:47 +00:00
Massimiliano Corsini 992a808685 2008-11-20 17:00:30 +00:00
Paolo Cignoni 8e23847cab Distance functor is now a template parameter 2008-11-20 16:24:42 +00:00
Paolo Cignoni c7719d7d35 Corrected wrong max_band 2008-11-20 13:29:26 +00:00
Paolo Cignoni 5ee16ee977 Removed unused static field max_band 2008-11-20 13:27:50 +00:00
Paolo Cignoni 619f3f69ef Addedd missing include 2008-11-20 13:26:59 +00:00
Paolo Cignoni 42709146e6 Addedd missing std namespace befor make_pair 2008-11-20 13:26:26 +00:00
Massimiliano Corsini 99e6ea5dd6 add fake poisson-disk sampling 2008-11-17 12:52:17 +00:00
Paolo Cignoni 5c6c7cafd5 changed the interface of the texel sampling function. Now width and height of the sampling texture can be different 2008-11-14 15:12:02 +00:00
Paolo Cignoni 360da1dd58 small changes (this-> disambiguations) and a type hack to grant compilation on mac gcc 2008-11-13 09:44:46 +00:00
ganovelli 2dfa6976ac [EDGE_SUPPORT] first working draft. It contains a class with two static function to compute indexed data structure from half edges and viceversa 2008-11-12 17:09:26 +00:00
ganovelli f80c878644 [EDGE SUPPORT] Added template parameter to query function to comply mods in vcg/complex/trimesh/base.h 2008-11-12 16:21:30 +00:00
ganovelli 81a4a5b4f5 added missing cC() access to color 2008-11-12 16:20:53 +00:00
ganovelli 62ff8885c0 Added missing Prev and Next to PolyInfo
[EDGE SUPPORT] Added PFEAdj (pointer to edge)
2008-11-12 16:19:52 +00:00
ganovelli d3ba33039b [EDGE SUPPORT] Added template parameter to qyery function to comply mods in vcg/complex/trimesh/base.h 2008-11-12 16:18:28 +00:00
ganovelli 085d51edfa [EDGE SUPPORT] added FEAdj component 2008-11-12 16:17:07 +00:00
ganovelli 896e0edc04 minor - just identation 2008-11-12 16:15:52 +00:00