Infinite plane. A plane can be viewed as two half spaces; it has no priviledged direction. Note: prefer using a Halfspace instead of a Plane if possible, it has better behavior w.r.t. collision detection algorithms. More...
#include <geometric_shapes.h>
Public Member Functions | |
virtual Plane * | clone () const |
Clone *this into a new Plane. More... | |
void | computeLocalAABB () |
Compute AABB. More... | |
CoalScalar | distance (const Vec3s &p) const |
NODE_TYPE | getNodeType () const |
Get node type: a plane. More... | |
Plane & | operator= (const Plane &other) |
operator = More... | |
Plane () | |
Plane (CoalScalar a, CoalScalar b, CoalScalar c, CoalScalar d_) | |
Construct a plane with normal direction and offset. More... | |
Plane (const Plane &other) | |
Plane (const Vec3s &n_, CoalScalar d_) | |
Construct a plane with normal direction and offset. More... | |
CoalScalar | signedDistance (const Vec3s &p) const |
Public Member Functions inherited from coal::ShapeBase | |
OBJECT_TYPE | getObjectType () const |
Get object type: a geometric shape. More... | |
CoalScalar | getSweptSphereRadius () const |
Get radius of sphere swept around the shape. This radius is always >= 0. More... | |
ShapeBase & | operator= (const ShapeBase &other)=default |
void | setSweptSphereRadius (CoalScalar radius) |
Set radius of sphere swept around the shape. Must be >= 0. More... | |
ShapeBase () | |
ShapeBase (const ShapeBase &other) | |
More... | |
virtual | ~ShapeBase () |
Public Member Functions inherited from coal::CollisionGeometry | |
CollisionGeometry () | |
CollisionGeometry (const CollisionGeometry &other)=default | |
Copy constructor. More... | |
virtual Vec3s | computeCOM () const |
compute center of mass More... | |
virtual Matrix3s | computeMomentofInertia () const |
compute the inertia matrix, related to the origin More... | |
virtual Matrix3s | computeMomentofInertiaRelatedToCOM () const |
compute the inertia matrix, related to the com More... | |
virtual CoalScalar | computeVolume () const |
compute the volume More... | |
void * | getUserData () const |
get user data in geometry More... | |
bool | isFree () const |
whether the object is completely free More... | |
bool | isOccupied () const |
whether the object is completely occupied More... | |
bool | isUncertain () const |
whether the object has some uncertainty More... | |
bool | operator!= (const CollisionGeometry &other) const |
Difference operator. More... | |
bool | operator== (const CollisionGeometry &other) const |
Equality operator. More... | |
void | setUserData (void *data) |
set user data in geometry More... | |
virtual | ~CollisionGeometry () |
Public Attributes | |
CoalScalar | d |
Plane offset. More... | |
Vec3s | n |
Plane normal. More... | |
Public Attributes inherited from coal::CollisionGeometry | |
Vec3s | aabb_center |
AABB center in local coordinate. More... | |
AABB | aabb_local |
AABB in local coordinate, used for tight AABB when only translation transform. More... | |
CoalScalar | aabb_radius |
AABB radius. More... | |
CoalScalar | cost_density |
collision cost for unit volume More... | |
CoalScalar | threshold_free |
threshold for free (<= is free) More... | |
CoalScalar | threshold_occupied |
threshold for occupied ( >= is occupied) More... | |
void * | user_data |
pointer to user defined data specific to this object More... | |
Protected Member Functions | |
void | unitNormalTest () |
Turn non-unit normal into unit. More... | |
Private Member Functions | |
virtual bool | isEqual (const CollisionGeometry &_other) const |
equal operator with another object of derived type. More... | |
Additional Inherited Members | |
Protected Attributes inherited from coal::ShapeBase | |
CoalScalar | m_swept_sphere_radius {0} |
Radius of the sphere swept around the shape. Default value is 0. Note: this property differs from inflated method of certain derived classes (e.g. Box, Sphere, Ellipsoid, Capsule, Cone, Cylinder) in the sense that inflated returns a new shape which can be inflated but also deflated. Also, an inflated shape is not rounded. It simply has a different size. Sweeping a shape with a sphere is a different operation (a Minkowski sum), which rounds the sharp corners of a shape. The swept sphere radius is a property of the shape itself and can be manually updated between collision checks. More... | |
Infinite plane. A plane can be viewed as two half spaces; it has no priviledged direction. Note: prefer using a Halfspace instead of a Plane if possible, it has better behavior w.r.t. collision detection algorithms.
Definition at line 983 of file coal/shape/geometric_shapes.h.