|
MULTIBODY SIMULATION SOFTWARE - API documentation |
#include <CHcLine.h>


Public Member Functions | |
| ChLine (const ChLine &source) | |
| void | Copy (const ChLine *source) |
| ChGeometry * | Duplicate () |
| virtual int | GetClassType () |
| virtual int | Get_closed () |
| virtual void | Set_closed (int mc) |
| virtual int | Get_complexity () |
| virtual void | Set_complexity (int mc) |
| virtual int | GetManifoldDimension () |
| int | FindNearestLinePoint (Vector &point, double &resU, double approxU, double tol) |
| virtual double | Lenght (int sampling) |
| double | CurveCurveDist (ChLine *compline, int samples) |
| double | CurveSegmentDist (ChLine *complinesegm, int samples) |
| double | CurveCurveDistMax (ChLine *compline, int samples) |
| double | CurveSegmentDistMax (ChLine *complinesegm, int samples) |
| virtual int | DrawPostscript (ChFile_ps *mfle, int markpoints, int bezier_interpolate) |
| void | StreamOUT (ChStreamOutBinary &mstream) |
| void | StreamIN (ChStreamInBinary &mstream) |
Protected Attributes | |
| int | closed |
| int | complexityU |
Base class for all geometric objects representing lines in 3D space.
| virtual int chrono::geometry::ChLine::GetClassType | ( | ) | [virtual] |
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::ChGeometry.
Reimplemented in chrono::geometry::ChLineCam, and chrono::geometry::ChLinePoly.
| virtual int chrono::geometry::ChLine::Get_closed | ( | ) | [virtual] |
Tell if the curve is closed.
Reimplemented in chrono::geometry::ChLineCam, and chrono::geometry::ChLinePoly.
| virtual int chrono::geometry::ChLine::Get_complexity | ( | ) | [virtual] |
| virtual int chrono::geometry::ChLine::GetManifoldDimension | ( | ) | [virtual] |
| int chrono::geometry::ChLine::FindNearestLinePoint | ( | Vector & | point, | |
| double & | resU, | |||
| double | approxU, | |||
| double | tol | |||
| ) |
Find the parameter resU for the nearest point on curve to "point".
| double chrono::geometry::ChLine::Lenght | ( | int | sampling | ) | [virtual] |
Returns curve lenght. Typical sampling 1..5 (1 already gives correct result with degree1 curves).
Reimplemented in chrono::geometry::ChLinePoly.
| double chrono::geometry::ChLine::CurveCurveDist | ( | ChLine * | compline, | |
| int | samples | |||
| ) |
Returns an adimensional information on "how much" this curve is similar to another in its overall shape (doesnot matter parametrization or start point). Try with 20 samples. The return value is somewhat the "average distance between the two curves". Note that the result is affected by "weight" of curves. If it chnges from default 1.0, the distance extimation is higher/lower (ex: if a curve defines low 'weight' in its central segment, its CurveCurveDistance from another segment is not much affected by errors near the central segment).
| double chrono::geometry::ChLine::CurveSegmentDist | ( | ChLine * | complinesegm, | |
| int | samples | |||
| ) |
Again, this is affected by "weight" of curves. If weight changes along curves ->'weighted' distance.
Same as before, but returns "how near" is complinesegm to whatever segment of this line (does not matter the percentual of line).
| double chrono::geometry::ChLine::CurveCurveDistMax | ( | ChLine * | compline, | |
| int | samples | |||
| ) |
Same as above, but instead of making average of the distances, these functions return the maximum of the distances...
| int chrono::geometry::ChLine::DrawPostscript | ( | ChFile_ps * | mfle, | |
| int | markpoints, | |||
| int | bezier_interpolate | |||
| ) | [virtual] |
Draw into the current graph viewport of a ChFile_ps file.
Reimplemented in chrono::geometry::ChLinePoly.
CHRONO::ENGINE