Trax3 3.1.0
trax track library
Loading...
Searching...
No Matches
Curve Comparison

Comparison functions for curves. Two curves of different types are considered not equal. More...

Functions

bool dclspc trax::Equals (const std::pair< std::shared_ptr< const Curve >, common::Interval< Length > > &A, const std::pair< std::shared_ptr< const Curve >, common::Interval< Length > > &B, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle)
bool dclspc trax::Equals (const Curve &A, const Curve &B, common::Interval< Length > range, Length epsilon_length=epsilon__length) noexcept
bool dclspc trax::Equals (const LineP::Data &A, const LineP::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle)
bool dclspc trax::Equals (const Arc::Data &A, const Arc::Data &B, Length epsilon_length=epsilon__length) noexcept
 Comparison of two Arcs.
bool dclspc trax::Equals (const ArcP::Data &A, const ArcP::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle)
 Comparison of two Arcs.
bool dclspc trax::Equals (const Helix::Data &A, const Helix::Data &B, Length epsilon_length=epsilon__length) noexcept
 Comparison of two Helix.
bool dclspc trax::Equals (const HelixP::Data &A, const HelixP::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle)
 Comparison of two HelixP.
bool dclspc trax::Equals (const Cubic::Data &A, const Cubic::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle) noexcept
 Comparison of two Cubics.
bool dclspc trax::Equals (const Spline::Data &A, const Spline::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle) noexcept
 Comparison of two Splines.
bool dclspc trax::Equals (const Clothoid::Data &A, const Clothoid::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle)
 Comparison of two Clothoids.
bool dclspc trax::Equals (const Rotator::Data &A, const Rotator::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle) noexcept
 Comparison of two Rotators.
bool dclspc trax::Equals (const PointToPointParallel::Data &A, const PointToPointParallel::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle) noexcept
 Comparison of two PointToPointParallels.
bool dclspc trax::Equals (const SampledCurve::Data &A, const SampledCurve::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle) noexcept
 Comparison of two sampled curves.
bool dclspc trax::Equals (const EEPCurve::Data &A, const EEPCurve::Data &B, common::Interval< Length > range, Length epsilon_length=epsilon__length, Angle epsilon_angle=epsilon__angle) noexcept
 Comparison of two EEPCurves.

Detailed Description

Comparison functions for curves. Two curves of different types are considered not equal.

Comparison of two Lines.

Returns
true if the geometry and absolute pose of this and the given curve are equal up to the given thresholds.

Function Documentation

◆ Equals() [1/14]

bool dclspc trax::Equals ( const Arc::Data & A,
const Arc::Data & B,
Length epsilon_length = epsilon__length )
noexcept

Comparison of two Arcs.

Parameters
AFirst data set.
BSecond data set.
epsilon_lengthmaximum positional deviation.

◆ Equals() [2/14]

bool dclspc trax::Equals ( const ArcP::Data & A,
const ArcP::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )

Comparison of two Arcs.

Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [3/14]

bool dclspc trax::Equals ( const Clothoid::Data & A,
const Clothoid::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )

Comparison of two Clothoids.

Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [4/14]

bool dclspc trax::Equals ( const Cubic::Data & A,
const Cubic::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )
noexcept

Comparison of two Cubics.

Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [5/14]

bool dclspc trax::Equals ( const Curve & A,
const Curve & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length )
noexcept
Parameters
Acurve to compare.
Bcurve to compare with.
rangeParameter interval to compare at.
epsilon_lengthmaximum acceptable positional deviation.

◆ Equals() [6/14]

bool dclspc trax::Equals ( const EEPCurve::Data & A,
const EEPCurve::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )
noexcept

Comparison of two EEPCurves.

Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [7/14]

bool dclspc trax::Equals ( const Helix::Data & A,
const Helix::Data & B,
Length epsilon_length = epsilon__length )
noexcept

Comparison of two Helix.

Parameters
AFirst data set.
BSecond data set.
epsilon_lengthmaximum positional deviation.

◆ Equals() [8/14]

bool dclspc trax::Equals ( const HelixP::Data & A,
const HelixP::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )

Comparison of two HelixP.

Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [9/14]

bool dclspc trax::Equals ( const LineP::Data & A,
const LineP::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )
Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [10/14]

bool dclspc trax::Equals ( const PointToPointParallel::Data & A,
const PointToPointParallel::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )
noexcept

Comparison of two PointToPointParallels.

Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [11/14]

bool dclspc trax::Equals ( const Rotator::Data & A,
const Rotator::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )
noexcept

Comparison of two Rotators.

Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [12/14]

bool dclspc trax::Equals ( const SampledCurve::Data & A,
const SampledCurve::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )
noexcept

Comparison of two sampled curves.

Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [13/14]

bool dclspc trax::Equals ( const Spline::Data & A,
const Spline::Data & B,
common::Interval< Length > range,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )
noexcept

Comparison of two Splines.

Comparison of two polygonal chains.

Comparison of two RotatorChains.

Parameters
AFirst data set.
BSecond data set.
rangeParameter interval to compare at.
epsilon_lengthmaximum positional deviation.
epsilon_anglemaximum directional deviation.

◆ Equals() [14/14]

bool dclspc trax::Equals ( const std::pair< std::shared_ptr< const Curve >, common::Interval< Length > > & A,
const std::pair< std::shared_ptr< const Curve >, common::Interval< Length > > & B,
Length epsilon_length = epsilon__length,
Angle epsilon_angle = epsilon__angle )
Parameters
Acurve to compare.
Bcurve to compare with.
epsilon_lengthmaximum acceptable positional deviation.
epsilon_anglemaximum vector rotational deviation.