-
Notifications
You must be signed in to change notification settings - Fork 35
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
Implement BIH tree #849
Implement BIH tree #849
Conversation
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.
Some comments before digging too deep into the BIH construction.
Converting to draft per our discussion
|
@sethrj this is ready for another look |
@sethrj this is ready for another look |
@elliottbiondo Can you separate the bbox changes into another PR? I can show you some tricks that can make the construction of an incremental PR easier. |
* Template BoundingBox class on real type * Fix bbox reading and add support for converting "max" to "infinity" * Define bounding box utilities (Split from #849)
@elliottbiondo I merged the bbox changes from upstream into this branch and will finish reviewing now. Thanks for your patience! |
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.
Looking good @elliottbiondo! Just a couple of comments.
@sethrj this should be good to go |
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.
I guess the last set of changes to Real3
etc. was in response to "use doubles while constructing and floats for storing"? I'm fine with that decision.
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.
Nice work @elliottbiondo !
@sethrj assuming the trailing return type is okay, this is ready |
This PR adds the ability to construct a bounding interval hierarchy (BIH) tree from volume bounding boxes. Bounding boxes are read from .json or populated during
VolumeInput
construction. These bounding boxes are stored onVolumeRecords
. When each universe is constructed (viaUnitInserter
), a BIH tree is created usingBIHMaker
class. A future PR will involve hooking this tree up toSimpleUnitTracker
, to speed up point-in-volume, and move-across-surface calls.