Bounding Volumes
ImplicitBVH.BBox
— Typestruct BBox{T}
Axis-aligned bounding box, highly optimised for computing bounding volumes for triangles and merging into larger bounding volumes.
Can also be constructed from two spheres to e.g. allow merging BSphere
leaves into BBox
nodes.
Methods
# Convenience constructors
+Bounding Volumes · ImplicitBVH.jl Bounding Volumes
ImplicitBVH.BBox
— Typestruct BBox{T}
Axis-aligned bounding box, highly optimised for computing bounding volumes for triangles and merging into larger bounding volumes.
Can also be constructed from two spheres to e.g. allow merging BSphere
leaves into BBox
nodes.
Methods
# Convenience constructors
BBox(lo::NTuple{3, T}, up::NTuple{3, T}) where T
BBox{T}(lo::AbstractVector, up::AbstractVector) where T
BBox(lo::AbstractVector, up::AbstractVector)
@@ -21,7 +21,7 @@
BBox{T}(a::BSphere{T}) where T
BBox(a::BSphere{T}) where T
BBox{T}(a::BSphere{T}, b::BSphere{T}) where T
-BBox(a::BSphere{T}, b::BSphere{T}) where T
sourceImplicitBVH.BSphere
— Typestruct BSphere{T}
Bounding sphere, highly optimised for computing bounding volumes for triangles and merging into larger bounding volumes.
Methods
# Convenience constructors
+BBox(a::BSphere{T}, b::BSphere{T}) where T
sourceImplicitBVH.BSphere
— Typestruct BSphere{T}
Bounding sphere, highly optimised for computing bounding volumes for triangles and merging into larger bounding volumes.
Methods
# Convenience constructors
BSphere(x::NTuple{3, T}, r)
BSphere{T}(x::AbstractVector, r) where T
BSphere(x::AbstractVector, r)
@@ -37,9 +37,9 @@
# Merging bounding volumes
BSphere{T}(a::BSphere, b::BSphere) where T
BSphere(a::BSphere{T}, b::BSphere{T}) where T
-Base.:+(a::BSphere, b::BSphere)
sourceQuery Functions
ImplicitBVH.iscontact
— Functioniscontact(a::BSphere, b::BSphere)
+Base.:+(a::BSphere, b::BSphere)
sourceQuery Functions
ImplicitBVH.iscontact
— Functioniscontact(a::BSphere, b::BSphere)
iscontact(a::BBox, b::BBox)
iscontact(a::BSphere, b::BBox)
-iscontact(a::BBox, b::BSphere)
Check if two bounding volumes are touching or inter-penetrating.
sourceImplicitBVH.center
— Functioncenter(b::BSphere)
-center(b::BBox{T}) where T
Get the coordinates of a bounding volume's centre, as a NTuple{3, T}.
sourceMiscellaneous
ImplicitBVH.translate
— Functiontranslate(b::BSphere{T}, dx) where T
-translate(b::BBox{T}, dx) where T
Get a new bounding volume translated by dx; dx can be any iterable with 3 elements.
sourceSettings
This document was generated with Documenter.jl version 1.7.0 on Wednesday 30 October 2024. Using Julia version 1.11.1.
+iscontact(a::BBox, b::BSphere)
Check if two bounding volumes are touching or inter-penetrating.
ImplicitBVH.center
— Functioncenter(b::BSphere)
+center(b::BBox{T}) where T
Get the coordinates of a bounding volume's centre, as a NTuple{3, T}.
Miscellaneous
ImplicitBVH.translate
— Functiontranslate(b::BSphere{T}, dx) where T
+translate(b::BBox{T}, dx) where T
Get a new bounding volume translated by dx; dx can be any iterable with 3 elements.