Commit Graph

986 Commits

Author SHA1 Message Date
Paolo Cignoni 19fd589795 Added ClearS and GetBBox 2005-11-12 18:42:18 +00:00
Paolo Cignoni f8e4bf2c94 Added HasFlags and initialization of flags at construction. 2005-11-12 18:41:14 +00:00
Paolo Cignoni fab34558d7 Added dummy static member for avoiding annoying warning in empty functions... 2005-11-12 18:39:54 +00:00
Paolo Cignoni d3c1165fe6 Added 'Visited' flag functions 2005-11-12 18:36:51 +00:00
Paolo Cignoni fca4bdc2d5 Changed HasFlag -> HasFlags 2005-11-12 18:35:49 +00:00
Paolo Cignoni 4d952f8de7 Made IsManifold Constant 2005-11-10 15:49:32 +00:00
Paolo Cignoni 5a906c4a50 Added casts to remove warnings 2005-11-10 15:44:17 +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 e739c6628f Added Abs and LowClampToZero 2005-11-09 16:11:55 +00:00
Nico Pietroni 9a29bd3f63 added dynamic spatial hashing class for dynamic updating of entries (and relative functions) 2005-11-07 14:15:36 +00:00
Paolo Cignoni 9bc80c05ea Added an assert(0) in all the accesses to empty components 2005-11-01 18:17:52 +00:00
Paolo Cignoni 9df077d22f Added intialization of _flags to zero in the default constructor of face 2005-11-01 18:16:36 +00:00
Federico Ponchio a9ed92f5f0 Tired of no newline at end of file warnings. 2005-10-26 21:22:11 +00:00
Paolo Cignoni 46cf45eda3 *** empty log message *** 2005-10-26 15:45:56 +00:00
Marco Di Benedetto 329b7edb38 Added PASS_THROUGH flags. 2005-10-26 11:42:03 +00:00
Marco Di Benedetto 2579c02256 Removed child ordered traversal. 2005-10-26 11:41:07 +00:00
Paolo Cignoni 8f621b53ef correct IsBorder 2005-10-25 09:17:41 +00:00
Federico Ponchio cf9d5743fb Added newline at end of file (tired of stupid warnings...) 2005-10-24 09:20:28 +00:00
Paolo Cignoni db81a6ef1f Added a missing ';' in FFAdjOcf (thanks to Mario Latronico). 2005-10-22 13:16:46 +00:00
ganovelli b586da1c64 EdgePLaneType added (_RT) 2005-10-18 14:27:22 +00:00
Marco Di Benedetto 7d23e4284b Fixed bug in Refresh() ray iterator (Elems.size() > 0). 2005-10-17 08:59:26 +00:00
Federico Ponchio 69240d2ddc IsBorder(...) declaration needed. 2005-10-16 23:30:39 +00:00
Marco Di Benedetto 56412a6071 Modified objapplyfunctor to nodeapplyfunctor. 2005-10-15 19:14:35 +00:00
Marco Di Benedetto 2a0cf74739 Corrected return type in Angle() and protected member access in unary operator - 2005-10-15 19:11:49 +00:00
ganovelli 0c0627ad11 Working release (compilata solo su MSVC), component_occ è migrato da component_opt 2005-10-15 16:24:10 +00:00
ganovelli 351bebdf50 *** empty log message *** 2005-10-15 16:22:22 +00:00
ganovelli 4f6abd65d7 Working release (compilata solo su MSVC), vector_occ è migrato da component_opt 2005-10-15 16:21:49 +00:00
Federico Ponchio f5a490079f Typename... as usual 2005-10-15 12:58:13 +00:00
Paolo Cignoni ca26ad417e First Really Working version 2005-10-14 15:07:59 +00:00
Paolo Cignoni 71b34e6b95 Added constant access functions and reflective functions (HasSomething stuff)
to all the components This is the first really working version...
2005-10-14 13:30:07 +00:00
Paolo Cignoni 84866a3b0d First Really Working version 2005-10-14 13:26:57 +00:00
Paolo Cignoni 9d764b3a8c Added cVFp member 2005-10-14 13:25:50 +00:00
Paolo Cignoni 4be15d81cd Added ordered constructor that build a edge with unique ordering
among vertices (useful for edge-collapse simplification)
2005-10-14 12:34:55 +00:00
Federico Ponchio a06ae78c6e Changed a Zero in SetZero in WeightedCrossCovariance() (again) 2005-10-13 15:45:23 +00:00
ganovelli b47b530549 versione con svd 2005-10-13 14:59:57 +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 b63a90172e Removed the reference to Deprecated f->IsBorder(i) now everyone should use IsBorder(*f,i); 2005-10-13 09:29:10 +00:00
Paolo Cignoni ff83bb3a24 Added cFFp and cVFp const member functions 2005-10-13 09:25:43 +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
Paolo Cignoni b84b47b5f1 Removed reference to IsBorder() member of face and substituted with the face templated function version. 2005-10-13 08:34:19 +00:00
Federico Ponchio 4c140c3bd4 RayType ->Ray3 in a couple of location (not really sure is correct though...) 2005-10-12 17:29:42 +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
Federico Ponchio 5008465972 Added IsOrtho... 2005-10-12 16:43:32 +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 9a78285793 Removed the supposedly wrong first parameter in the three invocation of ClassType::BoundObjects. 2005-10-12 09:59:40 +00:00
Paolo Cignoni d8e79083e0 Added new functions belonging to triMeshInfo
Started the Self-Intersection routine
2005-10-11 16:03:40 +00:00
Paolo Cignoni 69123d036e updated to the new naming scheme 2005-10-07 15:22:07 +00:00
Paolo Cignoni b166dd19da Initial release 2005-10-07 15:20:52 +00:00
Paolo Cignoni 0bf4c6a185 minor updates to keep it in line with the rest of the library 2005-10-07 15:20:00 +00:00
Paolo Cignoni 08a49f7305 Minor changes in Set method: added use of template scalar type computing BBox. 2005-10-07 13:27:22 +00:00
Nico Pietroni dae0988085 added getBBox method 2005-10-06 14:26:39 +00:00
Nico Pietroni 644fca68bf minor changes 2005-10-05 17:39:14 +00:00
Nico Pietroni 7580221931 corrected sintax error on singular value decomposition 2005-10-05 17:06:12 +00:00
Nico Pietroni a3d7b98a34 corrected bug on Set Function .... bbox must be exetended in order to have'nt any object on his borde 2005-10-05 17:05:08 +00:00
Nico Pietroni f0724dd9e9 corrected bug on closest Iterator 2005-10-05 17:04:45 +00:00
Nico Pietroni b61d0de3b6 corrected bugs on GEtKClosestVert and GetInSphereVert 2005-10-05 17:02:52 +00:00
Marco Di Benedetto b7d4a5efd6 First Commit, new version. 2005-10-05 01:59:56 +00:00
Marco Di Benedetto 797d8f344f *** empty log message *** 2005-10-05 01:58:21 +00:00
Marco Di Benedetto 2a3744d4d8 Removed "parent" pointer class member in Node class. 2005-10-05 01:43:28 +00:00
Marco Di Benedetto ded83f251f Node children are now tested in ascending ray-T order. 2005-10-05 01:40:56 +00:00
Paolo Cignoni 97c08b13f3 erase wrong assert on boxToIbox function 2005-10-03 16:21:10 +00:00
Paolo Cignoni 5ef378ec5a add define header 2005-10-03 16:19:44 +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
Federico Ponchio e9583c5020 Changed order of functions intersection_line_box and
intersectuion_ray_box
2005-10-03 16:07:50 +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 de125d7f59 first release version 2005-10-03 14:13:13 +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
Nico Pietroni 3a54e6d7c3 added GetInSphere and GetInBox functions 2005-10-03 13:58:21 +00:00
Nico Pietroni 3fd167568f added GridGetInSphere and GridGetInBox functions 2005-10-03 13:57:32 +00:00
Nico Pietroni bccc1ad129 optimized Closest iterator
added possibility to pass a point p that is outside the bbox of the indexing structure
2005-10-03 10:06:53 +00:00
Nico Pietroni 418bf58a24 changed Set functions, added possibility to pass the bbox as parameter 2005-10-03 10:05:26 +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
Paolo Cignoni 1422c01d7a Small bug in the computation of the intersection between the todo box and the grid bbox that failed for extrema points. 2005-10-02 23:18:06 +00:00
Paolo Cignoni 010877c2b8 English comment and moved typedef to public scope 2005-10-02 23:16:26 +00:00
Paolo Cignoni e40b78b1af Inveted the boolean sign of an assert in Grid() 2005-10-02 23:15:26 +00:00
Paolo Cignoni f44089209e Changed the default strategy for building a AABB tree. Now the max num of elem per leaf is a constant (10) 2005-10-02 23:13:30 +00:00
Paolo Cignoni a60af2bbb7 *** empty log message *** 2005-10-01 09:26:57 +00:00
Paolo Cignoni 957255b9a8 Major rewriting of the whole class edge. Removed default flags and nonsense attibutes. Given consistent naming to defines. 2005-10-01 09:22:51 +00:00
Paolo Cignoni eb14792ee4 Completely rewrote the GridClosest, now it:
- works for point out of the grid
- expands the box in a distance coherent way
- does not re-visit already visited cells
- shorter code!!
( still to be tested :) )
2005-09-30 15:12:16 +00:00
Paolo Cignoni 0bccd8ca77 Reordered grid access functions
Added possibility of setting BBox explicitly in Set(...)
2005-09-30 15:07:28 +00:00
Paolo Cignoni 4086ccd28b Added Center-Radius Constructor 2005-09-30 15:03:57 +00:00
Nico Pietroni baf89ec27c added functions:
- GetKClosest
     - DoRay
