SPATREF::COORDOP Class Reference

Coordinate Operation (conversion/transformation) service. More...

#include <mi32/coordop.h>

Inheritance diagram for SPATREF::COORDOP:

Inheritance graph
SPATREF::COORDOP_LISTSPATREF::COORDOP_SINGLE
[legend]
List of all members.

Public Member Functions

ERRVALUE ConvertForward (const DPOINT3DH *ipoints, DPOINT3DH *opoints, INT32 NumPoints) const
ERRVALUE ConvertForward (const DPOINT3D *ipoints, DPOINT3D *opoints, INT32 NumPoints) const
ERRVALUE ConvertForward (const DPOINT2D *ipoints, DPOINT2D *opoints, INT32 NumPoints) const
ERRVALUE ConvertForward (const DPOINT3DH &ipoint, DPOINT3DH &opoint) const
ERRVALUE ConvertForward (const DPOINT3D &ipoint, DPOINT3D &opoint) const
ERRVALUE ConvertForward (const DPOINT2D &ipoint, DPOINT2D &opoint) const
ERRVALUE ConvertForwardDense (INT32 NumPoints, int NumDim, const double *ipoint, double tolerance, COORDOP_TARGET &target) const
ERRVALUE ConvertReverse (const DPOINT3DH *ipoints, DPOINT3DH *opoints, INT32 NumPoints) const
ERRVALUE ConvertReverse (const DPOINT3D *ipoints, DPOINT3D *opoints, INT32 NumPoints) const
ERRVALUE ConvertReverse (const DPOINT2D *ipoints, DPOINT2D *opoints, INT32 NumPoints) const
ERRVALUE ConvertReverse (const DPOINT3DH &ipoint, DPOINT3DH &opoint) const
ERRVALUE ConvertReverse (const DPOINT3D &ipoint, DPOINT3D &opoint) const
ERRVALUE ConvertReverse (const DPOINT2D &ipoint, DPOINT2D &opoint) const
ERRVALUE ConvertReverseDense (INT32 NumPoints, int NumDim, const double *ipoint, double tolerance, COORDOP_TARGET &target) const
 COORDOP (const COORDOP &rhs)
const COORDOP_IMPL::LINEARGetLinear () const
int GetLinearApproximation (COORDOP &CoordOp, COORDOP_DIRECTION direction, const REGION2D &region, double tolerance) const
const COORDREFSYSGetSourceCRS () const
const COORDREFSYSGetTargetCRS () const
bool HasForward () const
bool HasReverse () const
bool IsBidirectional () const
bool IsIdentity () const
bool IsLinear () const
bool IsList () const
COORDOPoperator= (const COORDOP &rhs)
void ReverseDirection ()
 ~COORDOP ()

Detailed Description

Coordinate Operation (conversion/transformation) service.

Coordinate operatiosn instances are reference-counted so that assignment and list manipulation is efficient and requires no additional memory allocation.

Definition at line 645 of file coordop.h.


Constructor & Destructor Documentation

SPATREF::COORDOP::COORDOP ( const COORDOP rhs  ) 

Copy constructor.

SPATREF::COORDOP::~COORDOP (  ) 

Destructor.


Member Function Documentation

ERRVALUE SPATREF::COORDOP::ConvertForward ( const DPOINT3DH ipoints,
DPOINT3DH opoints,
INT32  NumPoints 
) const [inline]

Perform forward operation on DPOINT3DH array.

Parameters:
ipoints  Input point array
opoints  Output point array
NumPoints  Number of points to convert

Definition at line 695 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertForward ( const DPOINT3D ipoints,
DPOINT3D opoints,
INT32  NumPoints 
) const [inline]

Perform forward operation on DPOINT3D array.

Parameters:
ipoints  Input point array
opoints  Output point array
NumPoints  Number of points to convert

Definition at line 688 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertForward ( const DPOINT2D ipoints,
DPOINT2D opoints,
INT32  NumPoints 
) const [inline]

Perform forward operation on DPOINT2D array.

Parameters:
ipoints  Input point array
opoints  Output point array
NumPoints  Number of points to convert

Definition at line 681 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertForward ( const DPOINT3DH ipoint,
DPOINT3DH opoint 
) const [inline]

Perform forward operation on DPOINT3DH.

Parameters:
ipoint  Input point
opoint  Output point

Definition at line 675 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertForward ( const DPOINT3D ipoint,
DPOINT3D opoint 
) const [inline]

Perform forward operation on DPOINT3D.

Parameters:
ipoint  Input point
opoint  Output point

Definition at line 669 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertForward ( const DPOINT2D ipoint,
DPOINT2D opoint 
) const [inline]

Perform forward operation on DPOINT2D.

Parameters:
ipoint  Input point
opoint  Output point

Definition at line 663 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertForwardDense ( INT32  NumPoints,
int  NumDim,
const double *  ipoint,
double  tolerance,
COORDOP_TARGET target 
) const [inline]

Perform forward operation with possible densification.

