Commit Graph

422 Commits

Author SHA1 Message Date
Paolo Cignoni 8ecd4dc8f2 bug fix, add return type to Init 2006-09-27 08:49:32 +00:00
Paolo Cignoni ac4efc84ef initial commit 2006-09-21 18:10:05 +00:00
Paolo Cignoni b6bca3a60b initial commit 2006-09-19 16:28:41 +00:00
Federico Ponchio ac98066038 numeric_limits::(max)() -> numeric_limits::max() 2006-09-18 14:21:59 +00:00
ganovelli bb8cf89b85 added inclusion of sphere3 2006-09-14 08:46:00 +00:00
ganovelli 3f091b3013 changed t.P(*) in t.cP() nella funzione Barycenter 2006-09-14 08:44:07 +00:00
ganovelli cba93abba3 Intersection_sphere_sphere added 2006-09-14 08:39:07 +00:00
Paolo Cignoni cf6421124f casted returned value type to avoid warning C4267 2006-09-07 09:25:49 +00:00
Paolo Cignoni be5317d84c corrected bounds check in the cell scan in _IsInHTable 2006-08-31 13:26:17 +00:00
Paolo Cignoni 7fb7f4b401 ClosestIterator avoids to put the query point p into the result set 2006-08-31 13:19:59 +00:00
Nico Pietroni 1b117b6aba in GridDoRay function the RayIterator must be initialized with maximum distance 2006-08-29 15:38:36 +00:00
Massimiliano Corsini 57bcda4fd6 Fix invalid returning values 2006-08-29 12:57:14 +00:00
Massimiliano Corsini a4dec0385d Fix some bugs in color calculations
Add gamma correction
2006-08-24 16:51:06 +00:00
Paolo Cignoni 30c32f2445 added comments
corrected bad reference in void Grid( const Point3i & _c, CellIterator & first, CellIterator & last )
2006-08-23 15:23:05 +00:00
Paolo Cignoni f942fd8a4f *** empty log message *** 2006-08-23 15:22:14 +00:00
Paolo Cignoni ca680b6a32 added some comments 2006-08-23 15:21:35 +00:00
Paolo Cignoni fe330a06f7 corrected minor bugs 2006-08-23 15:20:14 +00:00
Paolo Cignoni ac9e757551 corrected bugs in ClosestIterator class : last element of Elems now is accessed with Elems.back()
corrected bug in ClosestIterator::Refresh() : when grid is called, *last have to be considered
corrected bug in ClosestIterator::End() : only coordinates strictly bigger than siz must be discarded
added several comments
2006-08-23 14:53:50 +00:00
Massimiliano Corsini 12e2b13e02 first working version 2006-08-02 13:51:53 +00:00
Nico Pietroni b2c789ae43 added InitEmpty Function 2006-07-26 08:12:56 +00:00
Paolo Cignoni 9aa38646ff static keyword only in declaration not in implementation 2006-07-12 12:13:23 +00:00
Paolo Cignoni a84cf9c8dd explicit cast in _IsInHtable() to resolve a warning 2006-07-10 12:43:13 +00:00
Paolo Cignoni 12e55110da minor changes in SphereOfTetra() 2006-07-10 10:38:16 +00:00
ganovelli d263bf8d27 tolto il tipo enumerato axis 2006-07-06 12:42:10 +00:00
ganovelli 5630a1e252 typdef ..ScalarType added 2006-07-06 12:40:34 +00:00
ganovelli d4f068e4e0 adde barycenter() 2006-07-06 12:39:51 +00:00
ganovelli 69ddd70cf4 draft version. For the triangle is not tehe smallest enclosing sphere and for the set of spheres works only for two spheres 2006-07-06 12:37:18 +00:00
ganovelli 94af0e518b Aggiunte funzioni che determinano il lato magiore (minore) 2006-06-29 13:22:04 +00:00
ganovelli d839bc9238 forgot & 2006-06-21 11:07:25 +00:00
ganovelli f533b8abeb changed return type of Zero() (to void) 2006-06-21 11:06:16 +00:00
Marco Di Benedetto 78f25ae2a1 Added const qualifier to P() method. 2006-06-09 07:26:37 +00:00
Paolo Cignoni 5f2db06c23 gcc 4 needs the extra template keyword 2006-06-08 08:52:02 +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 517c74f506 added missing header 2006-06-01 20:53:56 +00:00
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