Public Types | Public Member Functions | List of all members
iipr::CCaliperDistanceFeature Class Reference

Implementation of INumericValue interface for caliper based distance measurement feature. More...

#include <CCaliperDistanceFeature.h>

Inheritance diagram for iipr::CCaliperDistanceFeature:
iipr::TWeightedFeatureWrap< i2d::CLine2d > imeas::CSimpleNumericValue i2d::CLine2d imeas::INumericValue i2d::CObject2dBase iser::ISerializable i2d::IObject2d istd::IChangeable iser::IObject i2d::ICalibrationProvider istd::IPolymorphic iser::ISerializable istd::IChangeable istd::IChangeable istd::IPolymorphic istd::IPolymorphic

Public Types

typedef
iipr::TWeightedFeatureWrap
< i2d::CLine2d
BaseClass
 
- Public Types inherited from iipr::TWeightedFeatureWrap< i2d::CLine2d >
typedef imeas::CSimpleNumericValue BaseClass
 
typedef i2d::CLine2d BaseClass2
 
- Public Types inherited from imeas::INumericValue
enum  ValueTypeId {
  VTI_AUTO = 0, VTI_WEIGHT, VTI_POSITION, VTI_RADIUS,
  VTI_SCALE, VTI_ANGLE, VTI_ALPHA, VTI_LENGTH,
  VTI_2D_TRANSFORM, VTI_2D_LINE
}
 Define standard numeric value types. More...
 

Public Member Functions

 CCaliperDistanceFeature (const i2d::CLine2d &caliperLine, double weight)
 
double GetDistance () const
 
virtual bool IsValueTypeSupported (ValueTypeId valueTypeId) const
 Check if the given value type (or value component) is supported. More...
 
virtual imath::CVarVector GetComponentValue (ValueTypeId valueTypeId) const
 Get access to component value of the given type. More...
 
- Public Member Functions inherited from iipr::TWeightedFeatureWrap< i2d::CLine2d >
 TWeightedFeatureWrap (double weight=1.0)
 
double GetWeight () const
 
void SetWeight (double weight)
 
virtual bool Serialize (iser::IArchive &archive)
 
virtual bool CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS)
 
- Public Member Functions inherited from imeas::CSimpleNumericValue
virtual const INumericConstraintsGetNumericConstraints () const
 Get parameter constraints describing possible parameter values. More...
 
virtual imath::CVarVector GetValues () const
 Get list of numeric values. More...
 
virtual bool SetValues (const imath::CVarVector &values)
 Set list of numeric values. More...
 
- Public Member Functions inherited from i2d::CLine2d
 CLine2d ()
 
 CLine2d (const CVector2d &p1, const CVector2d &p2)
 
 CLine2d (double x1, double y1, double x2, double y2)
 
bool operator== (const CLine2d &line) const
 
bool operator!= (const CLine2d &line) const
 
bool IsNull () const
 
const CVector2dGetPoint1 () const
 
CVector2dGetPoint1Ref ()
 
void SetPoint1 (const CVector2d &point)
 
const CVector2dGetPoint2 () const
 
CVector2dGetPoint2Ref ()
 
void SetPoint2 (const CVector2d &point)
 
double GetSlope () const
 
double GetIntercept () const
 
bool IsParallel (const CLine2d &line) const
 
bool IsIntersectedBy (const CLine2d &line) const
 
bool GetIntersection (const CLine2d &line, CVector2d &result) const
 
bool GetExtendedIntersection (const CLine2d &line, CVector2d &result) const
 
double GetDistance (const CVector2d &position) const
 
double GetMaxDistance (const CVector2d &position) const
 
double GetExtendedDistance (const CVector2d &position) const
 
CVector2d GetPositionFromAlpha (double alpha) const
 
CVector2d GetDiffVector () const
 
double GetLength () const
 
double GetLength2 () const
 
double GetDirectionAngle () const
 
CLine2d GetClipped (const CRectangle &rect) const
 
CLine2d GetSwapped () const
 
