Definition of a continuous band track assembly.
A track assembly consists of a sprocket, an idler (with tensioner mechanism), a set of suspensions (road-wheel assemblies), and a collection of track shoes. This is the base class for continuous band track assembly using rigid tread. Derived classes specify the actual template defintions, using different track shoes.
|
| ChTrackAssemblyBand (const std::string &name, VehicleSide side) |
|
virtual std::shared_ptr< ChSprocket > | GetSprocket () const override |
| Get a handle to the sprocket.
|
|
VehicleSide | GetVehicleSide () const |
| Return the vehicle side for this track assembly.
|
|
size_t | GetNumTrackSuspensions () const |
| Get the number of suspensions.
|
|
size_t | GetNumRollers () const |
| Get the number of rollers.
|
|
virtual size_t | GetNumTrackShoes () const =0 |
| Get the number of track shoes.
|
|
std::shared_ptr< ChIdler > | GetIdler () const |
| Get a handle to the idler subsystem.
|
|
std::shared_ptr< ChTrackWheel > | GetIdlerWheel () const |
| Get a handle to the idelr wheel subsystem.
|
|
std::shared_ptr< ChTrackBrake > | GetBrake () const |
| Get a handle to the brake subsystem.
|
|
const ChTrackSuspensionList & | GetTrackSuspensions () const |
| Get the list of suspension subsystems.
|
|
std::shared_ptr< ChTrackSuspension > | GetTrackSuspension (size_t id) const |
| Get a handle to the specified suspension subsystem.
|
|
std::shared_ptr< ChTrackWheel > | GetRoller (size_t id) const |
| Get a handle to the specified roller subsystem.
|
|
std::shared_ptr< ChTrackWheel > | GetRoadWheel (size_t id) const |
| Get a handle to the specified road wheel subsystem.
|
|
virtual std::shared_ptr< ChTrackShoe > | GetTrackShoe (size_t id) const =0 |
| Get a handle to the specified track shoe subsystem.
|
|
const ChVector3d & | GetTrackShoePos (size_t id) const |
| Get the global location of the specified track shoe. More...
|
|
const ChQuaternion & | GetTrackShoeRot (size_t id) const |
| Get the orientation of the specified track shoe. More...
|
|
const ChVector3d & | GetTrackShoeLinVel (size_t id) const |
| Get the linear velocity of the specified track shoe. More...
|
|
ChVector3d | GetTrackShoeAngVel (size_t id) const |
| Get the angular velocity of the specified track shoe. More...
|
|
ChVector3d | GetTrackShoeTension (size_t id) const |
| Get track tension at the specified track shoe. More...
|
|
BodyState | GetTrackShoeState (size_t id) const |
| Get the complete state for the specified track shoe. More...
|
|
void | GetTrackShoeStates (BodyStates &states) const |
| Get the complete states for all track shoes. More...
|
|
virtual const ChVector3d | GetSprocketLocation () const =0 |
| Get the relative location of the sprocket subsystem. More...
|
|
virtual const ChVector3d | GetIdlerLocation () const =0 |
| Get the relative location of the idler subsystem. More...
|
|
virtual const ChVector3d | GetRoadWhelAssemblyLocation (int which) const =0 |
| Get the relative location of the specified suspension subsystem. More...
|
|
virtual const ChVector3d | GetRollerLocation (int which) const |
| Get the relative location of the specified roller subsystem. More...
|
|
void | Initialize (std::shared_ptr< ChChassis > chassis, const ChVector3d &location, bool create_shoes=true) |
| Initialize this track assembly subsystem. More...
|
|
double | ReportTrackLength () const |
| Return total assembled track length (sum of pitch over all track shoes).
|
|
ChTrackSuspension::ForceTorque | ReportSuspensionForce (size_t id) const |
| Return current suspension forces or torques, as appropriate (spring and shock) for the specified suspension. More...
|
|
void | SetSprocketVisualizationType (VisualizationType vis) |
| Set visualization type for the sprocket subsystem.
|
|
void | SetIdlerVisualizationType (VisualizationType vis) |
|
void | SetSuspensionVisualizationType (VisualizationType vis) |
| Set visualization type for the suspension subsystems.
|
|
void | SetIdlerWheelVisualizationType (VisualizationType vis) |
| Set visualization type for the idler-wheel subsystems.
|
|
void | SetRoadWheelVisualizationType (VisualizationType vis) |
| Set visualization type for the road-wheel subsystems.
|
|
void | SetRollerVisualizationType (VisualizationType vis) |
| Set visualization type for the roller subsystems.
|
|
void | SetTrackShoeVisualizationType (VisualizationType vis) |
| Set visualization type for the track shoe subsystems.
|
|
void | SetWheelCollisionType (bool roadwheel_as_cylinder, bool idler_as_cylinder, bool roller_as_cylinder) |
| Set collision shape type for wheels.
|
|
void | Synchronize (double time, double braking) |
| Update the state of this track assembly at the current time. More...
|
|
void | Synchronize (double time, double braking, const TerrainForces &shoe_forces) |
| Update the state of this track assembly at the current time. More...
|
|
virtual void | Advance (double step) |
| Advance the state of this track assembly by the specified time step.
|
|
virtual void | SetOutput (bool state) override |
| Enable/disable output for this subsystem. More...
|
|
void | LogConstraintViolations () |
| Log current constraint violations.
|
|
bool | IsRoadwheelCylinder () const |
|
bool | IsIdlerCylinder () const |
|
bool | IsRolerCylinder () const |
|
const std::string & | GetName () const |
| Get the name identifier for this subsystem.
|
|
void | SetName (const std::string &name) |
| Set the name identifier for this subsystem.
|
|
virtual std::string | GetTemplateName () const =0 |
| Get the name of the vehicle subsystem template.
|
|
bool | IsInitialized () const |
| Return flag indicating whether or not the part is fully constructed.
|
|
double | GetMass () const |
| Get the subsystem mass. More...
|
|
const ChFrame & | GetCOMFrame () const |
| Get the current subsystem COM frame (relative to and expressed in the subsystem's reference frame). More...
|
|
const ChMatrix33 & | GetInertia () const |
| Get the current subsystem inertia (relative to the subsystem COM frame). More...
|
|
const ChFrame & | GetTransform () const |
| Get the current subsystem position relative to the global frame. More...
|
|
void | SetVisualizationType (VisualizationType vis) |
| Set the visualization mode for this subsystem.
|
|
virtual void | AddVisualizationAssets (VisualizationType vis) |
| Add visualization assets to this subsystem, for the specified visualization mode.
|
|
virtual void | RemoveVisualizationAssets () |
| Remove all visualization assets from this subsystem.
|
|
bool | OutputEnabled () const |
| Return the output state for this subsystem.
|
|
|
bool | FindAssemblyPoints (std::shared_ptr< ChBodyAuxRef > chassis, int num_shoes, const std::vector< double > &connection_lengths, std::vector< ChVector2d > &shoe_points) |
| Assembly Algorithm Utility Functions.
|
|
void | FindCircleTangentPoints (ChVector2d Circle1Pos, double Circle1Rad, ChVector2d Circle2Pos, double Circle2Rad, ChVector2d &Tan1Pnt1, ChVector2d &Tan1Pnt2, ChVector2d &Tan2Pnt1, ChVector2d &Tan2Pnt2) |
|
void | CheckCircleCircle (bool &found, ChVector2d &Point, ChMatrixDynamic<> &Features, int FeatureIdx, ChVector2d &StartingPoint, double Radius) |
|
void | CheckCircleLine (bool &found, ChVector2d &Point, ChMatrixDynamic<> &Features, int FeatureIdx, ChVector2d &StartingPoint, double Radius) |
|
| ChTrackAssembly (const std::string &name, VehicleSide side) |
|
virtual void | InitializeInertiaProperties () override |
| Initialize subsystem inertia properties. More...
|
|
virtual void | UpdateInertiaProperties () override |
| Update subsystem inertia properties. More...
|
|
virtual bool | Assemble (std::shared_ptr< ChBodyAuxRef > chassis)=0 |
| Assemble track shoes over wheels. More...
|
|
virtual void | RemoveTrackShoes ()=0 |
| Remove all track shoes from assembly.
|
|
virtual void | ExportComponentList (rapidjson::Document &jsonDocument) const override |
| Export this subsystem's component list to the specified JSON object. More...
|
|
virtual void | Output (ChVehicleOutput &database) const override |
| Output data for this subsystem's component list to the specified database.
|
|
| ChPart (const std::string &name) |
| Construct a vehicle subsystem with the specified name.
|
|
void | AddMass (double &mass) |
| Add this subsystem's mass. More...
|
|
void | AddInertiaProperties (ChVector3d &com, ChMatrix33<> &inertia) |
| Add this subsystem's inertia properties. More...
|
|
virtual void | Create (const rapidjson::Document &d) |
| Create a vehicle subsystem from JSON data. More...
|
|
void | ExportBodyList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChBody >> bodies) const |
| Export the list of bodies to the specified JSON document.
|
|
void | ExportShaftList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChShaft >> shafts) const |
| Export the list of shafts to the specified JSON document.
|
|
void | ExportJointList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLink >> joints) const |
| Export the list of joints to the specified JSON document.
|
|
void | ExportCouplesList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChShaftsCouple >> couples) const |
| Export the list of shaft couples to the specified JSON document.
|
|
void | ExportMarkerList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChMarker >> markers) const |
| Export the list of markers to the specified JSON document.
|
|
void | ExportLinSpringList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLinkTSDA >> springs) const |
| Export the list of translational springs to the specified JSON document.
|
|
void | ExportRotSpringList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLinkRSDA >> springs) const |
| Export the list of rotational springs to the specified JSON document.
|
|
void | ExportBodyLoadList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLoadBodyBody >> loads) const |
| Export the list of body-body loads to the specified JSON document.
|
|