2005-09-30 13:15:48 +00:00
Nico Pietroni a3c311feda added wrapping to functions defined in GridClosest:
- GetClosest
     - GetKClosest
     - DoRay
2005-09-30 13:15:21 +00:00
Nico Pietroni 6416a20ba2 changing order of parameter for functor calling (distance to point, intersection to ray...) 2005-09-30 13:13:47 +00:00
Nico Pietroni 94f3ed0fa9 basic grid class is derived from Indexing base class defined in base,h 2005-09-30 13:12:46 +00:00
Nico Pietroni f3dd988af6 corrected 1 compiling error on Ray_Box_Intersection function 2005-09-30 13:11:39 +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
Nico Pietroni c19fce46a3 first release version 2005-09-30 12:51:39 +00:00
Marco Di Benedetto 5b15048c38 Removed '&' in FrustumCull() method. 2005-09-29 22:20:49 +00:00
Marco Di Benedetto 0b4247dff6 Added frustum culling methods, renamed some parameters. 2005-09-29 22:18:16 +00:00
Nico Pietroni 7bf24066b2 Added function RayBoxIntersection, renamed intersection line box from "Intersection" to "Intersection_Line_Box" 2005-09-29 15:30:10 +00:00
Marco Di Benedetto 521dd26e02 Removed. All functors are in appropriate files. 2005-09-29 11:49:38 +00:00
Marco Di Benedetto 342c06717b Added functor RayTriangleIntersectionFunctor. 2005-09-29 11:48:00 +00:00
ganovelli 44e86f5a9b added inverse by SVD 2005-09-29 09:53:58 +00:00
Marco Di Benedetto add80bd224 Added Point3::Construct() in ray-face functor
to handle tree and objects with different ScalarType.
2005-09-28 21:24:44 +00:00
Marco Di Benedetto bf84eeafe0 Added Import() to box and barycenter functors
to handle tree and objects with different ScalarType.
2005-09-28 21:23:03 +00:00
Marco Di Benedetto 21d8967063 First Commit. 2005-09-28 20:14:53 +00:00
Marco Di Benedetto 478c812d2d Removed. Now common utils are in wrap/utils.h 2005-09-28 19:59:39 +00:00
Marco Di Benedetto 3f8831798f Removed for new version. 2005-09-28 19:58:00 +00:00
Marco Di Benedetto a8e493209e #included aabb tree base. 2005-09-28 19:57:18 +00:00
Marco Di Benedetto cd7fc5bedf All functors but FaceRayIntersectFunctor removed and placed in appropriate files. 2005-09-28 19:55:08 +00:00
Marco Di Benedetto cb0aab5473 #included aabbtree base. 2005-09-28 19:49:13 +00:00
Marco Di Benedetto c8ff470b30 Removed hit point parameter, #included aabbtree base. 2005-09-28 19:48:31 +00:00
Marco Di Benedetto ab147cbfbc First Commit. 2005-09-28 19:44:49 +00:00
Marco Di Benedetto 1de3d80e9b Added intersection for ray-triangle (with Ray3 type). 2005-09-28 19:40:55 +00:00
Marco Di Benedetto 36aedffa72 Added class PointDistanceFunctor. 2005-09-28 19:35:06 +00:00
Marco Di Benedetto 3a76ce3a01 Added const qualifier in GetBBox method. 2005-09-28 19:32:09 +00:00
Marco Di Benedetto c553959046 First Commit. 2005-09-28 17:19:28 +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
Paolo Cignoni 2db605e2be Added a control to avoid multiple check of the same cells during radial expansion
Still miss some code to properly initialize when point is out of the BBox of the grid.
2005-09-28 08:27:11 +00:00
Paolo Cignoni a2115a7d6c Renamed to grid_closest 2005-09-27 15:10:23 +00:00
Paolo Cignoni f73826de44 First Version 2005-09-27 15:09:38 +00:00
Marco Di Benedetto 9163d261f7 Method Set(off, dir) now correctly normalizes direction and offset if template parameter NORM is set. 2005-09-26 19:49:30 +00:00
Marco Di Benedetto fefa8ab4c3 First Commit. 2005-09-26 18:33:16 +00:00
Marco Di Benedetto 8e50d54365 Removed for new dirtree 2005-09-26 12:23:28 +00:00
ganovelli 73ee6a592f added constructor 2005-09-23 14:18:27 +00:00
Marco Di Benedetto 798bc841c5 FaceRayIntersectFunctor implementation finished, added necessary headers. 2005-09-22 22:43:42 +00:00
Marco Di Benedetto 123fd375a6 Corrected bug in IntersectionBoxRay() and some undeclared variable errors. 2005-09-22 18:57:07 +00:00
Marco Di Benedetto bcd64129e2 Old versions removed. Now AABBBinaryTree has its own folder. 2005-09-22 13:13:36 +00:00
Marco Di Benedetto 82c6f3e0b8 First Commit. 2005-09-22 13:03:16 +00:00
Nico Pietroni 15405e5e3c Added DynamicSpatialHAshTable class 2005-09-21 14:22:49 +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 329b50d96e removed closest functions. Closest function is now on index\\Closest.h
Users must use trimesh\\closest.h to perform spatial query.
2005-09-21 09:22:51 +00:00
Nico Pietroni 5866d71f45 added maximum radius control on Closest Itarator function:
if (radius>=max_dist)
	end=true;