double GetCutXPos (double linePosY) const
 
double GetCutYPos (double linePosX) const
 
void PushBeginPoint (const i2d::CVector2d &newBeginPoint)
 
void PushEndPoint (const i2d::CVector2d &newEndPoint)
 
void PushBeginPointQuiet (const i2d::CVector2d &newBeginPoint)
 
void PushEndPointQuiet (const i2d::CVector2d &newEndPoint)
 
void SetPoint1Quiet (const CVector2d &point)
 
void SetPoint2Quiet (const CVector2d &point)
 
double GetCutAlpha (const CLine2d &line) const
 
double GetCastAlpha (const i2d::CVector2d &point) const
 
QPair< double, double > GetAlphaAndCastDistance (const i2d::CVector2d &point) const
 
bool GetCutPoint (const CLine2d &otherLine, i2d::CVector2d &cutPoint) const
 
i2d::CVector2d GetNearestPoint (const i2d::CVector2d &point) const
 
i2d::CVector2d GetExtendedNearestPoint (const i2d::CVector2d &point) const
 
CLine2d GetShortestEndConnection (const CLine2d &line) const
 
CLine2d GetShortestConnectionToNext (const CLine2d &line) const
 
CLine2d GetShortestConnection (const i2d::CVector2d &point) const
 
CLine2d GetShortestConnection (const CLine2d &line) const
 
bool ApproxFromPoints (const QSet< i2d::CVector2d > &points)
 
virtual CVector2d GetCenter () const
 
virtual void MoveCenterTo (const CVector2d &position)
 
virtual CRectangle GetBoundingBox () const
 
virtual bool Transform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL)
 
virtual bool InvTransform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL)
 
virtual bool GetTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) const
 
virtual bool GetInvTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) const
 
virtual QByteArray GetFactoryId () const
 
virtual int GetSupportedOperations () const
 
virtual istd::IChangeableCloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const
 
- Public Member Functions inherited from i2d::CObject2dBase
virtual bool Serialize (IArchive &archive)=0
 
- Public Member Functions inherited from i2d::IObject2d
virtual void SetCalibration (const ICalibration2d *calibrationPtr, bool releaseFlag=false)=0
 
- Public Member Functions inherited from i2d::ICalibrationProvider
virtual const ICalibration2dGetCalibration () const =0
 

Additional Inherited Members

- Static Public Member Functions inherited from i2d::CLine2d
static QByteArray GetTypeName ()
 
- Protected Attributes inherited from iipr::TWeightedFeatureWrap< i2d::CLine2d >
double m_weight
 
- Protected Attributes inherited from imeas::CSimpleNumericValue
imath::CVarVector m_values
 

Detailed Description

Implementation of INumericValue interface for caliper based distance measurement feature.

Definition at line 19 of file CCaliperDistanceFeature.h.

Member Typedef Documentation

Definition at line 22 of file CCaliperDistanceFeature.h.

Constructor & Destructor Documentation

iipr::CCaliperDistanceFeature::CCaliperDistanceFeature ( const i2d::CLine2d caliperLine,
double  weight 
)

Member Function Documentation

virtual imath::CVarVector iipr::CCaliperDistanceFeature::GetComponentValue ( ValueTypeId  valueTypeId) const
virtual

Get access to component value of the given type.

See Also
ValueTypeId
Returns
if data vector cannot be calculated it returns empty vector.

Reimplemented from iipr::TWeightedFeatureWrap< i2d::CLine2d >.

double iipr::CCaliperDistanceFeature::GetDistance ( ) const
virtual bool iipr::CCaliperDistanceFeature::IsValueTypeSupported ( ValueTypeId  valueTypeId) const
virtual

Check if the given value type (or value component) is supported.

If the value component is supported you can access this via GetComponentValue method.

See Also
GetComponentValue

Reimplemented from iipr::TWeightedFeatureWrap< i2d::CLine2d >.


The documentation for this class was generated from the following file:

© 2007-2017 Witold Gantzke and Kirill Lepskiy