These (incomplete) patches introduce a couple of improvements to jtsiomb/kdtree that wound up being necessary for use in IVPR/Weave.
Unwound recursion in insert_rec and clear_rec
Added new recursionless function kd_in_bounds for doing a rectangular search.
Added an optimization for cases where a point is exactly equal to another point.
Unwinding the recursion is necessary when the number of points is very large. I suggest using the user stack functions I added to also modify the original range query functions, as well as any necessary handling of the equal-point linked list.
These (incomplete) patches introduce a couple of improvements to jtsiomb/kdtree that wound up being necessary for use in IVPR/Weave.
insert_rec
andclear_rec
kd_in_bounds
for doing a rectangular search.Unwinding the recursion is necessary when the number of points is very large. I suggest using the user stack functions I added to also modify the original range query functions, as well as any necessary handling of the equal-point linked list.