115 void buildTerrainContacts(
agxSDK::Simulation* simulation);
120 void updateTerrainContactsWithForceData();
126 void modifyTerrainGeometryContacts();
131 void collectTerrainContacts(
agxSDK::Simulation* simulation);
140 bool raycastTerrainVertexToGeometry(const
agxCollide::Geometry* collider, const
agx::Vec2i& hfIndex,
agx::Real& depth);
171 agx::Real getModifiedYoungsModuls(const
agx::Vec3& position, const
agx::ContactMaterial* existingContactMaterial) const;
173 void addNeighborIndex(
174 const
agx::Vec2i& index,
std::queue<
agx::Vec2i>& indicesToCheck,
agx::HashSet<
agx::Vec2i>& visitedIndices) const;
175 void registerContactingGeometry(const
agxCollide::Geometry* geometry,
agxSDK::Simulation* simulation);
176 void unRegisterContactingGeometry(const
agxCollide::Geometry* geometry);
178 agx::Real getCurrentContactTime(const
agxCollide::Geometry* geometry) const;
179 bool isSoilAggregateContact(
agxCollide::GeometryContact* gc) const;
#define AGX_DECLARE_POINTER_TYPES(type)
#define AGXTERRAIN_STORE_RESTORE_INTERFACE
#define AGXTERRAIN_EXPORT
#define AGX_DECLARE_VECTOR_TYPES(type)
Simulation is a class that bridges the collision space agxCollide::Space and the dynamic simulation s...
A terrain model based a 3D grid model with overlapping height field that can be deformed by interacti...
Inheritance with partial specialization due to bug with ref_ptr containers.
Base class providing referencing 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...
The agxSDK namespace contain classes to bridge the collision detection system and the dynamical simul...
The agxTerrain namespace contains a 3D model for a dynamic deformable Terrain and related classes.
std::queue< agx::Vec2i > IndexQueue
The agx namespace contains the dynamics/math part of the AGX Dynamics API.