chrono::geometry::ChLineArc Class Reference
Description
Geometric object representing an arc or a circle in 3D space.
By default it is evaluated clockwise from angle1 to angle2.
#include <ChLineArc.h>
Inheritance diagram for chrono::geometry::ChLineArc:
Collaboration diagram for chrono::geometry::ChLineArc:
Public Member Functions | |
ChLineArc (const ChCoordsys<> morigin=CSYSNULL, const double mradius=1, const double mangle1=CH_C_2PI, const double mangle2=0, const bool mcounterclockwise=false) | |
ChLineArc (const ChLineArc &source) | |
virtual ChLineArc * | Clone () const override |
"Virtual" copy constructor (covariant return type). | |
virtual GeometryType | GetClassType () const override |
"Virtual" copy constructor (covariant return type). More... | |
virtual int | Get_complexity () const override |
Tell the complexity. | |
virtual void | Evaluate (ChVector<> &pos, const double parU) const override |
Curve evaluation (only parU is used, in 0..1 range) | |
double | Length (int sampling) const override |
Returns curve length. sampling does not matter. | |
void | SetCounterclockwise (bool mcc) |
void | SetAngle1deg (double a1) |
void | SetAngle2deg (double a2) |
virtual void | ArchiveOUT (ChArchiveOut &marchive) override |
Method to allow serialization of transient data to archives. | |
virtual void | ArchiveIN (ChArchiveIn &marchive) override |
Method to allow de-serialization of transient data from archives. | |
Public Member Functions inherited from chrono::geometry::ChLine | |
ChLine (const ChLine &source) | |
virtual void | Derive (ChVector<> &dir, const double parU) const |
Evaluates a tangent versor, given parametric coordinate. More... | |
virtual bool | Get_closed () const |
Tell if the curve is closed. | |
virtual void | Set_closed (bool mc) |
virtual void | Set_complexity (int mc) |
virtual int | GetManifoldDimension () const override |
This is a line. | |
bool | FindNearestLinePoint (ChVector<> &point, double &resU, double approxU, double tol) const |
Find the parameter resU for the nearest point on curve to "point". | |
virtual ChVector | GetEndA () const |
Return the start point of the line. More... | |
virtual ChVector | GetEndB () const |
Return the end point of the line. More... | |
double | CurveCurveDist (ChLine *compline, int samples) const |
Returns adimensional information on "how much" this curve is similar to another in its overall shape (does not matter parametrization or start point). More... | |
double | CurveSegmentDist (ChLine *complinesegm, int samples) const |
Same as before, but returns "how near" is complinesegm to whatever segment of this line (does not matter the percentual of line). More... | |
double | CurveCurveDistMax (ChLine *compline, int samples) const |
Same as above, but instead of making average of the distances, these functions return the maximum of the distances... | |
double | CurveSegmentDistMax (ChLine *complinesegm, int samples) const |
virtual bool | DrawPostscript (ChFile_ps *mfle, int markpoints, int bezier_interpolate) |
Draw into the current graph viewport of a ChFile_ps file. | |
Public Member Functions inherited from chrono::geometry::ChGeometry | |
ChGeometry (const ChGeometry &source) | |
virtual void | GetBoundingBox (ChVector<> &cmin, ChVector<> &cmax, const ChMatrix33<> &rot) const |
Compute bounding box along the directions defined by the given rotation matrix. More... | |
void | InflateBoundingBox (ChVector<> &cmin, ChVector<> &cmax, const ChMatrix33<> &rot) const |
Enlarge the given existing bounding box with the bounding box of this object. | |
virtual double | GetBoundingSphereRadius () const |
Returns the radius of a bounding sphere for this geometry. More... | |
virtual ChVector | Baricenter () const |
Compute center of mass. | |
virtual void | Update () |
Generic update of internal data. | |
Public Attributes | |
ChCoordsys | origin |
center position and plane of the arc: xy used for plane, z for axis. | |
double | radius |
arc radius | |
double | angle1 |
start angle in radians | |
double | angle2 |
end angle in radians | |
bool | counterclockwise |
flag indicating arc direction | |
Additional Inherited Members | |
Public Types inherited from chrono::geometry::ChGeometry | |
enum | GeometryType { NONE, SPHERE, BOX, CYLINDER, TRIANGLE, CAPSULE, CONE, LINE, LINE_ARC, LINE_BEZIER, LINE_CAM, LINE_PATH, LINE_POLY, LINE_SEGMENT, ROUNDED_BOX, ROUNDED_CYLINDER, ROUNDED_CONE, TRIANGLEMESH, TRIANGLEMESH_CONNECTED, TRIANGLEMESH_SOUP } |
Enumeration of geometric objects. | |
Protected Attributes inherited from chrono::geometry::ChLine | |
bool | closed |
int | complexityU |
Member Function Documentation
◆ GetClassType()
|
inlineoverridevirtual |
"Virtual" copy constructor (covariant return type).
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::ChLine.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/geometry/ChLineArc.h
- /builds/uwsbel/chrono/src/chrono/geometry/ChLineArc.cpp