Public Types | Public Member Functions | Public Attributes | Friends | List of all members
fcl::Box< S_ > Class Template Reference

Center at zero point, axis aligned box. More...

#include <box.h>

Inheritance diagram for fcl::Box< S_ >:
Inheritance graph
[legend]

Public Types

using S = S_
 
- Public Types inherited from fcl::ShapeBase< S_ >
using S = S_
 

Public Member Functions

 Box ()
 Constructor. More...
 
 Box (const Vector3< S > &side)
 Constructor. More...
 
 Box (S x, S y, S z)
 Constructor. More...
 
void computeLocalAABB () override
 Compute AABB. More...
 
Matrix3< ScomputeMomentofInertia () const override
 
S computeVolume () const override
 
std::vector< Vector3< S > > getBoundVertices (const Transform3< S > &tf) const
 get the vertices of some convex shape which can bound this shape in a specific configuration More...
 
NODE_TYPE getNodeType () const override
 Get node type: a box. More...
 
std::string representation (int precision=20) const
 Create a string that should be sufficient to recreate this shape. This is akin to the repr() implementation in python. More...
 
- Public Member Functions inherited from fcl::ShapeBase< S_ >
OBJECT_TYPE getObjectType () const
 Get object type: a geometric shape. More...
 
 ShapeBase ()
 
- Public Member Functions inherited from fcl::CollisionGeometry< S_ >
 CollisionGeometry ()
 
virtual Vector3< S_ > computeCOM () const
 compute center of mass More...
 
virtual Matrix3< S_ > computeMomentofInertia () const
 compute the inertia matrix, related to the origin More...
 
virtual Matrix3< S_ > computeMomentofInertiaRelatedToCOM () const
 compute the inertia matrix, related to the com More...
 
virtual S_ computeVolume () const
 compute the volume More...
 
virtual NODE_TYPE getNodeType () const
 get the node type More...
 
virtual OBJECT_TYPE getObjectType () const
 get the type of the object 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...
 
void setUserData (void *data)
 set user data in geometry More...
 
virtual ~CollisionGeometry ()
 

Public Attributes

Vector3< Sside
 box side length More...
 
- Public Attributes inherited from fcl::CollisionGeometry< S_ >
Vector3< S_ > aabb_center
 AABB center in local coordinate. More...
 
AABB< S_ > aabb_local
 AABB in local coordinate, used for tight AABB when only translation transform. More...
 
S_ aabb_radius
 AABB radius. More...
 
S_ cost_density
 collision cost for unit volume More...
 
S_ threshold_free
 threshold for free (<= is free) More...
 
S_ threshold_occupied
 threshold for occupied ( >= is occupied) More...
 
void * user_data
 pointer to user defined data specific to this object More...
 

Friends

std::ostream & operator<< (std::ostream &out, const Box &box)
 

Detailed Description

template<typename S_>
class fcl::Box< S_ >

Center at zero point, axis aligned box.

Definition at line 51 of file box.h.

Member Typedef Documentation

◆ S

template<typename S_ >
using fcl::Box< S_ >::S = S_

Definition at line 55 of file box.h.

Constructor & Destructor Documentation

◆ Box() [1/3]

template<typename S >
fcl::Box< S >::Box ( S  x,
S  y,
S  z 
)

Constructor.

Definition at line 56 of file box-inl.h.

◆ Box() [2/3]

template<typename S >
fcl::Box< S >::Box ( const Vector3< S > &  side)

Constructor.

Definition at line 64 of file box-inl.h.

◆ Box() [3/3]

template<typename S >
fcl::Box< S >::Box

Constructor.

Definition at line 72 of file box-inl.h.

Member Function Documentation

◆ computeLocalAABB()

template<typename S >
void fcl::Box< S >::computeLocalAABB
overridevirtual

Compute AABB.

Implements fcl::CollisionGeometry< S_ >.

Definition at line 80 of file box-inl.h.

◆ computeMomentofInertia()

template<typename S >
Matrix3< S > fcl::Box< S >::computeMomentofInertia
override

Definition at line 106 of file box-inl.h.

◆ computeVolume()

template<typename S >
S fcl::Box< S >::computeVolume
override

Definition at line 99 of file box-inl.h.

◆ getBoundVertices()

template<typename S >
std::vector< Vector3< S > > fcl::Box< S >::getBoundVertices ( const Transform3< S > &  tf) const

get the vertices of some convex shape which can bound this shape in a specific configuration

Definition at line 121 of file box-inl.h.

◆ getNodeType()

template<typename S >
NODE_TYPE fcl::Box< S >::getNodeType
override

Get node type: a box.

Definition at line 92 of file box-inl.h.

◆ representation()

template<typename S >
std::string fcl::Box< S >::representation ( int  precision = 20) const

Create a string that should be sufficient to recreate this shape. This is akin to the repr() implementation in python.

Parameters
precisionThe requested digits of precision for the numerical measures (same semantics as std::setprecision()).
Returns
The string representation of this instance.

Definition at line 142 of file box-inl.h.

Friends And Related Function Documentation

◆ operator<<

template<typename S_ >
std::ostream& operator<< ( std::ostream &  out,
const Box< S_ > &  box 
)
friend

Definition at line 93 of file box.h.

Member Data Documentation

◆ side

template<typename S_ >
Vector3<S> fcl::Box< S_ >::side

box side length

Definition at line 67 of file box.h.


The documentation for this class was generated from the following files:


fcl
Author(s):
autogenerated on Tue Dec 5 2023 03:40:50