chrono::ChLineSegment Class Reference
Description
Geometric object representing a segment in 3D space with two end points.
#include <ChLineSegment.h>
Inheritance diagram for chrono::ChLineSegment:
Collaboration diagram for chrono::ChLineSegment:
Public Member Functions | |
ChLineSegment (const ChVector3d A=VNULL, const ChVector3d B=VNULL) | |
ChLineSegment (const ChLineSegment &source) | |
virtual ChLineSegment * | Clone () const override |
"Virtual" copy constructor (covariant return type). | |
virtual Type | GetType () const override |
Get the class type as an enum. | |
virtual int | GetComplexity () const override |
Tell the complexity. | |
virtual ChVector3d | Evaluate (double U) const override |
Return a point on the line, given parametric coordinate U (in [0,1]). | |
virtual double | Length (int sampling) const override |
Return curve length. | |
double | GetLength () const |
Get the segment length. | |
ChFrame | GetFrame () const |
Return the segment frame. More... | |
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::ChLine | |
ChLine (const ChLine &source) | |
virtual ChVector3d | GetTangent (double parU) const |
Return the tangent unit vector at the parametric coordinate U (in [0,1]). More... | |
virtual bool | IsClosed () const |
Tell if the curve is closed. | |
virtual void | SetClosed (bool mc) |
virtual void | SetComplexity (int mc) |
virtual int | GetManifoldDimension () const override |
This is a line. | |
bool | FindNearestLinePoint (ChVector3d &point, double &resU, double approxU, double tol) const |
Find the parameter resU for the nearest point on curve to "point". | |
virtual ChVector3d | GetEndA () const |
Return the start point of the line. More... | |
virtual ChVector3d | 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 |
Public Member Functions inherited from chrono::ChGeometry | |
ChGeometry (const ChGeometry &other) | |
virtual ChAABB | GetBoundingBox () const |
Compute bounding box along the directions of the shape definition frame. More... | |
void | InflateBoundingBox (ChAABB &bbox) 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 ChVector3d | Baricenter () const |
Compute center of mass. | |
virtual void | Update () |
Generic update of internal data. | |
Public Attributes | |
ChVector3d | pA |
first segment endpoint | |
ChVector3d | pB |
second segment endpoint | |
Additional Inherited Members | |
Public Types inherited from chrono::ChGeometry | |
enum | Type { NONE, SPHERE, ELLIPSOID, BOX, CYLINDER, TRIANGLE, CAPSULE, CONE, LINE, LINE_ARC, LINE_BEZIER, LINE_CAM, LINE_PATH, LINE_POLY, LINE_SEGMENT, ROUNDED_BOX, ROUNDED_CYLINDER, TRIANGLEMESH, TRIANGLEMESH_CONNECTED, TRIANGLEMESH_SOUP } |
Enumeration of geometric object types. | |
Protected Attributes inherited from chrono::ChLine | |
bool | closed |
int | complexityU |
Member Function Documentation
◆ GetFrame()
ChFrame chrono::ChLineSegment::GetFrame | ( | ) | const |
Return the segment frame.
This is a frame centered at the midpoint and with Z axis along the segment.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/geometry/ChLineSegment.h
- /builds/uwsbel/chrono/src/chrono/geometry/ChLineSegment.cpp