chrono::fea::ChBeamSectionShapePolyline Class Reference

Description

A class for drawing properties of beams whose section is a set of M polylines, each with N points.

The shading will show the longitudinal edges extruded at each Nth point as a smooth edge, so if you need sharp edges, just create multiple polylines (ex a quadrialteral=4 polylines). Used as a component of ChBeamSection.

#include <ChBeamSectionShape.h>

Inheritance diagram for chrono::fea::ChBeamSectionShapePolyline:
Collaboration diagram for chrono::fea::ChBeamSectionShapePolyline:

Public Member Functions

 ChBeamSectionShapePolyline (const std::vector< std::vector< ChVector<> > > &polyline_points)
 
virtual int GetNofLines () const override
 Get the n. More...
 
virtual int GetNofPoints (const int i_line) const override
 Get the n. More...
 
virtual void GetPoints (const int i_line, std::vector< ChVector<>> &mpoints) const override
 Compute the points (in the reference of the section). More...
 
virtual void GetNormals (const int i_line, std::vector< ChVector<>> &mnormals) const override
 Compute the normals (in the reference of the section) at each point. More...
 
- Public Member Functions inherited from chrono::fea::ChBeamSectionShape
virtual void GetAABB (double &ymin, double &ymax, double &zmin, double &zmax) const
 Returns the axis-aligned bounding box (assuming axes of local reference of the section) This functions has many uses, ex.for drawing, optimizations, collisions. More...
 

Member Function Documentation

◆ GetNofLines()

virtual int chrono::fea::ChBeamSectionShapePolyline::GetNofLines ( ) const
inlineoverridevirtual

Get the n.

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.

◆ GetNofPoints()

virtual int chrono::fea::ChBeamSectionShapePolyline::GetNofPoints ( const int  i_line) const
inlineoverridevirtual

Get the n.

of points to be allocated per each section, for the i-th line in the section. We assume one also allocates a n. of 3d normals equal to n of points.

Implements chrono::fea::ChBeamSectionShape.

◆ GetNormals()

virtual void chrono::fea::ChBeamSectionShapePolyline::GetNormals ( const int  i_line,
std::vector< ChVector<>> &  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.

◆ GetPoints()

virtual void chrono::fea::ChBeamSectionShapePolyline::GetPoints ( const int  i_line,
std::vector< ChVector<>> &  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