3-D cylinder geometry. More...
#include <Core/Geometry/Cylinder3.h>
Classes | |
class | Builder |
Front-end to create Cylinder3 objects step by step. More... | |
Public Member Functions | |
Cylinder3 (const Transform3 &transform=Transform3(), bool isNormalFlipped=false) | |
Constructs a cylinder with. More... | |
Cylinder3 (const Vector3D ¢er, double radius, double height, const Transform3 &transform=Transform3(), bool isNormalFlipped=false) | |
Constructs a cylinder with center , radius , and height . More... | |
Cylinder3 (const Cylinder3 &other) | |
Copy constructor. More... | |
Public Member Functions inherited from CubbyFlow::Surface3 | |
Surface3 (const Transform3 &transform=Transform3(), bool isNormalFlipped=false) | |
Constructs a surface with normal direction. More... | |
Surface3 (const Surface3 &other) | |
Copy constructor. More... | |
virtual | ~Surface3 () |
Default destructor. More... | |
Vector3D | ClosestPoint (const Vector3D &otherPoint) const |
Returns the closest point from the given point otherPoint to the surface. More... | |
BoundingBox3D | BoundingBox () const |
Returns the bounding box of this surface object. More... | |
bool | Intersects (const Ray3D &ray) const |
Returns true if the given ray intersects with this surface object. More... | |
double | ClosestDistance (const Vector3D &otherPoint) const |
SurfaceRayIntersection3 | ClosestIntersection (const Ray3D &ray) const |
Returns the closest intersection point for given ray . More... | |
Vector3D | ClosestNormal (const Vector3D &otherPoint) const |
virtual void | UpdateQueryEngine () |
Updates internal spatial query engine. More... | |
Static Public Member Functions | |
static Builder | GetBuilder () |
Returns builder fox Cylinder3. More... | |
Public Attributes | |
Vector3D | center |
Center of the cylinder. More... | |
double | radius = 1.0 |
Radius of the cylinder. More... | |
double | height = 1.0 |
Height of the cylinder. More... | |
Public Attributes inherited from CubbyFlow::Surface3 | |
Transform3 | transform |
Local-to-world transform. More... | |
bool | isNormalFlipped = false |
Flips normal when calling Surface3::closestNormal(...). More... | |
Protected Member Functions | |
Vector3D | ClosestPointLocal (const Vector3D &otherPoint) const override |
double | ClosestDistanceLocal (const Vector3D &otherPoint) const override |
bool | IntersectsLocal (const Ray3D &ray) const override |
BoundingBox3D | BoundingBoxLocal () const override |
Returns the bounding box of this surface object in local frame. More... | |
Vector3D | ClosestNormalLocal (const Vector3D &otherPoint) const override |
SurfaceRayIntersection3 | ClosestIntersectionLocal (const Ray3D &ray) const override |
Returns the closest intersection point for given ray in local frame. More... | |
Detailed Description
3-D cylinder geometry.
This class represents 3-D cylinder geometry which extends Surface3 by overriding surface-related queries. The cylinder is aligned with the y-axis.
Constructor & Destructor Documentation
◆ Cylinder3() [1/3]
CubbyFlow::Cylinder3::Cylinder3 | ( | const Transform3 & | transform = Transform3() , |
bool | isNormalFlipped = false |
||
) |
Constructs a cylinder with.
◆ Cylinder3() [2/3]
CubbyFlow::Cylinder3::Cylinder3 | ( | const Vector3D & | center, |
double | radius, | ||
double | height, | ||
const Transform3 & | transform = Transform3() , |
||
bool | isNormalFlipped = false |
||
) |
Constructs a cylinder with center
, radius
, and height
.
◆ Cylinder3() [3/3]
CubbyFlow::Cylinder3::Cylinder3 | ( | const Cylinder3 & | other | ) |
Copy constructor.
Member Function Documentation
◆ BoundingBoxLocal()
|
overrideprotectedvirtual |
Returns the bounding box of this surface object in local frame.
Implements CubbyFlow::Surface3.
◆ ClosestDistanceLocal()
|
overrideprotectedvirtual |
Returns the closest distance from the given point otherPoint
to the point on the surface in local frame.
Reimplemented from CubbyFlow::Surface3.
◆ ClosestIntersectionLocal()
|
overrideprotectedvirtual |
Returns the closest intersection point for given ray
in local frame.
Implements CubbyFlow::Surface3.
◆ ClosestNormalLocal()
|
overrideprotectedvirtual |
Returns the normal to the closest point on the surface from the given point otherPoint
in local frame.
Implements CubbyFlow::Surface3.
◆ ClosestPointLocal()
|
overrideprotectedvirtual |
Returns the closest point from the given point otherPoint
to the surface in local frame.
Implements CubbyFlow::Surface3.
◆ GetBuilder()
◆ IntersectsLocal()
|
overrideprotectedvirtual |
Returns true if the given ray
intersects with this surface object in local frame.
Reimplemented from CubbyFlow::Surface3.
Member Data Documentation
◆ center
Vector3D CubbyFlow::Cylinder3::center |
Center of the cylinder.
◆ height
double CubbyFlow::Cylinder3::height = 1.0 |
Height of the cylinder.
◆ radius
double CubbyFlow::Cylinder3::radius = 1.0 |
Radius of the cylinder.
The documentation for this class was generated from the following file:
- Core/Geometry/Cylinder3.h