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>
Public Member Functions | |
ChBeamSectionShapePolyline (const std::vector< std::vector< ChVector3d >> &polyline_points) | |
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... | |
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
◆ GetNormals()
|
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()
|
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()
|
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()
|
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