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