AGX Dynamics 2.41.2.0
Loading...
Searching...
No Matches
agxCollide::LocalContactPoint Class Reference

#include <LocalContactPoint.h>

+ Inheritance diagram for agxCollide::LocalContactPoint:

Public Types

enum  ContactPointState : agx::UInt8 { IMPACTING = 1 << 0 , NONHOLONOMIC = 1 << 1 }
 

Public Member Functions

 LocalContactPoint ()
 
 LocalContactPoint (const agx::Vec3 &p, const agx::Vec3 &n, agx::Real d)
 
 LocalContactPoint (const agx::Vec3 &p, const agx::Vec3f &n, agx::Real d)
 
agx::Realarea ()
 
agx::Real area () const
 
agx::Realdepth ()
 
agx::Real depth () const
 
agx::RealelasticRestLengthShape1 ()
 
agx::Real elasticRestLengthShape1 () const
 
agx::RealelasticRestLengthShape2 ()
 
agx::Real elasticRestLengthShape2 () const
 
bool & enabled ()
 
bool enabled () const
 
agx::UInt8faceFeature1 ()
 
agx::UInt8 faceFeature1 () const
 
agx::UInt8faceFeature2 ()
 
agx::UInt8 faceFeature2 () const
 
agx::UInt32faceIndex1 ()
 
agx::UInt32 faceIndex1 () const
 
agx::UInt32faceIndex2 ()
 
agx::UInt32 faceIndex2 () const
 
bool isHolonomic () const
 
const agx::ContactMaterial *& material ()
 
const agx::ContactMaterialmaterial () const
 
agx::RealmaxNormalForce ()
 
agx::Real maxNormalForce () const
 
agx::Vec3fnormal ()
 
agx::Vec3f normal () const
 
agx::Vec3point ()
 
agx::Vec3 point () const
 
void setIsHolonomic (bool isHolonomic)
 
agx::Physics::Geometry::ShapePtrshape1 ()
 
agx::Physics::Geometry::ShapePtr shape1 () const
 
agx::Physics::Geometry::ShapePtrshape2 ()
 
agx::Physics::Geometry::ShapePtr shape2 () const
 
agx::UInt8state ()
 
agx::UInt8 state () const
 
agx::Vec3fvelocity ()
 
agx::Vec3f velocity () const
 

Static Public Member Functions

template<typename T >
static LocalContactPoint create (const T &pointType)
 Creates an enabled copy of given pointType (agxCollide::ContactPoint).
 

Detailed Description

Definition at line 40 of file LocalContactPoint.h.

Member Enumeration Documentation

◆ ContactPointState

Enumerator
IMPACTING 

This contact point is impacting - i.e., relative speed along the normal is above some threshold.

This state is calculated by the solver and is updated in the contact point before the post/last callbacks.

NONHOLONOMIC 

This contact point is treated as a non-holonomic constraint in the normal direction - i.e.

a velocity constraint with target velocity 0 ( similar to friction ) where the contact depth is disregarded. This removes the right-hand side in the normal equation for the contact point.

Definition at line 43 of file LocalContactPoint.h.

Constructor & Destructor Documentation

◆ LocalContactPoint() [1/3]

agxCollide::LocalContactPoint::LocalContactPoint ( )
inline

Definition at line 67 of file LocalContactPoint.h.

◆ LocalContactPoint() [2/3]

agxCollide::LocalContactPoint::LocalContactPoint ( const agx::Vec3 p,
const agx::Vec3f n,
agx::Real  d 
)
inline

Definition at line 90 of file LocalContactPoint.h.

◆ LocalContactPoint() [3/3]

agxCollide::LocalContactPoint::LocalContactPoint ( const agx::Vec3 p,
const agx::Vec3 n,
agx::Real  d 
)
inline

Definition at line 113 of file LocalContactPoint.h.

Member Function Documentation

◆ area() [1/2]

agx::Real & agxCollide::LocalContactPoint::area ( )
inline

Definition at line 123 of file LocalContactPoint.h.

◆ area() [2/2]

agx::Real agxCollide::LocalContactPoint::area ( ) const
inline

Definition at line 153 of file LocalContactPoint.h.

◆ create()

template<typename T >
LocalContactPoint agxCollide::LocalContactPoint::create ( const T &  pointType)
static

Creates an enabled copy of given pointType (agxCollide::ContactPoint).

Parameters
pointType- source contact point

Definition at line 189 of file LocalContactPoint.h.

◆ depth() [1/2]

agx::Real & agxCollide::LocalContactPoint::depth ( )
inline

Definition at line 121 of file LocalContactPoint.h.

◆ depth() [2/2]

agx::Real agxCollide::LocalContactPoint::depth ( ) const
inline

Definition at line 151 of file LocalContactPoint.h.

◆ elasticRestLengthShape1() [1/2]

agx::Real & agxCollide::LocalContactPoint::elasticRestLengthShape1 ( )
inline

Definition at line 124 of file LocalContactPoint.h.

◆ elasticRestLengthShape1() [2/2]

agx::Real agxCollide::LocalContactPoint::elasticRestLengthShape1 ( ) const
inline

Definition at line 154 of file LocalContactPoint.h.

◆ elasticRestLengthShape2() [1/2]

agx::Real & agxCollide::LocalContactPoint::elasticRestLengthShape2 ( )
inline

