Commit Graph

388 Commits

Author SHA1 Message Date
Nico Pietroni 26b64e4246 fixed bug in Ray Iterator .. function Init 2006-06-01 08:41:26 +00:00
Nico Pietroni 3e649c465e added PointDistance function 2006-06-01 08:38:58 +00:00
Nico Pietroni f949a83faf Added functions:
- Intersection_Segment_Triangle
- Intersection_Plane_Box
- Intersection_Triangle_Box
2006-06-01 08:38:02 +00:00
Nico Pietroni f9d3653ae5 corrected bug in GridGetInBox function 2006-05-17 12:48:52 +00:00
Paolo Cignoni c5f4a75533 small GCC compiling issues 2006-04-20 08:30:27 +00:00
Paolo Cignoni 1f4a4221e3 changes necessary for gcc 3.4.5 on linux 64bit. 2006-04-11 08:10:05 +00:00
Paolo Cignoni a1d3e8a371 Missing ';' (thx Maarten) 2006-03-29 07:53:36 +00:00
Nico Pietroni b2879b7333 IntersectionSegmentPlane and Intersection_Segment_Box functions Added 2006-03-20 14:42:49 +00:00
Nico Pietroni 0c0e9044cf compiled and corrected ClosestPoint function 2006-03-07 16:39:38 +00:00
Nico Pietroni 5dee0e155b added InterpolationParameters function 2006-03-01 15:59:34 +00:00
Nico Pietroni dc14636c2c compiled InterspolationParameters function 2006-03-01 15:35:09 +00:00
Nico Pietroni 165db89ccf added typenames declaration in rayIterator 2006-02-08 17:04:10 +00:00
Massimiliano Corsini 3b049ec0e4 fix signed/unsigned mismatch 2006-01-27 09:58:47 +00:00
Federico Ponchio 88614c2f37 gcc compatibility (templates mostly)
bbox -> this->bbox
More consistent use of Box3x and such.
2006-01-23 21:26:57 +00:00
Federico Ponchio 52c3f0e4d4 P1 --> HASH_P1
Old definition was conflicting with functions in segment.h
2006-01-23 15:26:31 +00:00
Federico Ponchio efbad3a4fd Uncommented #include <..../intersection3.h>
for Intersection_Ray_Box...
2006-01-23 11:41:03 +00:00
Paolo Cignoni 92c21e838d Very Important Change: Area->DoubleArea (and no more Area function) 2006-01-22 10:00:56 +00:00
Nico Pietroni 31512102ed added Intersection_Segment_Box function 2006-01-20 16:35:51 +00:00
Marco Di Benedetto 3fc1eb7c2c Corrected Pass-Through bits and added visit flag. 2006-01-19 13:54:49 +00:00
Marco Di Benedetto fc85374c3c Fixed product by scalar and SquaredNorm() 2006-01-19 13:53:19 +00:00
Paolo Cignoni 36e37b0a6c fix some bugs. 2006-01-03 12:44:58 +00:00
Nico Pietroni 2fd6045afa added #include<limits> 2005-12-14 17:03:13 +00:00
ganovelli b7e6720706 compiled with gcc 2005-12-12 11:22:32 +00:00
ganovelli f73fa19346 modifications to compile with gcc 2005-12-12 11:15:26 +00:00
Nico Pietroni aa0575519c added deleted objects control for GridClosest() function call 2005-12-06 18:00:39 +00:00
Paolo Cignoni db9a497910 Forgotten a base deferencing like the previous one
Note also the different possible sintax with this-> instead of the base class name
2005-12-02 00:43:31 +00:00
Paolo Cignoni 03007bab77 Corrected typename usage and removed excess ';' from end of template functions, for gcc compiling 2005-12-02 00:30:27 +00:00
Paolo Cignoni 02e28cc9e5 updated the templates of BasicGrid 2005-12-02 00:29:00 +00:00
Paolo Cignoni 15e94d470a removed excess typenames 2005-12-02 00:27:22 +00:00
Paolo Cignoni 6a70c599b2 Added and removed typenames for gcc compiling.
Added base class qualifier for referencing the elemntes of the templated base class (BasicGrid)
it seems to be needed by the standard
2005-12-02 00:25:13 +00:00
Paolo Cignoni 703e2d7dce Added typenames, ending cr and removed a MAXFLT disliked by gcc 2005-12-02 00:20:32 +00:00
Marco Di Benedetto 9cb3bc6dbb Added std:: namespace for max() and min(). 2005-11-30 16:01:25 +00:00
Marco Di Benedetto 0b08afa4f8 Added (int) cast to std::distance to prevent compiler warning message. 2005-11-30 10:32:44 +00:00
Marco Di Benedetto f229a9e9e6 Added methods to flag visibility. 2005-11-30 09:57:13 +00:00
Paolo Cignoni 5a7a294202 Added missing < operator 2005-11-30 08:38:01 +00:00
Nico Pietroni 5daefc19ce added IsInside() function 2005-11-29 16:20:33 +00:00
Nico Pietroni 5397953b4b 1 warning corrected 2005-11-23 15:55:35 +00:00
Paolo Cignoni cb35ae54ca Corrected small error in the ifdefs about USE_EPSILON_TEST and USE_TRI_TRI_INT_EPSILON_TEST 2005-11-16 16:04:40 +00:00
Paolo Cignoni 5a906c4a50 Added casts to remove warnings 2005-11-10 15:44:17 +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
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
Federico Ponchio cf9d5743fb Added newline at end of file (tired of stupid warnings...) 2005-10-24 09:20:28 +00:00
Marco Di Benedetto 7d23e4284b Fixed bug in Refresh() ray iterator (Elems.size() > 0). 2005-10-17 08:59:26 +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
Federico Ponchio f5a490079f Typename... as usual 2005-10-15 12:58:13 +00:00
ganovelli b47b530549 versione con svd 2005-10-13 14:59:57 +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
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 08a49f7305 Minor changes in Set method: added use of template scalar type computing BBox. 2005-10-07 13:27:22 +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
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
Federico Ponchio e9583c5020 Changed order of functions intersection_line_box and
intersectuion_ray_box
2005-10-03 16:07:50 +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 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 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
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
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 c553959046 First Commit. 2005-09-28 17:19:28 +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 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 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 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 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
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
Nico Pietroni 417bf69fc3 minor changes 2005-09-15 11:15:00 +00:00
Marco Di Benedetto 8d8eed9f02 Added specialized Convert() for the same scalar type. 2005-09-14 14:09:21 +00:00
Paolo Cignoni 05a23b3e5f minor changes 2005-09-14 13:27:38 +00:00
Nico Pietroni 92665798d1 canged template parameters for Closest Function (use of TempMark class) 2005-09-14 12:57:52 +00:00
Nico Pietroni caf5812fec added * operator to Link
modified getClosest in order to use Temporary mark
corrected bug on functor calling compilation
2005-09-14 09:05:32 +00:00
Marco Di Benedetto f170dc4a13 First Commit 2005-09-11 11:46:43 +00:00
Marco Di Benedetto 574063e052 First Commit 2005-09-10 13:22:44 +00:00
Marco Di Benedetto ff6ba606df Modified old GetClosest() to respect old min_dist semantic (in/out) and removed #included <limits> 2005-09-09 11:29:21 +00:00
Marco Di Benedetto f36832fbde #included <limits> for std::numeric_limits<ScalarType>::max() and corrected parameters bug in old GetClosest(); 2005-09-09 11:11:15 +00:00
Marco Di Benedetto 7aa52d9530 Modified GetClosest(): now it uses a functor for distance calculation.
Added comments and a GetClosest() method with backward compatibility.
2005-09-09 11:01:02 +00:00
Paolo Cignoni 3259439f67 Added a templated version of SetBBox 2005-08-26 09:27:58 +00:00
Nico Pietroni 66921c752b exetended form BasicGrid, changed type of t in class Link (from Iterator to Pointer to the object) 2005-08-02 11:18:36 +00:00
Nico Pietroni 7bc4ef59fd added IPToP and IBoxToBox functions, modified BoxToIBox function in order to use PToIP function 2005-08-02 11:01:05 +00:00
Paolo Cignoni a96663b39e First working version 2005-07-28 08:41:00 +00:00
Paolo Cignoni 875b913314 corrected error in GridP (did not compile) 2005-07-28 06:11:12 +00:00
Paolo Cignoni b537c21b4c Added a class BasicGrid with some utility function that are scattered among similar classes 2005-07-01 11:33:36 +00:00
Marco Callieri 1b05420d2a changed intersection names to more specific to avoid ambiguity 2005-06-29 15:28:31 +00:00
Federico Ponchio fe7fe4380d Fixed "lerp" function. 2005-06-24 12:21:48 +00:00
Nico Pietroni 1f72e96683 minor changes 2005-06-15 11:44:47 +00:00
Federico Ponchio 60036b0e6e Minibug: Box2f -> Box2 in the template. 2005-06-14 13:46:20 +00:00
Nico Pietroni cd855e4e57 resolved hash code conflicts 2005-06-01 13:47:59 +00:00
Paolo Cignoni 6b4cb4a4b5 cambiato parentesi nel costruttore di GetUV per rendere compatibile tale costruttore con MVC e borland 2005-05-06 14:45:33 +00:00
Paolo Cignoni f9e9301f30 replaced all the occurences of min.v[0] with min.X(), max.v[0] with max.X() etc. 2005-05-06 14:02:37 +00:00
Paolo Cignoni d775371a3a Corretto accessi vecchio stile (.v[i] e .x()) nel nuovo stile ([i] e .X() ) 2005-05-05 12:22:08 +00:00
Paolo Cignoni 58bc2efa18 changed #include <vcg/space/point3> to #include <vcg/space/point2.h>
croccia
2005-05-05 10:20:24 +00:00
Marco Callieri 43f4cfe2b3 line 466, added parentesis on default value creator getUV [borland] 2005-04-27 16:05:19 +00:00
Federico Ponchio f766cf6773 *** empty log message *** 2005-04-14 17:23:08 +00:00
Federico Ponchio 2328e5b1e4 *** empty log message *** 2005-04-14 11:35:09 +00:00
Federico Ponchio b3e2bf3ba7 Including math/bash.h 2005-04-13 09:40:30 +00:00
Nico Pietroni 061c49ab5e corrected 1 bug in distance function (use of templated coords type) 2005-03-23 17:32:01 +00:00