ganovelli
573c151241
bug on search cycle corrected (it was looping forever with vertices and twice slower with other elements)
2009-01-29 11:27:32 +00:00
Paolo Cignoni
713a6b6155
Passed const bbox parameter by reference in the getBBox
2009-01-19 23:12:11 +00:00
Paolo Cignoni
266ddc1a42
added a const operator to the spatial hashing iterator
2009-01-19 23:10:43 +00:00
ganovelli
af76e5fde8
added keyword "public" for deriving SpatialHashTable from SpatialIndex
2009-01-16 17:01:17 +00:00
Massimiliano Corsini
b810569a61
use point<ScalarType> instead of Point3d in Grid(.)
2009-01-15 15:31:22 +00:00
Massimiliano Corsini
a7c15f807d
add index-to-box conversion
2009-01-15 15:30:07 +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
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
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
cb22994ef5
Restored TMARKER as a copied, not referenced, class
2008-11-03 16:21:52 +00:00
Paolo Cignoni
dfc6417426
Changed IPToP calls into IPiToPf, Markers passed by reference
2008-10-31 10:40:06 +00:00
Paolo Cignoni
49c72bc54e
Disambiguated some grid utility names (IPtoTP into IPfToPf and IPiToPf) in order to avoid ambiguities (due to automatic cast?)
2008-10-30 09:01:03 +00:00
Paolo Cignoni
4db69febbe
big replacement .Zero => .SetZero, and start of Eigen's compatibilities (currently disabled by default)
2008-10-27 14:48:14 +00:00
Paolo Cignoni
57fe4376a2
fix a few warnings
2008-10-24 12:45:02 +00:00
Paolo Cignoni
9fc4f7d36f
added a missing const to grid Create
2008-10-07 06:56:26 +00:00
ganovelli
7defccba1b
getclosest update for \the new definition of distance functor
2008-09-30 11:01:09 +00:00
ganovelli
41bc27e33e
Changed the type of query type. Made it dependend on distance functor
2008-09-24 09:28:53 +00:00
ganovelli
68d900ec7e
changes to compile previous commit with gcc
2008-09-24 09:15:38 +00:00
ganovelli
6a649ee257
changes to comply the templatization of distance functor on the query type
2008-09-24 08:45:31 +00:00
ganovelli
3712ddfd50
- Change to avoid dangerous iterators decrement in RayITerator: reverse iterator used (same as in ClosestIterator)
...
-removed some old commented code
2008-07-29 16:05:29 +00:00
Paolo Cignoni
2dc0c1e1dc
Fixed compilation bug under Visual Studio 2005
2008-07-29 13:01:10 +00:00
Paolo Cignoni
1407af2537
removed harmless warnings
2008-07-09 10:31:55 +00:00
Paolo Cignoni
711c985689
update to the new single template BasicGrid
2008-07-01 12:37:27 +00:00
Paolo Cignoni
fa2c3fa060
updated the spatial indexing class to the new basicgrid class that has only one template parameter
2008-07-01 09:33:47 +00:00
Paolo Cignoni
4e227776f3
Removed one useless template parameter from the BasicGrid class and added a couple of useful accessory functions
2008-07-01 09:32:48 +00:00
Paolo Cignoni
66ee02eb49
__int64 is a MS only type. Added portability defines at the beginning.
2008-02-20 11:31:13 +00:00
Marco Callieri
3716a8c6df
in BestDim(...) changed int -> _int64 to cope with programs with a very large cell number (like plyMC)
2008-02-19 12:43:01 +00:00
ganovelli
2dea5562fe
typo corrected
2008-02-04 19:18:44 +00:00
Federico Ponchio
68032b71dd
Added method Gather:
...
Using a cubic voxel of side <radius> (see Set with radius)
allows you to process all pairs of objects within radius distance.
Usefull to compute normals, weighted means etc.
Speedup is about 7x.
2007-07-16 16:59:26 +00:00
Paolo Cignoni
8bfd6c40e0
Splitted initialiazation functions of grid to add flexibility in the creation
2007-07-16 15:13:39 +00:00
Paolo Cignoni
220baf92c7
Corrected gcc compiling issues
2007-07-02 04:25:32 +00:00
Paolo Cignoni
ca8780af81
casting (size_t) to (int) to avoid annoying warning
2007-06-06 10:33:36 +00:00
Paolo Cignoni
9fee0bfaaa
Corrected wrong deallocation when octree was destroyed after being never used.
2007-05-10 10:48:49 +00:00
ganovelli
ec652a6d99
added cast to avoid warning
2007-05-04 16:17:24 +00:00
Nico Pietroni
c466753fe5
corrected test with max distance in ray Iterator
2007-03-26 08:12:30 +00:00
Nico Pietroni
00cc5e3f15
line 375, corrected 1 error concerning intersection with bounding of the grid
2007-03-08 17:05:50 +00:00
ganovelli
116707257a
modif in ClosestIterator to include the last shell Si.siz [X|Y|X]. Tested with minialign and point based animation
2007-02-20 16:22:50 +00:00
Paolo Cignoni
c4b0073433
Initial commit. Only the Set and GetInSphere methods of the SpatialIndex interface are implemented.
2007-02-18 22:43:10 +00:00
Paolo Cignoni
fb51d1f3f9
end() replaced by pointer lastPlusOne
2006-12-06 17:47:50 +00:00
Nico Pietroni
f2706529cf
changed 1 wrong comment RayIterator---- Refresh .. was the opposite
2006-12-06 12:53:14 +00:00
Nico Pietroni
478e2ad4cd
corrected 1 bug in operator ++ of closest iterator
2006-10-26 08:28:50 +00:00
Nico Pietroni
a8b6014a73
corrected bug in closest iterator.. if doesn't find any alement at first cells examinated continue until find some element
2006-10-25 15:59:29 +00:00
Paolo Cignoni
fe32dbea36
just few rearrangements...
2006-10-25 12:46:07 +00:00
Nico Pietroni
5799203aaf
added max dist control and constructor
2006-10-25 09:47:53 +00:00
Paolo Cignoni
4b4dd13689
Minor bug fixed
2006-10-19 13:32:23 +00:00
Paolo Cignoni
9031924a14
Added some templatedoctree to compile under 2003
2006-10-18 15:11:26 +00:00
Federico Ponchio
6eb4a5b293
Working on mingw now.
2006-10-18 08:32:03 +00:00
Paolo Cignoni
5e4f12f28a
minor changes to comply gcc compiler
2006-10-16 16:10:22 +00:00
Paolo Cignoni
51efef83bf
Conformed with the base interface
2006-10-12 11:02:57 +00:00
Paolo Cignoni
60d1fa3ccd
Re-added diff 1.12 by Pietroni (cancelled by previous rollback):
...
in GridDoRay function the RayIterator must be initialized with maximum distance
2006-10-02 09:34:03 +00:00
Paolo Cignoni
9f8cbf3f08
Reverted to version 1.10 to nullify dangerous marfr960's changes
2006-10-02 09:28:45 +00:00
ganovelli
8f509dd74d
reverted to version 1.20 for critical bug
2006-10-02 09:25:49 +00:00
Paolo Cignoni
59d7770ebb
Reverted to version 1.14 to nullify dangerous marfr960's changes
2006-10-02 07:47:57 +00:00
Paolo Cignoni
9cf176a0ff
Added methods GetClosest, GetInSphere and GetInBox.
...
Changed signature of Set method to comply with the SpatialIndex interface
2006-09-28 22:49:15 +00:00
Paolo Cignoni
7a82eb0b6e
fix some bugs
2006-09-28 09:55:28 +00:00
Paolo Cignoni
8ecd4dc8f2
bug fix, add return type to Init
2006-09-27 08:49:32 +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
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
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
Nico Pietroni
b2c789ae43
added InitEmpty Function
2006-07-26 08:12:56 +00:00
Paolo Cignoni
a84cf9c8dd
explicit cast in _IsInHtable() to resolve a warning
2006-07-10 12:43:13 +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
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
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
Marco Di Benedetto
3fc1eb7c2c
Corrected Pass-Through bits and added visit flag.
2006-01-19 13:54:49 +00:00
Nico Pietroni
2fd6045afa
added #include<limits>
2005-12-14 17:03:13 +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
Nico Pietroni
5397953b4b
1 warning corrected
2005-11-23 15:55:35 +00:00
Paolo Cignoni
5a906c4a50
Added casts to remove warnings
2005-11-10 15:44:17 +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
Marco Di Benedetto
7d23e4284b
Fixed bug in Refresh() ray iterator (Elems.size() > 0).
2005-10-17 08:59:26 +00:00