Classes | Public Member Functions | Public Attributes | Protected Member Functions
fcl::Convex Class Reference

Convex polytope. More...

#include <hpp/fcl/shape/geometric_shapes.h>

Inheritance diagram for fcl::Convex:
[legend]
Collaboration diagram for fcl::Convex:
[legend]

List of all members.

Classes

struct  Edge

Public Member Functions

 Convex (Vec3f *plane_normals_, FCL_REAL *plane_dis_, int num_planes_, Vec3f *points_, int, int *polygons_)
 Constructing a convex, providing normal and offset of each polytype surface, and the points and shape topology information.
 Convex (const Convex &other)
 Copy constructor.
 ~Convex ()
void computeLocalAABB ()
 Compute AABB.
NODE_TYPE getNodeType () const
 Get node type: a conex polytope.
Matrix3f computeMomentofInertia () const
 based on http://number-none.com/blow/inertia/bb_inertia.doc
Vec3f computeCOM () const
 compute center of mass
FCL_REAL computeVolume () const
 compute the volume

Public Attributes

Vec3fplane_normals
FCL_REALplane_dis
int * polygons
 An array of indices to the points of each polygon, it should be the number of vertices followed by that amount of indices to "points" in counter clockwise order.
Vec3fpoints
int num_points
int num_edges
int num_planes
Edgeedges
Vec3f center
 center of the convex polytope, this is used for collision: center is guaranteed in the internal of the polytope (as it is convex)

Protected Member Functions

void fillEdges ()
 Get edge information.

Detailed Description

Convex polytope.


Constructor & Destructor Documentation

fcl::Convex::Convex ( Vec3f plane_normals_,
FCL_REAL plane_dis_,
int  num_planes_,
Vec3f points_,
int  ,
int *  polygons_ 
) [inline]

Constructing a convex, providing normal and offset of each polytype surface, and the points and shape topology information.

References center, edges, fillEdges(), num_planes, num_points, plane_dis, plane_normals, points, and polygons.

fcl::Convex::Convex ( const Convex other) [inline]

Copy constructor.

References edges, num_edges, num_planes, plane_dis, plane_normals, points, and polygons.

fcl::Convex::~Convex ( ) [inline]

References edges.


Member Function Documentation

Vec3f fcl::Convex::computeCOM ( ) const [inline, virtual]

compute center of mass

Reimplemented from fcl::CollisionGeometry.

References num_planes, points, and polygons.

void fcl::Convex::computeLocalAABB ( ) [virtual]

Compute AABB.

Implements fcl::CollisionGeometry.

Matrix3f fcl::Convex::computeMomentofInertia ( ) const [inline, virtual]
FCL_REAL fcl::Convex::computeVolume ( ) const [inline, virtual]

compute the volume

Reimplemented from fcl::CollisionGeometry.

References num_planes, points, and polygons.

void fcl::Convex::fillEdges ( ) [protected]

Get edge information.

Referenced by Convex().

NODE_TYPE fcl::Convex::getNodeType ( ) const [inline, virtual]

Get node type: a conex polytope.

Reimplemented from fcl::CollisionGeometry.

References fcl::GEOM_CONVEX.


Member Data Documentation

center of the convex polytope, this is used for collision: center is guaranteed in the internal of the polytope (as it is convex)

Referenced by Convex().

Referenced by Convex(), and ~Convex().

Referenced by Convex().

Referenced by Convex().

Referenced by Convex().

Referenced by Convex().

An array of indices to the points of each polygon, it should be the number of vertices followed by that amount of indices to "points" in counter clockwise order.

Referenced by computeCOM(), computeMomentofInertia(), computeVolume(), and Convex().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines