Box3.h
Go to the documentation of this file.
39 explicit Box3(const BoundingBox3D& boundingBox, const Transform3& transform = Transform3(), bool isNormalFlipped = false);
Builder & WithUpperCorner(const Vector3D &pt)
Returns builder with upper corner set.
bool IntersectsLocal(const Ray3D &ray) const override
Builder & WithLowerCorner(const Vector3D &pt)
Returns builder with lower corner set.
Vector3D ClosestNormalLocal(const Vector3D &otherPoint) const override
Structure that represents ray-surface intersection point.
Definition: Surface3.h:23
BoundingBox3< double > BoundingBox3D
Double-type 3-D BoundingBox.
Definition: BoundingBox3.h:129
Definition: pybind11Utils.h:24
Box3Ptr MakeShared() const
Builds shared pointer of Box3 instance.
Transform3 transform
Local-to-world transform.
Definition: Surface3.h:36
bool isNormalFlipped
Flips normal when calling Surface3::closestNormal(...).
Definition: Surface3.h:39
BoundingBox3D BoundingBoxLocal() const override
Returns the bounding box of this surface object in local frame.
Builder & WithBoundingBox(const BoundingBox3D &bbox)
Returns builder with bounding box.
std::shared_ptr< Box3 > Box3Ptr
Shared pointer type for the Box3.
Definition: Box3.h:61
Box3(const Transform3 &transform=Transform3(), bool isNormalFlipped=false)
Constructs (0, 0, 0) x (1, 1, 1) box.
Vector3D ClosestPointLocal(const Vector3D &otherPoint) const override
SurfaceRayIntersection3 ClosestIntersectionLocal(const Ray3D &ray) const override
Returns the closest intersection point for given ray in local frame.