Definition at line 125 of file LocalContactPoint.h.

◆ elasticRestLengthShape2() [2/2]

agx::Real agxCollide::LocalContactPoint::elasticRestLengthShape2 ( ) const
inline

Definition at line 155 of file LocalContactPoint.h.

◆ enabled() [1/2]

bool & agxCollide::LocalContactPoint::enabled ( )
inline

Definition at line 132 of file LocalContactPoint.h.

◆ enabled() [2/2]

bool agxCollide::LocalContactPoint::enabled ( ) const
inline

Definition at line 162 of file LocalContactPoint.h.

◆ faceFeature1() [1/2]

agx::UInt8 & agxCollide::LocalContactPoint::faceFeature1 ( )
inline

Definition at line 128 of file LocalContactPoint.h.

◆ faceFeature1() [2/2]

agx::UInt8 agxCollide::LocalContactPoint::faceFeature1 ( ) const
inline

Definition at line 158 of file LocalContactPoint.h.

◆ faceFeature2() [1/2]

agx::UInt8 & agxCollide::LocalContactPoint::faceFeature2 ( )
inline

Definition at line 129 of file LocalContactPoint.h.

◆ faceFeature2() [2/2]

agx::UInt8 agxCollide::LocalContactPoint::faceFeature2 ( ) const
inline

Definition at line 159 of file LocalContactPoint.h.

◆ faceIndex1() [1/2]

agx::UInt32 & agxCollide::LocalContactPoint::faceIndex1 ( )
inline

Definition at line 126 of file LocalContactPoint.h.

◆ faceIndex1() [2/2]

agx::UInt32 agxCollide::LocalContactPoint::faceIndex1 ( ) const
inline

Definition at line 156 of file LocalContactPoint.h.

◆ faceIndex2() [1/2]

agx::UInt32 & agxCollide::LocalContactPoint::faceIndex2 ( )
inline

Definition at line 127 of file LocalContactPoint.h.

◆ faceIndex2() [2/2]

agx::UInt32 agxCollide::LocalContactPoint::faceIndex2 ( ) const
inline

Definition at line 157 of file LocalContactPoint.h.

◆ isHolonomic()

bool agxCollide::LocalContactPoint::isHolonomic ( ) const
inline

Definition at line 165 of file LocalContactPoint.h.

References NONHOLONOMIC.

Referenced by setIsHolonomic().

◆ material() [1/2]

const agx::ContactMaterial *& agxCollide::LocalContactPoint::material ( )
inline

Definition at line 133 of file LocalContactPoint.h.

◆ material() [2/2]

const agx::ContactMaterial * agxCollide::LocalContactPoint::material ( ) const
inline

Definition at line 163 of file LocalContactPoint.h.

◆ maxNormalForce() [1/2]

agx::Real & agxCollide::LocalContactPoint::maxNormalForce ( )
inline

Definition at line 122 of file LocalContactPoint.h.

◆ maxNormalForce() [2/2]

agx::Real agxCollide::LocalContactPoint::maxNormalForce ( ) const
inline

Definition at line 152 of file LocalContactPoint.h.

◆ normal() [1/2]

agx::Vec3f & agxCollide::LocalContactPoint::normal ( )
inline

Definition at line 119 of file LocalContactPoint.h.

◆ normal() [2/2]

agx::Vec3f agxCollide::LocalContactPoint::normal ( ) const
inline

Definition at line 149 of file LocalContactPoint.h.

◆ point() [1/2]

agx::Vec3 & agxCollide::LocalContactPoint::point ( )
inline

◆ point() [2/2]

agx::Vec3 agxCollide::LocalContactPoint::point ( ) const
inline

Definition at line 148 of file LocalContactPoint.h.

◆ setIsHolonomic()

void agxCollide::LocalContactPoint::setIsHolonomic ( bool  isHolonomic)
inline

Definition at line 136 of file LocalContactPoint.h.

References isHolonomic(), and NONHOLONOMIC.

◆ shape1() [1/2]

agx::Physics::Geometry::ShapePtr & agxCollide::LocalContactPoint::shape1 ( )
inline

Definition at line 130 of file LocalContactPoint.h.

◆ shape1() [2/2]

agx::Physics::Geometry::ShapePtr agxCollide::LocalContactPoint::shape1 ( ) const
inline

Definition at line 160 of file LocalContactPoint.h.

◆ shape2() [1/2]

agx::Physics::Geometry::ShapePtr & agxCollide::LocalContactPoint::shape2 ( )
inline

Definition at line 131 of file LocalContactPoint.h.

◆ shape2() [2/2]

agx::Physics::Geometry::ShapePtr agxCollide::LocalContactPoint::shape2 ( ) const
inline

Definition at line 161 of file LocalContactPoint.h.

◆ state() [1/2]

agx::UInt8 & agxCollide::LocalContactPoint::state ( )
inline

Definition at line 134 of file LocalContactPoint.h.

◆ state() [2/2]

agx::UInt8 agxCollide::LocalContactPoint::state ( ) const
inline

Definition at line 164 of file LocalContactPoint.h.

◆ velocity() [1/2]

agx::Vec3f & agxCollide::LocalContactPoint::velocity ( )
inline

◆ velocity() [2/2]

agx::Vec3f agxCollide::LocalContactPoint::velocity ( ) const
inline

Definition at line 150 of file LocalContactPoint.h.


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