Description
Collision barrel shape.
When added to a collision model, the shape is aligned with its main axis in the Y direction of the shape frame. The barrel shape is made by lathing an arc of an ellipse around the vertical Y axis. The center of the ellipse is on Y=0 level, and it is offsetted by R_offset from the Y axis in radial direction. The two axes of the ellipse are axis_vert (for the vertical direction, i.e. the axis parallel to Y) and axis_hor (for the axis that is perpendicular to Y). Also, the solid is clamped with two discs on the top and the bottom, at levels Y_low and Y_high.
#include <ChCollisionShapeBarrel.h>


| Public Member Functions | |
| ChCollisionShapeBarrel (std::shared_ptr< ChContactMaterial > material, double Y_low, double Y_high, double axis_vert, double axis_hor, double R_offset) | |
| virtual ChAABB | GetBoundingBox () const override | 
| Get the shape bounding box. | |
| virtual void | ArchiveOut (ChArchiveOut &archive_out) override | 
| Method to allow serialization of transient data to archives. | |
| virtual void | ArchiveIn (ChArchiveIn &archive_in) override | 
| Method to allow de-serialization of transient data from archives. | |
|  Public Member Functions inherited from chrono::ChCollisionShape | |
| ChCollisionShape (Type type=Type::UNKNOWN_SHAPE) | |
| ChCollisionShape (Type type, std::shared_ptr< ChContactMaterial > material) | |
| Type | GetType () const | 
| std::shared_ptr< ChContactMaterial > | GetMaterial () const | 
| ChContactMethod | GetContactMethod () const | 
| Public Attributes | |
| double | Y_low | 
| double | Y_high | 
| double | axis_vert | 
| double | axis_hor | 
| double | R_offset | 
| Additional Inherited Members | |
|  Public Types inherited from chrono::ChCollisionShape | |
| enum | Type { SPHERE, ELLIPSOID, BOX, CYLINDER, CYLSHELL, CONVEXHULL, TRIANGLEMESH, BARREL, POINT, SEGMENT, TRIANGLE, MESHTRIANGLE, CAPSULE, CONE, ROUNDEDBOX, ROUNDEDCYL, TETRAHEDRON, PATH2D, SEGMENT2D, ARC2D, UNKNOWN_SHAPE } | 
| Supported collision shape types. | |
|  Protected Attributes inherited from chrono::ChCollisionShape | |
| Type | m_type | 
| type of collision shape | |
| std::shared_ptr< ChContactMaterial > | m_material | 
| surface contact material | |
Constructor & Destructor Documentation
◆ ChCollisionShapeBarrel()
| chrono::ChCollisionShapeBarrel::ChCollisionShapeBarrel | ( | std::shared_ptr< ChContactMaterial > | material, | 
| double | Y_low, | ||
| double | Y_high, | ||
| double | axis_vert, | ||
| double | axis_hor, | ||
| double | R_offset | ||
| ) | 
- Parameters
- 
  material surface contact material Y_low bottom level Y_high top level axis_vert ellipse axis in vertical direction axis_hor ellipse axis in horizontal direction R_offset lateral offset (radius at top and bottom) 
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/collision/ChCollisionShapeBarrel.h
- /builds/uwsbel/chrono/src/chrono/collision/ChCollisionShapeBarrel.cpp
