AGX Dynamics 2.42.3.1
Loading...
Searching...
No Matches
ShovelAggregateContactUtils.h File Reference

Go to the source code of this file.

Namespaces

namespace  agxTerrain
 The agxTerrain namespace contains a 3D model for a dynamic deformable Terrain and related classes.
 

Functions

agx::Vec3 AGXTERRAIN_EXPORT agxTerrain::calculateGravityVector (agxSDK::Simulation *simulation, const agx::Vec3 &position)
 Utility method for calculating the gravity vector given a point.
 
agx::Real AGXTERRAIN_EXPORT agxTerrain::calculateGv (const agx::Vec3 &normal, const agx::Vec3 &point, const agx::RigidBody *rb1, const agx::RigidBody *rb2)
 Utility method for calculating the relative velocity of two bodies in a contact normal direction.
 
agxCollide::LocalGeometryContactVector AGXTERRAIN_EXPORT agxTerrain::computeAggregatePairContacts (agxTerrain::Shovel *shovel1, agxTerrain::Shovel *shovel2, agx::ContactMaterial *contactMaterial=nullptr, bool debugRenderContacts=false, agx::Real size=0.1)
 Computes the contact set between two aggregate in the cut top plane of shovel one.
 
agx::Real AGXTERRAIN_EXPORT agxTerrain::estimateContactDepth (agx::ContactMaterial *contactMaterial, Terrain *terrain, agx::Real bodyMass, agx::Real contactVelocity, agx::Real contactGravity, agx::Real contactArea, agx::Real elasticRestLength, size_t numContacts)
 Utility method for estimating the contact depth of a shovel <-> aggregate contact from contact velocity and gravity.
 
AGXTERRAIN_EXPORT agx::Material * agxTerrain::findShovelMaterial (agxTerrain::Shovel *shovel)
 Find the agx::Material on the first contact valid contact geometry in the specified shovel.
 
AGXTERRAIN_EXPORT agxCollide::Geometry * agxTerrain::getFirstContactValidGeometry (const agx::RigidBody *shovelBody)
 Get first contact valid geometry in the shovel rigid body for contact.
 
AGXTERRAIN_EXPORT bool agxTerrain::isValidContactGeometry (agxCollide::Geometry *geometry)
 Checks if the specified geometry is valid for creating aggregate contacts against.
 
AGXTERRAIN_EXPORT void agxTerrain::setShovelAggregateContactMaterialFromParticles (agx::ContactMaterial *shovelAggregateCM, agx::Real contactArea, Shovel *shovel)
 
AGXTERRAIN_EXPORT void agxTerrain::setShovelAggregateContactMaterialProperties (agx::ContactMaterial *shovelAggregateCM, agx::Real contactArea, const agx::RealVector &weights, Terrain *terrain, Shovel *shovel)
 Set the shovel-aggregate contact material properties from a source contact material that should either be from regular shovel-terrain contact material based on a multiple soil type configuration in the terrain.
 
AGXTERRAIN_EXPORT void agxTerrain::setShovelExplicitShovelContactMaterial (agx::ContactMaterial *shovelAggregateCM, agx::Real contactArea, const agx::ContactMaterial *sourceMaterial, agx::Real excavationStiffnessMultiplier)
 Set the shovel-aggregate contact material properties from a source contact material that should be a user-specified contact material for a given excavation mode.
 
AGXTERRAIN_EXPORT bool agxTerrain::setupShovelAggregateContactMaterial (agx::ContactMaterial *shovelAggregateCM, agx::Real contactArea, Shovel::ExcavationMode mode, Terrain *terrain, Shovel *shovel, agx::Vec3Vector &points)
 Configure the contact material that is to be used in shovel-aggregate contacts.