ICF 3.0.5.47
Technical documentation of ICF Libraries
iview::CScreenTransform Class Reference

#include <CScreenTransform.h>

Inheritance diagram for iview::CScreenTransform:
Collaboration diagram for iview::CScreenTransform:

Public Types

typedef i2d::CAffine2d BaseClass
 

Public Member Functions

 CScreenTransform ()
 Default constructor.
 
 CScreenTransform (const CScreenTransform &transform)
 Copy constructor.
 
 CScreenTransform (const i2d::CAffine2d &transform)
 Constructs CScreenTransform using i2d::CAffine2d object.
 
i2d::CVector2d GetClientPosition (istd::CIndex2d position) const
 Return position of point in logical coordinates.
 
istd::CIndex2d GetScreenPosition (const i2d::CVector2d &position) const
 Return position of point in screen coordinates.
 
const i2d::CAffine2dGetInverted () const
 Return reference to invert transformation.
 
void Reset ()
 
void Reset (const i2d::CVector2d &position)
 
void Reset (const i2d::CVector2d &position, double angle, double scale=1.0)
 
void Reset (const i2d::CVector2d &position, double angle, const i2d::CVector2d &scale)
 
void GetApply (const i2d::CAffine2d &transform, CScreenTransform &result) const
 
void Apply (const i2d::CAffine2d &transform)
 
void ApplyLeft (const i2d::CAffine2d &transform)
 
i2d::CAffine2doperator= (const i2d::CAffine2d &transform)
 
CVector2d GetApply (const CVector2d &position) const
 Calculate transformed position.
 
void GetApply (const CVector2d &position, CVector2d &result) const
 Get position after this transformation.
 
CAffine2d GetApply (const CAffine2d &transform) const
 Get combined transformation.
 
void GetApply (const CAffine2d &transform, CAffine2d &result) const
 Get combined transformation.
 
- Public Member Functions inherited from i2d::CAffine2d
 CAffine2d ()
 Constructor, parameters will be not initialized.
 
 CAffine2d (const CAffine2d &transform)
 Copy constructor, transformation data will be copied from the input object.
 
 CAffine2d (const CMatrix2d &deform, const CVector2d &translation=CVector2d(0.0, 0.0))
 Constructs a transform using specified deformation matrix and translation.
 
 CAffine2d (const CVector2d &translation)
 Constructs a transform with translation only.
 
const CVector2dGetTranslation () const
 Get translation part of this affine transformation.
 
void SetTranslation (const CVector2d &translation)
 Set translation part of this affine transformation.
 
const CMatrix2dGetDeformMatrix () const
 Get rotation, skew and scale part of this affine transformation.
 
