Class disk¶
Defined in File disk.hxx
Inheritance Relationships¶
Base Type¶
public acme::entity
(Class entity)
Class Documentation¶
-
class acme::disk : public acme::entity¶
-
Disk class container.
Disk in 3D space and defined by a radius and a plane (disk center + normal vector).
Public Types
Public Functions
-
~disk(void) override = default¶
-
Disk class deconstructor.
-
disk(void)¶
-
Disk class constructor.
-
disk(real radius, plane const &plane)¶
-
Disk class constructor.
- Parameters
-
radius – Input disk radius
plane – Input disk laying plane
-
disk(real radius, point const ¢er, vec3 const &normal)¶
-
Disk class constructor.
- Parameters
-
radius – Input disk radius
center – Input disk center
normal – Input disk normal to the laying plane
-
disk(real radius, real center_x, real center_y, real center_z, real normal_x, real normal_y, real normal_z)¶
-
Disk class constructor.
- Parameters
-
radius – Input disk radius
center_x – Input disk center x value
center_y – Input disk center y value
center_z – Input disk center z value
normal_x – Input disk normal x value to the laying plane
normal_y – Input disk normal y value to the laying plane
normal_z – Input disk normal z value to the laying plane
-
bool isApprox(disk const &disk_in, real tolerance = EPSILON) const¶
-
Check if disks are (almost) equal.
- Parameters
-
disk_in – Input disk object
tolerance – Tolerance
-
void normalize(void)¶
-
Normalize disk normal vector.
-
void reverse(void)¶
-
Reverse disk normal vector.
-
virtual void translate(vec3 const &vector_in) override¶
-
Translate by vector.
- Parameters
-
vector_in – Input translation vector
-
virtual void transform(affine const &affine_in) override¶
-
Transform disk with affine transformation matrix.
- Parameters
-
affine_in – 4x4 affine transformation matrix
-
bool isInside(point const &point_in, real tolerance = EPSILON) const¶
-
Check whether the point is inside the disk.
- Parameters
-
point_in – Query point
tolerance – Tolerance
-
virtual bool isDegenerated(real tolerance = EPSILON) const override¶
-
Check if disk is degenerated.
- Parameters
-
tolerance – Tolerance
-
inline virtual std::string type(void) const override¶
-
Return object type as string.
-
inline virtual bool isNone(void) const override¶
-
Check whether the object is no entity.
-
inline virtual bool isPoint(void) const override¶
-
Check whether the object is a point.
-
inline virtual bool isLine(void) const override¶
-
Check whether the object is a line.
-
inline virtual bool isRay(void) const override¶
-
Check whether the object is a ray.
-
inline virtual bool isPlane(void) const override¶
-
Check whether the object is a plane.
-
inline virtual bool isSegment(void) const override¶
-
Check whether the object is a segment.
-
inline virtual bool isTriangle(void) const override¶
-
Check whether the object is a triangle.
-
inline virtual bool isDisk(void) const override¶
-
Check whether the object is a disk.
-
inline virtual bool isBall(void) const override¶
-
Check whether the object is a ball.
-
inline virtual bool isClampable(void) const override¶
-
Check whether in the disk is clampable.
-
inline virtual bool isNonClampable(void) const override¶
-
Check whether in the disk is non-clampable.
-
virtual bool clamp(vec3 &min, vec3 &max) const override¶
-
Get minumum and maximum values along axes.
- Parameters
-
min – Input minimum point
max – Input maximum point
-
virtual bool clamp(real &min_x, real &min_y, real &min_z, real &max_x, real &max_y, real &max_z) const override¶
-
Get minumum and maximum values along axes.
- Parameters
-
min_x – Input x value of minimum point
min_y – Input y value of minimum point
min_z – Input z value of minimum point
max_x – Input x value of maximum point
max_y – Input y value of maximum point
max_z – Input z value of maximum point
-
void rotate(real angle, vec3 const &axis)¶
-
Rotate entity by a rotation angle around an arbitrary axis.
- Parameters
-
angle – Input angle [rad]
axis – Input axis
-
inline bool isEntity(void) const¶
-
Check whether the object is an entity.
-
~disk(void) override = default¶