47 static constexpr agx::Real DefaultVertexMergeDistance = DTetrahedronMesh::DefaultVertexMergeDistance;
215 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
234 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
248 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
270 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
292 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
316 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
333 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
372 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
390 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
405 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
422 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
483 agx::Real vertexMergeDistance = DefaultVertexMergeDistance );
556 T* getAlgorithm()
const;
697 using
agxSDK::Assembly::add;
698 using
agxSDK::Assembly::remove;
700 using
agxSDK::Assembly::addNotification;
701 using
agxSDK::Assembly::removeNotification;
703 virtual
void addNotification(
agxSDK::Simulation* simulation ) override;
704 virtual
void removeNotification(
agxSDK::Simulation* simulation ) override;
706 virtual
void onPreCollideStep() override;
707 virtual
void onPreStep() override;
708 virtual
void onPostStep() override;
709 virtual
void onLastStep() override;
715 using GroupIdVector =
std::vector<GroupId>;
728 virtual
void onMaterialNew() const;
733 virtual
void onGroupAdd( const GroupId& group ) const;
738 virtual
void onGroupRemove( const GroupId& group ) const;
743 virtual
void onSetEnableCollisions(
agxCollide::Geometry* geometry,
bool enable ) const;
752 INITIALIZED = 1 << 0,
754 using Flags = agx::BitState<Flag, std::underlying_type_t<Flag>>;
756 inline bool initialized()
const
758 return flags.Is( INITIALIZED );
777 InternalState m_state;
780 GroupIdVector m_collisionGroups;
783 DeformableObjectReferenceDataRef m_referenceData;
792 for (
auto&& algorithm : m_algorithms )
793 if ( algorithm->template is<T>() )
794 return algorithm->template as<T>();
800 return m_internalData;
#define AGX_DECLARE_POINTER_TYPES(type)
#define AGXSTREAM_DECLARE_SERIALIZABLE(T)
Use this in a Serializable class to add the required methods Important: Use full namespace in the dec...
#define AGX_DECLARE_VECTOR_TYPES(type)
The geometry representation used by the collision detection engine.
A HeightField is a collision shape that can be created from a grid structure, like an image.
Mesh is a common base class for triangle meshes, such as Mesh or HeightField.
Bulk beam model properties present in all agxModel::BeamModel instances, which in turn propagates the...
Deformable tetrahedron mesh representation, containing a data registry with the vertex position and c...
Vertex element with access to the initial and current position.
Rectangular cross section beam model with a given width and height.
Simulation is a class that bridges the collision space agxCollide::Space and the dynamic simulation s...
Internal data for any object, ObjT, with methods: agx::Referenced* ObjT::getInternalData() const; voi...
Main material class which acts as a holder of a Surface Material and a Bulk material.
Representation of a name string.
Base class providing referencing counted objects.
The rigid body class, combining a geometric model and a frame of reference.
A UUID, or Universally unique identifier, is intended to uniquely identify information in a distribut...
Smart pointer for handling referenced counted objects.
#define DOXYGEN_END_INTERNAL_BLOCK()
#define DOXYGEN_START_INTERNAL_BLOCK()
This namespace consists of a set of classes for handling geometric intersection tests including boole...
Contain classes for higher level modeling primitives, such as Tree, Terrain etc.
The agxSDK namespace contain classes to bridge the collision detection system and the dynamical simul...