chrono::vehicle::ChTerrain Class Reference

Description

Base class for a terrain system.

#include <ChTerrain.h>

Inheritance diagram for chrono::vehicle::ChTerrain:

Classes

class  FrictionFunctor
Class to be used as a functor interface for location-dependent coefficient of friction. More...

class  HeightFunctor
Class to be used as a functor interface for location-dependent terrain height. More...

class  NormalFunctor
Class to be used as a functor interface for location-dependent terrain normal. More...

Public Member Functions

virtual void Synchronize (double time)
Update the state of the terrain system at the specified time.

Advance the state of the terrain system by the specified duration.

virtual double GetHeight (const ChVector<> &loc) const
Get the terrain height below the specified location.

virtual ChVector GetNormal (const ChVector<> &loc) const
Get the terrain normal at the point below the specified location.

virtual float GetCoefficientFriction (const ChVector<> &loc) const
Get the terrain coefficient of friction at the point below the specified location. More...

virtual void GetProperties (const ChVector<> &loc, double &height, ChVector<> &normal, float &friction) const
Get all terrain characteristics at the point below the specified location.

void RegisterHeightFunctor (std::shared_ptr< HeightFunctor > functor)
Specify the functor object to provide the terrain height at given locations. More...

void RegisterNormalFunctor (std::shared_ptr< NormalFunctor > functor)
Specify the functor object to provide the terrain normal at given locations. More...

void RegisterFrictionFunctor (std::shared_ptr< FrictionFunctor > functor)
Specify the functor object to provide the coefficient of friction at given locations.

Protected Attributes

std::shared_ptr< HeightFunctorm_height_fun
functor for location-dependent terrain height

std::shared_ptr< NormalFunctorm_normal_fun
functor for location-dependent terrain normal

std::shared_ptr< FrictionFunctorm_friction_fun
functor for location-dependent coefficient of friction

◆ GetCoefficientFriction()

 float chrono::vehicle::ChTerrain::GetCoefficientFriction ( const ChVector<> & loc ) const
virtual

Get the terrain coefficient of friction at the point below the specified location.

This coefficient of friction value may be used by certain tire models to modify the tire characteristics, but it will have no effect on the interaction of the terrain with other objects (including tire models that do not explicitly use it).

◆ RegisterHeightFunctor()

 void chrono::vehicle::ChTerrain::RegisterHeightFunctor ( std::shared_ptr< HeightFunctor > functor )
inline

Specify the functor object to provide the terrain height at given locations.

This is provided as a potential optimization mechanism (certain derived classes may choose to ignore it).

◆ RegisterNormalFunctor()

 void chrono::vehicle::ChTerrain::RegisterNormalFunctor ( std::shared_ptr< NormalFunctor > functor )
inline

Specify the functor object to provide the terrain normal at given locations.

This is provided as a potential optimization mechanism (certain derived classes may choose to ignore it).

The documentation for this class was generated from the following files:
• /builds/uwsbel/chrono/src/chrono_vehicle/ChTerrain.h
• /builds/uwsbel/chrono/src/chrono_vehicle/ChTerrain.cpp