in Nextshell( ) function
2005-09-21 09:21:20 +00:00
Nico Pietroni 77d69c2aec first working version 2005-09-21 09:19:21 +00:00
Nico Pietroni 69b2d6596c added temporary mark for closest iteartor 2005-09-20 14:02:16 +00:00
Nico Pietroni e469fef8bd Modified MArk function parameter form ConstVertexPointer to VertexPointer 2005-09-20 13:58:55 +00:00
Nico Pietroni 68d1cfee4e Changed Closest Iterators template arguments functor
Corrected Bug in Ray Iterators Added Elems.clear() on Init method
2005-09-20 12:32:33 +00:00
Nico Pietroni f569a25540 added ray iterator of faces 2005-09-19 13:36:24 +00:00
Nico Pietroni 54c8562e3a use of standard grid interface
use of vector instead of map inside the cell
removed closest iterator
2005-09-19 13:35:45 +00:00
Nico Pietroni be78e8d97f first release version 2005-09-19 13:33:58 +00:00
Paolo Cignoni b4e997ae7a fixed bugs 2005-09-19 13:10:12 +00:00
Paolo Cignoni 1e7094c90d A lot of attempts in gcc compiling... 2005-09-16 12:03:11 +00:00
Paolo Cignoni edc816917a missing gcc typenames 2005-09-16 12:02:22 +00:00
Paolo Cignoni dc56fe4537 Removed two wrong typenames 2005-09-16 11:57:15 +00:00
Paolo Cignoni 40b2a1f36d removed wrong typename and added ending \n 2005-09-16 11:56:38 +00:00
Paolo Cignoni c2e01165d6 Small gcc compliling issues 2005-09-16 11:53:51 +00:00
Paolo Cignoni f8aafdd20d removed signed/unsigned warning 2005-09-16 11:51:23 +00:00
Marco Di Benedetto 316f8dba50 Modified interface for search compatibility and facilities. 2005-09-16 10:05:05 +00:00
Marco Di Benedetto 15ce3360ed Modified interface, added GetKClosest(). 2005-09-16 10:04:15 +00:00
Marco Di Benedetto f8ba5762e2 General interface redefinition, added special functors for faces. 2005-09-16 10:03:46 +00:00
Paolo Cignoni e6739a6a71 fixed bugs 2005-09-15 13:16:42 +00:00