Parameters:
NumPoints  Number of points
NumDim  Number of dimensions (usually 2, 3 or 4 (indicates homogeneous))
ipoint  Input point array of specified dimension
tolerance  Densification tolerance in target coordinates
target  Target for converted points

Definition at line 702 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertReverse ( const DPOINT3DH ipoints,
DPOINT3DH opoints,
INT32  NumPoints 
) const [inline]

Perform reverse operation on DPOINT3DH array.

Parameters:
ipoints  Input point array
opoints  Output point array
NumPoints  Number of points to convert

Definition at line 743 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertReverse ( const DPOINT3D ipoints,
DPOINT3D opoints,
INT32  NumPoints 
) const [inline]

Perform reverse operation on DPOINT3D array.

Parameters:
ipoints  Input point array
opoints  Output point array
NumPoints  Number of points to convert

Definition at line 736 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertReverse ( const DPOINT2D ipoints,
DPOINT2D opoints,
INT32  NumPoints 
) const [inline]

Perform reverse operation on DPOINT2D array.

Parameters:
ipoints  Input point array
opoints  Output point array
NumPoints  Number of points to convert

Definition at line 729 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertReverse ( const DPOINT3DH ipoint,
DPOINT3DH opoint 
) const [inline]

Perform reverse operation on DPOINT3DH.

Parameters:
ipoint  Input point
opoint  Output point

Definition at line 723 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertReverse ( const DPOINT3D ipoint,
DPOINT3D opoint 
) const [inline]

Perform reverse operation on DPOINT3D.

Parameters:
ipoint  Input point
opoint  Output point

Definition at line 717 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertReverse ( const DPOINT2D ipoint,
DPOINT2D opoint 
) const [inline]

Perform reverse operation on DPOINT2D.

Parameters:
ipoint  Input point
opoint  Output point

Definition at line 711 of file coordop.h.

ERRVALUE SPATREF::COORDOP::ConvertReverseDense ( INT32  NumPoints,
int  NumDim,
const double *  ipoint,
double  tolerance,
COORDOP_TARGET target 
) const [inline]

Perform reverse operation with possible densification.

Parameters:
NumPoints  Number of points
NumDim  Number of dimensions (usually 2, 3 or 4 (indicates homogeneous))
ipoint  Input point array of specified dimension
tolerance  Densification tolerance in target coordinates
target  Target for converted points

Definition at line 750 of file coordop.h.

const COORDOP_IMPL::LINEAR& SPATREF::COORDOP::GetLinear (  )  const [inline]

Get linear implementation instance for subsequent fast inline conversion.

Note: If IsLinear() returns false then the returned LINEAR operation will not be valid.

Definition at line 760 of file coordop.h.

int SPATREF::COORDOP::GetLinearApproximation ( COORDOP CoordOp,
COORDOP_DIRECTION  direction,
const REGION2D region,
double  tolerance 
) const

Attempt to get linear approximation to operation within specified tolerance.

Regardless of direction specified, any returned LINEAR operation will have the same direction as the operation instance itself.

Returns:
TRUE if returned operation is linear, FALSE if not, < 0 if error.
Parameters:
CoordOp  Coordinate operation returned
direction  Direction in which to perform approximation
region  Region in 'input' CRS based on specified direction
tolerance  Tolerance in 'output' CRS based on specified direction

const COORDREFSYS& SPATREF::COORDOP::GetSourceCRS (  )  const [inline]

Get source coordinate reference system description.

Definition at line 775 of file coordop.h.

const COORDREFSYS& SPATREF::COORDOP::GetTargetCRS (  )  const [inline]

Get target coordinate reference system description.

Definition at line 779 of file coordop.h.

bool SPATREF::COORDOP::HasForward (  )  const [inline]

Determine if forward operation is supported.

Definition at line 783 of file coordop.h.

bool SPATREF::COORDOP::HasReverse (  )  const [inline]

Determine if reverse operation is supported.

Definition at line 787 of file coordop.h.

bool SPATREF::COORDOP::IsBidirectional (  )  const [inline]

Determine if both forward and reverse operations are supported.

Definition at line 791 of file coordop.h.

bool SPATREF::COORDOP::IsIdentity ( void   )  const [inline]

Definition at line 794 of file coordop.h.

bool SPATREF::COORDOP::IsLinear (  )  const [inline]

Determine if linear transformation available.

Definition at line 798 of file coordop.h.

bool SPATREF::COORDOP::IsList (  )  const [inline]

Determine if operation uses a list.

Definition at line 802 of file coordop.h.

COORDOP& SPATREF::COORDOP::operator= ( const COORDOP rhs  ) 

Assignment.

Reimplemented in SPATREF::COORDOP_LIST.

void SPATREF::COORDOP::ReverseDirection (  ) 

Reverse direction of operation.


The documentation for this class was generated from the following file:
Generated on Thu Apr 26 04:19:39 2007 for TNTsdk by  doxygen 1.5.2