Surface3.h
Go to the documentation of this file.
virtual BoundingBox3D BoundingBoxLocal() const =0
Returns the bounding box of this surface object in local frame.
Vector3D ClosestNormal(const Vector3D &otherPoint) const
virtual void UpdateQueryEngine()
Updates internal spatial query engine.
virtual bool IntersectsLocal(const Ray3D &ray) const
DerivedBuilder & WithTransform(const Transform3 &transform)
Returns builder with transform.
Definition: Surface3.h:148
double ClosestDistance(const Vector3D &otherPoint) const
Surface3(const Transform3 &transform=Transform3(), bool isNormalFlipped=false)
Constructs a surface with normal direction.
virtual Vector3D ClosestPointLocal(const Vector3D &otherPoint) const =0
virtual Vector3D ClosestNormalLocal(const Vector3D &otherPoint) const =0
SurfaceRayIntersection3 ClosestIntersection(const Ray3D &ray) const
Returns the closest intersection point for given ray.
DerivedBuilder & WithIsNormalFlipped(bool isNormalFlipped)
Returns builder with flipped normal flag.
Definition: Surface3.h:127
Structure that represents ray-surface intersection point.
Definition: Surface3.h:23
Definition: pybind11Utils.h:24
Transform3 transform
Local-to-world transform.
Definition: Surface3.h:36
std::shared_ptr< Surface3 > Surface3Ptr
Shared pointer for the Surface3 type.
Definition: Surface3.h:100
bool Intersects(const Ray3D &ray) const
Returns true if the given ray intersects with this surface object.
bool isNormalFlipped
Flips normal when calling Surface3::closestNormal(...).
Definition: Surface3.h:39
DerivedBuilder & WithOrientation(const QuaternionD &orientation)
Returns builder with orientation.
Definition: Surface3.h:141
virtual double ClosestDistanceLocal(const Vector3D &otherPoint) const
BoundingBox3D BoundingBox() const
Returns the bounding box of this surface object.
Vector3D ClosestPoint(const Vector3D &otherPoint) const
Returns the closest point from the given point otherPoint to the surface.
DerivedBuilder & WithTranslation(const Vector3D &translation)
Returns builder with translation.
Definition: Surface3.h:134
virtual SurfaceRayIntersection3 ClosestIntersectionLocal(const Ray3D &ray) const =0
Returns the closest intersection point for given ray in local frame.