-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SpatialPartitioning] Refactor KdTree into KdTreeDense + KdTreeSparse #129
Conversation
18827eb
to
5c8d218
Compare
eed0b9b
to
5b08bd4
Compare
c3ac7d5
to
518fed8
Compare
518fed8
to
ad58f2b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From a user perspective, the class KdTreeImpl
is frequently used to access types and take objects as inputs in functions/methods. In this context, the name KdTreeImpl
sounds here a bit weird, KdTreeBase
would make more sense.
Maybe we could update the names in the inheritance hierarchy, in order to help users understand the meaning of each class (especially the ones used downstream).
@azaleostu did you see this comment ? |
yes! so renaming the |
Seems to be more user friendly, yes. Are you fine with it ? |
3c23cc3
to
749fb53
Compare
749fb53
to
5a1a784
Compare
This PR moves the subsampling API of the kdtree into a separate type (
KdTreeSparse
). Having two separate types for regular kdtrees and subsampled kdtrees will make it easier to implement inverse sample mapping (i.e. mapping point indices to sample indices) which we need to allow constructing KNN graphs from subsampled kdtrees (see #114).Changes
KdTreeBase
class into aKdTreeImplBase
class containing common features and two derivedKdTreeDenseBase
andKdTreeSparseBase
classespointFromSample
andpointDataFromSample