MULTIBODY SIMULATION SOFTWARE - API documentation

chrono::geometry::ChBox Class Reference

#include <CHcBox.h>

Inheritance diagram for chrono::geometry::ChBox:

Inheritance graph
[legend]
Collaboration diagram for chrono::geometry::ChBox:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 ChBox (Vector &mpos, ChMatrix33<> &mrot, Vector &msize)
 ChBox (Vector &mC0, Vector &mC1, Vector &mC2, Vector &mC3)
 ChBox (ChBox &source)
void Copy (ChBox *source)
ChGeometryDuplicate ()
virtual int GetClassType ()
virtual void GetBoundingBox (double &xmin, double &xmax, double &ymin, double &ymax, double &zmin, double &zmax, ChMatrix33<> *bbRot=NULL)
virtual Vector Baricenter ()
virtual void CovarianceMatrix (ChMatrix33<> &C)
virtual void Evaluate (Vector &pos, const double parU, const double parV=0., const double parW=0.)
virtual int GetManifoldDimension ()
ChMatrix33GetRotm ()
VectorGetPos ()
VectorGetSize ()
Vector GetP1 ()
Vector GetP2 ()
Vector GetP3 ()
Vector GetP4 ()
Vector GetP5 ()
Vector GetP6 ()
Vector GetP7 ()
Vector GetP8 ()
Vector GetPn (int ipoint)
double GetVolume ()
void StreamOUT (ChStreamOutBinary &mstream)
void StreamIN (ChStreamInBinary &mstream)

Public Attributes

ChMatrix33 Rot
Vector Pos
Vector Size


Detailed Description

A box. Geometric object for collisions and such.

Constructor & Destructor Documentation

chrono::geometry::ChBox::ChBox ( Vector mpos,
ChMatrix33<> &  mrot,
Vector msize 
)

Build from pos, rotation, size.

chrono::geometry::ChBox::ChBox ( Vector mC0,
Vector mC1,
Vector mC2,
Vector mC3 
)

Build from first corner and three other neighbouring corners.


Member Function Documentation

virtual int chrono::geometry::ChBox::GetClassType (  )  [virtual]

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.

void chrono::geometry::ChBox::GetBoundingBox ( double &  xmin,
double &  xmax,
double &  ymin,
double &  ymax,
double &  zmin,
double &  zmax,
ChMatrix33<> *  Rot = NULL 
) [virtual]

Compute bounding box. If a matrix Rot is not null, it should compute bounding box along the rotated directions represented by that transformation matrix Rot. It must be overridden by inherited classes.

Reimplemented from chrono::geometry::ChGeometry.

virtual Vector chrono::geometry::ChBox::Baricenter (  )  [virtual]

Computes the baricenter of the box.

Reimplemented from chrono::geometry::ChGeometry.

void chrono::geometry::ChBox::CovarianceMatrix ( ChMatrix33<> &  C  )  [virtual]

Computes the covariance matrix for the box.

Reimplemented from chrono::geometry::ChGeometry.

void chrono::geometry::ChBox::Evaluate ( Vector pos,
const double  parU,
const double  parV = 0.,
const double  parW = 0. 
) [virtual]

Evaluate position in cube volume.

Reimplemented from chrono::geometry::ChGeometry.

virtual int chrono::geometry::ChBox::GetManifoldDimension (  )  [virtual]

This is a solid.

Reimplemented from chrono::geometry::ChGeometry.

Vector chrono::geometry::ChBox::GetPn ( int  ipoint  ) 

Get the n-th corner point, with ipoint = 1...8.

double chrono::geometry::ChBox::GetVolume (  ) 

Get the volume (assuming no scaling in Rot matrix).


Member Data Documentation

ChMatrix33 chrono::geometry::ChBox::Rot

Rotation of box.

Vector chrono::geometry::ChBox::Pos

Position of center.

Vector chrono::geometry::ChBox::Size

Hemi size (extension of box from center to corner).


CHRONO::ENGINE
C++ library for multibody simulation, (C) Alessandro Tasora
This API documentation has been generated on 17 Jul 2009 by Doxygen