SurgSim::Collision::OctreePlaneContact Class Reference

`#include <SurgSim/Collision/OctreePlaneContact.h>`

Inheritance diagram for SurgSim::Collision::OctreePlaneContact:

## Public Member Functions

std::pair< int, int > | getShapeTypes () override
| Virtual function that returns the shapes that this ContactCalculation class handles. More...
Public Member Functions inherited from SurgSim::Collision::ContactCalculation
| ContactCalculation ()
| Constructor. More...
virtual | ~ContactCalculation ()
| Destructor. More...
void | calculateContact (std::shared_ptr< CollisionPair > pair)
| Calculate the contacts for a given pair. More...
std::list< std::shared_ptr< Contact > > | calculateDcdContact (const Math::PosedShape< std::shared_ptr< Math::Shape >> posedShape1, const Math::PosedShape< std::shared_ptr< Math::Shape >> posedShape2)
| Calculate the dcd contacts between two posed/transformed shapes. More...
std::list< std::shared_ptr< Contact > > | calculateCcdContact (const Math::PosedShapeMotion< std::shared_ptr< Math::Shape >> posedShapeMotion1, const Math::PosedShapeMotion< std::shared_ptr< Math::Shape >> posedShapeMotion2)
| Calculate the ccd contacts between two posed/transformed shapes. More...

## Protected Member Functions

std::list< std::shared_ptr< Contact > > | boxContactCalculation (const SurgSim::Math::BoxShape &boxShape, const SurgSim::Math::RigidTransform3d &boxPose, const SurgSim::Math::Shape &otherShape, const SurgSim::Math::RigidTransform3d &otherPose) override
| Do the calculation between an octree node (BoxShape) and the other shape. More...

## Private Attributes

BoxPlaneContact | m_calculator

## Additional Inherited Members

Public Types inherited from SurgSim::Collision::ContactCalculation
typedef std::array< std::array< std::shared_ptr< ContactCalculation >, Math::SHAPE_TYPE_COUNT >, Math::SHAPE_TYPE_COUNT > | TableType
Static Public Member Functions inherited from SurgSim::Collision::ContactCalculation
static void | registerDcdContactCalculation (const std::shared_ptr< ContactCalculation > &calculation)
| Register an instance of a contact calculation in the table. More...
static void | registerCcdContactCalculation (const std::shared_ptr< ContactCalculation > &calculation)
| Register an instance of a contact calculation in the table. More...
static const TableType & | getDcdContactTable ()
static const TableType & | getCcdContactTable ()

## Member Function Documentation

## boxContactCalculation()

std::list< std::shared_ptr< Contact > > SurgSim::Collision::OctreePlaneContact::boxContactCalculation | ( | const SurgSim::Math::BoxShape & | boxShape,
|  | const SurgSim::Math::RigidTransform3d & | boxPose,
|  | const SurgSim::Math::Shape & | otherShape,
|  | const SurgSim::Math::RigidTransform3d & | otherPose
| ) |  |

override protected virtual

Do the calculation between an octree node (BoxShape) and the other shape.

Parameters

  boxShape | the box shape
  boxPose | the pose of the box
  otherShape | the other shape
  otherPose | the pose of the other shape

Returns
  a list of contacts between the shapes, if any

Implements SurgSim::Collision::OctreeContact.

## getShapeTypes()

std::pair< int, int > SurgSim::Collision::OctreePlaneContact::getShapeTypes | ( |  | ) |

override virtual

Virtual function that returns the shapes that this ContactCalculation class handles.

Returns
  Return the shape types this class handles.

Implements SurgSim::Collision::ContactCalculation.

## Member Data Documentation

## m_calculator

BoxPlaneContact SurgSim::Collision::OctreePlaneContact::m_calculator

private

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

- SurgSim/Collision/OctreePlaneContact.h
- SurgSim/Collision/OctreePlaneContact.cpp