|
| coal::ShapeBase::ShapeBase () |
|
| coal::ShapeBase::ShapeBase (const ShapeBase &other) |
| More...
|
|
ShapeBase & | coal::ShapeBase::operator= (const ShapeBase &other)=default |
|
virtual | coal::ShapeBase::~ShapeBase () |
|
OBJECT_TYPE | coal::ShapeBase::getObjectType () const |
| Get object type: a geometric shape. More...
|
|
void | coal::ShapeBase::setSweptSphereRadius (Scalar radius) |
| Set radius of sphere swept around the shape. Must be >= 0. More...
|
|
Scalar | coal::ShapeBase::getSweptSphereRadius () const |
| Get radius of sphere swept around the shape. This radius is always >= 0. More...
|
|
| coal::TriangleP::TriangleP () |
|
| coal::TriangleP::TriangleP (const Vec3s &a_, const Vec3s &b_, const Vec3s &c_) |
|
| coal::TriangleP::TriangleP (const TriangleP &other) |
|
virtual TriangleP * | coal::TriangleP::clone () const |
| Clone *this into a new TriangleP. More...
|
|
void | coal::TriangleP::computeLocalAABB () |
| virtual function of compute AABB in local coordinate More...
|
|
NODE_TYPE | coal::TriangleP::getNodeType () const |
| get the node type More...
|
|
| coal::Box::Box (Scalar x, Scalar y, Scalar z) |
|
| coal::Box::Box (const Vec3s &side_) |
|
| coal::Box::Box (const Box &other) |
|
Box & | coal::Box::operator= (const Box &other) |
|
virtual Box * | coal::Box::clone () const |
| Clone *this into a new Box. More...
|
|
| coal::Box::Box () |
| Default constructor. More...
|
|
void | coal::Box::computeLocalAABB () |
| Compute AABB. More...
|
|
NODE_TYPE | coal::Box::getNodeType () const |
| Get node type: a box. More...
|
|
Scalar | coal::Box::computeVolume () const |
| compute the volume More...
|
|
Matrix3s | coal::Box::computeMomentofInertia () const |
| compute the inertia matrix, related to the origin More...
|
|
Scalar | coal::Box::minInflationValue () const |
|
std::pair< Box, Transform3s > | coal::Box::inflated (const Scalar value) const |
| Inflate the box by an amount given by value . This value can be positive or negative but must always >= minInflationValue() . More...
|
|
| coal::Sphere::Sphere () |
| Default constructor. More...
|
|
| coal::Sphere::Sphere (Scalar radius_) |
|
| coal::Sphere::Sphere (const Sphere &other) |
|
virtual Sphere * | coal::Sphere::clone () const |
| Clone *this into a new Sphere. More...
|
|
void | coal::Sphere::computeLocalAABB () |
| Compute AABB. More...
|
|
NODE_TYPE | coal::Sphere::getNodeType () const |
| Get node type: a sphere. More...
|
|
Matrix3s | coal::Sphere::computeMomentofInertia () const |
| compute the inertia matrix, related to the origin More...
|
|
Scalar | coal::Sphere::computeVolume () const |
| compute the volume More...
|
|
Scalar | coal::Sphere::minInflationValue () const |
|
std::pair< Sphere, Transform3s > | coal::Sphere::inflated (const Scalar value) const |
| Inflate the sphere by an amount given by value . This value can be positive or negative but must always >= minInflationValue() . More...
|
|
| coal::Ellipsoid::Ellipsoid () |
| Default constructor. More...
|
|
| coal::Ellipsoid::Ellipsoid (Scalar rx, Scalar ry, Scalar rz) |
|
| coal::Ellipsoid::Ellipsoid (const Vec3s &radii) |
|
| coal::Ellipsoid::Ellipsoid (const Ellipsoid &other) |
|
virtual Ellipsoid * | coal::Ellipsoid::clone () const |
| Clone *this into a new Ellipsoid. More...
|
|
void | coal::Ellipsoid::computeLocalAABB () |
| Compute AABB. More...
|
|
NODE_TYPE | coal::Ellipsoid::getNodeType () const |
| Get node type: an ellipsoid. More...
|
|
Matrix3s | coal::Ellipsoid::computeMomentofInertia () const |
| compute the inertia matrix, related to the origin More...
|
|
Scalar | coal::Ellipsoid::computeVolume () const |
| compute the volume More...
|
|
Scalar | coal::Ellipsoid::minInflationValue () const |
|
std::pair< Ellipsoid, Transform3s > | coal::Ellipsoid::inflated (const Scalar value) const |
| Inflate the ellipsoid by an amount given by value . This value can be positive or negative but must always >= minInflationValue() . More...
|
|
| coal::Capsule::Capsule () |
| Default constructor. More...
|
|
| coal::Capsule::Capsule (Scalar radius_, Scalar lz_) |
|
| coal::Capsule::Capsule (const Capsule &other) |
|
virtual Capsule * | coal::Capsule::clone () const |
| Clone *this into a new Capsule. More...
|
|
void | coal::Capsule::computeLocalAABB () |
| Compute AABB. More...
|
|
NODE_TYPE | coal::Capsule::getNodeType () const |
| Get node type: a capsule. More...
|
|
Scalar | coal::Capsule::computeVolume () const |
| compute the volume More...
|
|
Matrix3s | coal::Capsule::computeMomentofInertia () const |
| compute the inertia matrix, related to the origin More...
|
|
Scalar | coal::Capsule::minInflationValue () const |
|
std::pair< Capsule, Transform3s > | coal::Capsule::inflated (const Scalar value) const |
| Inflate the capsule by an amount given by value . This value can be positive or negative but must always >= minInflationValue() . More...
|
|
| coal::Cone::Cone () |
| Default constructor. More...
|
|
| coal::Cone::Cone (Scalar radius_, Scalar lz_) |
|
| coal::Cone::Cone (const Cone &other) |
|
virtual Cone * | coal::Cone::clone () const |
| Clone *this into a new Cone. More...
|
|
void | coal::Cone::computeLocalAABB () |
| Compute AABB. More...
|
|
NODE_TYPE | coal::Cone::getNodeType () const |
| Get node type: a cone. More...
|
|
Scalar | coal::Cone::computeVolume () const |
| compute the volume More...
|
|
Matrix3s | coal::Cone::computeMomentofInertia () const |
| compute the inertia matrix, related to the origin More...
|
|
Vec3s | coal::Cone::computeCOM () const |
| compute center of mass More...
|
|
Scalar | coal::Cone::minInflationValue () const |
|
std::pair< Cone, Transform3s > | coal::Cone::inflated (const Scalar value) const |
| Inflate the cone by an amount given by value . This value can be positive or negative but must always >= minInflationValue() . More...
|
|
| coal::Cylinder::Cylinder () |
| Default constructor. More...
|
|
| coal::Cylinder::Cylinder (Scalar radius_, Scalar lz_) |
|
| coal::Cylinder::Cylinder (const Cylinder &other) |
|
Cylinder & | coal::Cylinder::operator= (const Cylinder &other) |
|
virtual Cylinder * | coal::Cylinder::clone () const |
| Clone *this into a new Cylinder. More...
|
|
void | coal::Cylinder::computeLocalAABB () |
| Compute AABB. More...
|
|
NODE_TYPE | coal::Cylinder::getNodeType () const |
| Get node type: a cylinder. More...
|
|
Scalar | coal::Cylinder::computeVolume () const |
| compute the volume More...
|
|
Matrix3s | coal::Cylinder::computeMomentofInertia () const |
| compute the inertia matrix, related to the origin More...
|
|
Scalar | coal::Cylinder::minInflationValue () const |
|
std::pair< Cylinder, Transform3s > | coal::Cylinder::inflated (const Scalar value) const |
| Inflate the cylinder by an amount given by value . This value can be positive or negative but must always >= minInflationValue() . More...
|
|
static ConvexBase * | coal::ConvexBase::convexHull (std::shared_ptr< std::vector< Vec3s >> &points, unsigned int num_points, bool keepTriangles, const char *qhullCommand=NULL) |
| Build a convex hull based on Qhull library and store the vertices and optionally the triangles. More...
|
|
static ConvexBase * | coal::ConvexBase::convexHull (const Vec3s *points, unsigned int num_points, bool keepTriangles, const char *qhullCommand=NULL) |
|
virtual | coal::ConvexBase::~ConvexBase () |
|
virtual ConvexBase * | coal::ConvexBase::clone () const |
| Clone (deep copy). This method is consistent with BVHModel clone method. The copy constructor is called, which duplicates the data. More...
|
|
void | coal::ConvexBase::computeLocalAABB () |
| Compute AABB. More...
|
|
NODE_TYPE | coal::ConvexBase::getNodeType () const |
| Get node type: a convex polytope. More...
|
|
unsigned char const & | coal::ConvexBase::Neighbors::count () const |
|
unsigned int & | coal::ConvexBase::Neighbors::operator[] (int i) |
|
unsigned int const & | coal::ConvexBase::Neighbors::operator[] (int i) const |
|
bool | coal::ConvexBase::Neighbors::operator== (const Neighbors &other) const |
|
bool | coal::ConvexBase::Neighbors::operator!= (const Neighbors &other) const |
|
| coal::ConvexBase::ConvexBase () |
| Construct an uninitialized convex object Initialization is done with ConvexBase::initialize. More...
|
|
void | coal::ConvexBase::initialize (std::shared_ptr< std::vector< Vec3s >> points_, unsigned int num_points_) |
| Initialize the points of the convex shape This also initializes the ConvexBase::center. More...
|
|
void | coal::ConvexBase::set (std::shared_ptr< std::vector< Vec3s >> points_, unsigned int num_points_) |
| Set the points of the convex shape. More...
|
|
| coal::ConvexBase::ConvexBase (const ConvexBase &other) |
| Copy constructor Only the list of neighbors is copied. More...
|
|
void | coal::ConvexBase::buildSupportWarmStart () |
| Build the support points warm starts. More...
|
|
| coal::Halfspace::Halfspace (const Vec3s &n_, Scalar d_) |
| Construct a half space with normal direction and offset. More...
|
|
| coal::Halfspace::Halfspace (Scalar a, Scalar b, Scalar c, Scalar d_) |
| Construct a plane with normal direction and offset. More...
|
|
| coal::Halfspace::Halfspace () |
|
| coal::Halfspace::Halfspace (const Halfspace &other) |
|
Halfspace & | coal::Halfspace::operator= (const Halfspace &other) |
| operator = More...
|
|
virtual Halfspace * | coal::Halfspace::clone () const |
| Clone *this into a new Halfspace. More...
|
|
Scalar | coal::Halfspace::signedDistance (const Vec3s &p) const |
|
Scalar | coal::Halfspace::distance (const Vec3s &p) const |
|
void | coal::Halfspace::computeLocalAABB () |
| Compute AABB. More...
|
|
NODE_TYPE | coal::Halfspace::getNodeType () const |
| Get node type: a half space. More...
|
|
Scalar | coal::Halfspace::minInflationValue () const |
|
std::pair< Halfspace, Transform3s > | coal::Halfspace::inflated (const Scalar value) const |
| Inflate the halfspace by an amount given by value . This value can be positive or negative but must always >= minInflationValue() . More...
|
|
void | coal::Halfspace::unitNormalTest () |
| Turn non-unit normal into unit. More...
|
|
| coal::Plane::Plane (const Vec3s &n_, Scalar d_) |
| Construct a plane with normal direction and offset. More...
|
|
| coal::Plane::Plane (Scalar a, Scalar b, Scalar c, Scalar d_) |
| Construct a plane with normal direction and offset. More...
|
|
| coal::Plane::Plane () |
|
| coal::Plane::Plane (const Plane &other) |
|
Plane & | coal::Plane::operator= (const Plane &other) |
| operator = More...
|
|
virtual Plane * | coal::Plane::clone () const |
| Clone *this into a new Plane. More...
|
|
Scalar | coal::Plane::signedDistance (const Vec3s &p) const |
|
Scalar | coal::Plane::distance (const Vec3s &p) const |
|
void | coal::Plane::computeLocalAABB () |
| Compute AABB. More...
|
|
NODE_TYPE | coal::Plane::getNodeType () const |
| Get node type: a plane. More...
|
|
void | coal::Plane::unitNormalTest () |
| Turn non-unit normal into unit. More...
|
|
|
Scalar | coal::ShapeBase::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...
|
|
Vec3s | coal::TriangleP::a |
|
Vec3s | coal::TriangleP::b |
|
Vec3s | coal::TriangleP::c |
|
Vec3s | coal::Box::halfSide |
| box side half-length More...
|
|
Scalar | coal::Sphere::radius |
| Radius of the sphere. More...
|
|
Vec3s | coal::Ellipsoid::radii |
| Radii of the Ellipsoid (such that on boundary: x^2/rx^2 + y^2/ry^2. More...
|
|
Scalar | coal::Capsule::radius |
| Radius of capsule. More...
|
|
Scalar | coal::Capsule::halfLength |
| Half Length along z axis. More...
|
|
Scalar | coal::Cone::radius |
| Radius of the cone. More...
|
|
Scalar | coal::Cone::halfLength |
| Half Length along z axis. More...
|
|
Scalar | coal::Cylinder::radius |
| Radius of the cylinder. More...
|
|
Scalar | coal::Cylinder::halfLength |
| Half Length along z axis. More...
|
|
unsigned char | coal::ConvexBase::Neighbors::count_ |
|
unsigned int * | coal::ConvexBase::Neighbors::n_ |
|
static constexpr size_t | coal::ConvexBase::num_vertices_large_convex_threshold = 32 |
| Above this threshold, the convex polytope is considered large. This influcences the way the support function is computed. More...
|
|
std::shared_ptr< std::vector< Vec3s > > | coal::ConvexBase::points |
| An array of the points of the polygon. More...
|
|
unsigned int | coal::ConvexBase::num_points |
|
std::shared_ptr< std::vector< Vec3s > > | coal::ConvexBase::normals |
| An array of the normals of the polygon. More...
|
|
std::shared_ptr< std::vector< Scalar > > | coal::ConvexBase::offsets |
| An array of the offsets to the normals of the polygon. Note: there are as many offsets as normals. More...
|
|
unsigned int | coal::ConvexBase::num_normals_and_offsets |
|
std::shared_ptr< std::vector< Neighbors > > | coal::ConvexBase::neighbors |
| Neighbors of each vertex. It is an array of size num_points. For each vertex, it contains the number of neighbors and a list of indices pointing to them. More...
|
|
Vec3s | coal::ConvexBase::center |
| center of the convex polytope, this is used for collision: center is guaranteed in the internal of the polytope (as it is convex) More...
|
|
std::vector< Vec3s > | coal::ConvexBase::SupportWarmStartPolytope::points |
| Array of support points to warm start the support function computation. More...
|
|
std::vector< int > | coal::ConvexBase::SupportWarmStartPolytope::indices |
| Indices of the support points warm starts. These are the indices of the real convex, not the indices of points in the warm start polytope. More...
|
|
static constexpr size_t | coal::ConvexBase::num_support_warm_starts = 14 |
| Number of support warm starts. More...
|
|
SupportWarmStartPolytope | coal::ConvexBase::support_warm_starts |
| Support warm start polytopes. More...
|
|
std::shared_ptr< std::vector< unsigned int > > | coal::ConvexBase::nneighbors_ |
| Array of indices of the neighbors of each vertex. Since we don't know a priori the number of neighbors of each vertex, we store the indices of the neighbors in a single array. The neighbors attribute, an array of Neighbors , is used to point each vertex to the right indices in the nneighbors_ array. More...
|
|
Vec3s | coal::Halfspace::n |
| Plane normal. More...
|
|
Scalar | coal::Halfspace::d |
| Plane offset. More...
|
|
Vec3s | coal::Plane::n |
| Plane normal. More...
|
|
Scalar | coal::Plane::d |
| Plane offset. More...
|
|
Classes of different types of geometric shapes.