CVector2d GetScaleVector () const
 Get scale vector of this affine transformation (right-hand side matrix-vector multiplication assumed, i.e.
 
CMatrix2d GetRotationMatrix () const
 Get rotational part of this affine transformation.
 
void SetDeformMatrix (const CMatrix2d &deform)
 Set rotation, skew and scale part of this affine transformation.
 
CVector2dGetTranslationRef ()
 Get internal reference to the translation vector.
 
CMatrix2dGetDeformMatrixRef ()
 Get internal reference to the transformation matrix.
 
void Reset ()
 Set to identity transformation.
 
void Reset (const CVector2d &translation)
 Set this transformation to translation.
 
void Reset (const CVector2d &translation, double angle, double scale=1.0, bool isPosDef=true)
 Set this transformation to a given translation, rotation and scaling.
 
void Reset (const CVector2d &translation, double angle, const CVector2d &scale, bool isPosDef=true)
 Set this transformation to a given translation, rotation and both axis scaling.
 
CVector2d GetApply (const CVector2d &position) const
 Calculate transformed position.
 
void GetApply (const CVector2d &position, CVector2d &result) const
 Get position after this transformation.
 
CVector2d GetApplyToDelta (const CVector2d &delta) const
 Get difference vector after this transformation.
 
void GetApplyToDelta (const CVector2d &delta, CVector2d &result) const
 Get vector after this transformation.
 
CAffine2d GetApply (const CAffine2d &transform) const
 Get combined transformation.
 
void GetApply (const CAffine2d &transform, CAffine2d &result) const
 Get combined transformation.
 
void Apply (const CAffine2d &transform)
 Combine this transformation with another transformation.
 
void ApplyLeft (const CAffine2d &transform)
 Combine this transformation with another transformation on the left side.
 
CVector2d GetInvertedApply (const CVector2d &position) const
 Inverted operation to GetApply().
 
bool GetInvertedApply (const CVector2d &position, CVector2d &result) const
 Inverted operation to GetApply().
 
CAffine2d GetTranslated (const CVector2d &delta) const
 Get some transformation combined with translation.
 
void GetTranslated (const CVector2d &delta, CAffine2d &result) const
 Get some transformation combined with translation.
 
void Translate (const CVector2d &delta)
 Combine this transformation with translation.
 
CAffine2d GetInverted () const
 Get inverted transformation.
 
bool GetInverted (CAffine2d &result) const
 Get inverted transformation.
 
bool Serialize (iser::IArchive &archive)
 Serialize transformation parameters into/from archive.
 
bool operator== (const CAffine2d &transform) const
 
bool operator!= (const CAffine2d &transform) const
 
CAffine2doperator= (const CAffine2d &transform)
 

Protected Member Functions

void CalculateInvert ()
 

Additional Inherited Members

- Static Public Member Functions inherited from i2d::CAffine2d
static const CAffine2dGetIdentity ()
 

Detailed Description

Definition at line 17 of file CScreenTransform.h.

Member Typedef Documentation

◆ BaseClass

Constructor & Destructor Documentation

◆ CScreenTransform() [1/3]

iview::CScreenTransform::CScreenTransform ( )
inline

Default constructor.

Note, that members will be not initialize.

Definition at line 72 of file CScreenTransform.h.

◆ CScreenTransform() [2/3]

iview::CScreenTransform::CScreenTransform ( const CScreenTransform & transform)
inline

Copy constructor.

Definition at line 77 of file CScreenTransform.h.

◆ CScreenTransform() [3/3]

iview::CScreenTransform::CScreenTransform ( const i2d::CAffine2d & transform)
inline

Constructs CScreenTransform using i2d::CAffine2d object.

Definition at line 84 of file CScreenTransform.h.

References CalculateInvert().

Member Function Documentation

◆ Apply()

void iview::CScreenTransform::Apply ( const i2d::CAffine2d & transform)
inline

Definition at line 145 of file CScreenTransform.h.

References i2d::CAffine2d::Apply(), and CalculateInvert().

◆ ApplyLeft()

void iview::CScreenTransform::ApplyLeft ( const i2d::CAffine2d & transform)

◆ CalculateInvert()

void iview::CScreenTransform::CalculateInvert ( )
inlineprotected

Definition at line 163 of file CScreenTransform.h.

References i2d::CAffine2d::GetInverted().

Referenced by Apply(), CScreenTransform(), operator=(), Reset(), Reset(), Reset(), and Reset().

◆ GetApply() [1/5]

CAffine2d i2d::CAffine2d::GetApply ( const CAffine2d & transform) const

Get combined transformation.

Parameters
transformlocal transformation used on the right side of transformation multiplication.
Returns
combined transform.

◆ GetApply() [2/5]

void i2d::CAffine2d::GetApply ( const CAffine2d & transform,
CAffine2d & result ) const

Get combined transformation.

Parameters
transformlocal transformation used on the right side of transformation multiplication.
Returns
combined transformation, it is equal to thisTranform * parameterTransform.

◆ GetApply() [3/5]

CVector2d i2d::CAffine2d::GetApply ( const CVector2d & position) const
inline

Calculate transformed position.

Definition at line 120 of file CAffine2d.h.

◆ GetApply() [4/5]

void i2d::CAffine2d::GetApply ( const CVector2d & position,
CVector2d & result ) const
inline

Get position after this transformation.

Definition at line 125 of file CAffine2d.h.

◆ GetApply() [5/5]

void iview::CScreenTransform::GetApply ( const i2d::CAffine2d & transform,
CScreenTransform & result ) const

Referenced by GetScreenPosition().

◆ GetClientPosition()

i2d::CVector2d iview::CScreenTransform::GetClientPosition ( istd::CIndex2d position) const
inline

Return position of point in logical coordinates.

Definition at line 91 of file CScreenTransform.h.

References i2d::CAffine2d::GetApply(), istd::CIndex2d::GetX(), and istd::CIndex2d::GetY().

◆ GetInverted()

const i2d::CAffine2d & iview::CScreenTransform::GetInverted ( ) const
inline

Return reference to invert transformation.

Definition at line 169 of file CScreenTransform.h.

◆ GetScreenPosition()

istd::CIndex2d iview::CScreenTransform::GetScreenPosition ( const i2d::CVector2d & position) const
inline

Return position of point in screen coordinates.

Definition at line 102 of file CScreenTransform.h.

References GetApply(), i2d::CVector2d::GetX(), and i2d::CVector2d::GetY().

◆ operator=()

i2d::CAffine2d & iview::CScreenTransform::operator= ( const i2d::CAffine2d & transform)
inline

Definition at line 153 of file CScreenTransform.h.

References CalculateInvert(), and i2d::CAffine2d::operator=().

◆ Reset() [1/4]

void iview::CScreenTransform::Reset ( )
inline

Definition at line 113 of file CScreenTransform.h.

References CalculateInvert(), and i2d::CAffine2d::Reset().

◆ Reset() [2/4]

void iview::CScreenTransform::Reset ( const i2d::CVector2d & position)
inline

Definition at line 121 of file CScreenTransform.h.

References CalculateInvert(), and i2d::CAffine2d::Reset().

◆ Reset() [3/4]

void iview::CScreenTransform::Reset ( const i2d::CVector2d & position,
double angle,
const i2d::CVector2d & scale )
inline

Definition at line 137 of file CScreenTransform.h.

References CalculateInvert(), and i2d::CAffine2d::Reset().

◆ Reset() [4/4]

void iview::CScreenTransform::Reset ( const i2d::CVector2d & position,
double angle,
double scale = 1.0 )
inline

Definition at line 129 of file CScreenTransform.h.

References CalculateInvert(), and i2d::CAffine2d::Reset().


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

© Witold Gantzke and Kirill Lepskiy