chrono::fea::ChBeamSectionShapeCircular Class Reference

Description

A ready-to-use class for drawing properties of circular beams.

Used as a component of ChBeamSection

#include <ChBeamSectionShape.h>

Inheritance diagram for chrono::fea::ChBeamSectionShapeCircular:
Collaboration diagram for chrono::fea::ChBeamSectionShapeCircular:

Public Member Functions

 ChBeamSectionShapeCircular (double mradius, int mresolution=10)
 
virtual unsigned int GetNumLines () const override
 Get the number of lines making the profile of the section, for meshing purposes. More...
 
virtual unsigned int GetNumPoints (unsigned int i_line) const override
 Get the number of points to be allocated per each section, for the i-th line in the section. More...
 
virtual void GetPoints (unsigned int i_line, std::vector< ChVector3d > &mpoints) const override
 Compute the points (in the reference of the section). More...
 
virtual void GetNormals (unsigned int i_line, std::vector< ChVector3d > &mnormals) const override
 Compute the normals (in the reference of the section) at each point. More...
 
virtual void GetAABB (double &ymin, double &ymax, double &zmin, double &zmax) const override
 Returns the axis-aligned bounding box (assuming axes of local reference of the section) This functions has many uses, ex.for drawing, optimizations, collisions.
 

Member Function Documentation

◆ GetNormals()

virtual void chrono::fea::ChBeamSectionShapeCircular::GetNormals ( unsigned int  i_line,
std::vector< ChVector3d > &  mnormals 
) const
inlineoverridevirtual

Compute the normals (in the reference of the section) at each point.

Note: mnormals must already have the proper size.

Implements chrono::fea::ChBeamSectionShape.

◆ GetNumLines()

virtual unsigned int chrono::fea::ChBeamSectionShapeCircular::GetNumLines ( ) const
inlineoverridevirtual

Get the number of lines making the profile of the section, for meshing purposes.

C0 continuity is required between lines, C1 also required within each line. Ex. a circle has 1 line, a cube 4 lines, etc. Sharp corners can be done mith multiple lines.

Implements chrono::fea::ChBeamSectionShape.

◆ GetNumPoints()

virtual unsigned int chrono::fea::ChBeamSectionShapeCircular::GetNumPoints ( unsigned int  i_line) const
inlineoverridevirtual

Get the number of points to be allocated per each section, for the i-th line in the section.

We assume one also allocates same number of 3d normalss.

Implements chrono::fea::ChBeamSectionShape.

◆ GetPoints()

virtual void chrono::fea::ChBeamSectionShapeCircular::GetPoints ( unsigned int  i_line,
std::vector< ChVector3d > &  mpoints 
) const
inlineoverridevirtual

Compute the points (in the reference of the section).

Note: mpoints must already have the proper size.

Implements chrono::fea::ChBeamSectionShape.


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