chrono::geometry::ChBox Class Reference

Description

A box geometric object for collisions and visualization.

#include <ChBox.h>

Inheritance diagram for chrono::geometry::ChBox:
Collaboration diagram for chrono::geometry::ChBox:

Public Member Functions

 ChBox (const ChVector<> &lengths)
 
 ChBox (double len_x, double len_y, double len_z)
 
 ChBox (const ChBox &source)
 
virtual ChBoxClone () const override
 "Virtual" copy constructor (covariant return type).
 
virtual ChGeometry::GeometryType GetClassType () const override
 Get the class type as unique numerical ID (faster than using ChronoRTTI mechanism). More...
 
virtual void GetBoundingBox (ChVector<> &cmin, ChVector<> &cmax, const ChMatrix33<> &rot) const override
 Compute bounding box along the directions defined by the given rotation matrix.
 
virtual ChVector Baricenter () const override
 Computes the baricenter of the box.
 
virtual void Evaluate (ChVector<> &pos, const double parU, const double parV, const double parW) const override
 Evaluate position in cube volume.
 
virtual int GetManifoldDimension () const override
 This is a solid.
 
ChVectorGetSize ()
 Get the box half-lengths.
 
ChVector GetLengths ()
 Get the x y z lengths of this box (that is, double the Size values)
 
void SetLengths (const ChVector<> &mlen)
 Set the x y z lengths of this box (that is, double the Size values)
 
ChVector GetP1 () const
 
ChVector GetP2 () const
 
ChVector GetP3 () const
 
ChVector GetP4 () const
 
ChVector GetP5 () const
 
ChVector GetP6 () const
 
ChVector GetP7 () const
 
ChVector GetP8 () const
 
ChVector GetPn (int ipoint) const
 Get the n-th corner point, with ipoint = 1...8.
 
double GetVolume () const
 Get the volume (assuming no scaling in Rot matrix)
 
virtual void ArchiveOUT (ChArchiveOut &marchive) override
 Method to allow serialization of transient data to archives.
 
virtual void ArchiveIN (ChArchiveIn &marchive) override
 Method to allow de-serialization of transient data from archives.
 
- Public Member Functions inherited from chrono::geometry::ChVolume
 ChVolume (const ChVolume &source)
 
virtual bool Get_closed_U () const
 Tell if the volume is closed (periodic) in parametric coordinate.
 
virtual bool Get_closed_V () const
 Tell if the volume is closed (periodic) in parametric coordinate.
 
virtual bool Get_closed_W () const
 Tell if the volume is closed (periodic) in parametric coordinate.
 
- Public Member Functions inherited from chrono::geometry::ChGeometry
 ChGeometry (const ChGeometry &source)
 
void InflateBoundingBox (ChVector<> &cmin, ChVector<> &cmax, const ChMatrix33<> &rot) const
 Enlarge the given existing bounding box with the bounding box of this object.
 
virtual double GetBoundingSphereRadius () const
 Returns the radius of a bounding sphere for this geometry. More...
 
virtual void Update ()
 Generic update of internal data.
 

Public Attributes

ChVector Size
 box halflengths
 

Additional Inherited Members

- Public Types inherited from chrono::geometry::ChGeometry
enum  GeometryType {
  NONE, SPHERE, BOX, CYLINDER,
  TRIANGLE, CAPSULE, CONE, LINE,
  LINE_ARC, LINE_BEZIER, LINE_CAM, LINE_PATH,
  LINE_POLY, LINE_SEGMENT, ROUNDED_BOX, ROUNDED_CYLINDER,
  ROUNDED_CONE, TRIANGLEMESH, TRIANGLEMESH_CONNECTED, TRIANGLEMESH_SOUP
}
 Enumeration of geometric objects.
 

Member Function Documentation

◆ GetClassType()

virtual ChGeometry::GeometryType chrono::geometry::ChBox::GetClassType ( ) const
inlineoverridevirtual

Get the class type as unique numerical ID (faster than using ChronoRTTI mechanism).

Each inherited class must return an unique ID.

Reimplemented from chrono::geometry::ChGeometry.


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