SPATREF::COORDOP_IMPL Class Reference
Base for coordinate operation implementation.
More...
#include <mi32/coordop.h>
List of all members.
Classes |
| class | LINEAR |
Public Member Functions |
| virtual | ~COORDOP_IMPL () |
| void | AddRef () |
| int | ComputeLinearApproximation (COORDOP_DIRECTION direction, const REGION2D ®ion, double tolerance, LINEAR &Linear) const |
| 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 | 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 | ConvertReverseDense (INT32 NumPoints, int NumDim, const double *ipoint, double tolerance, COORDOP_TARGET &target) const |
| const LINEAR & | GetLinear () const |
| const COORDREFSYS & | GetSourceCRS () const |
| const COORDREFSYS & | GetTargetCRS () const |
| bool | HasForward () const |
| bool | HasReverse () const |
| bool | IsBidirectional () const |
| bool | IsLinear () const |
| void | Release () |
Protected Types |
| enum | TYPE { TYPE_Identity,
TYPE_Single,
TYPE_List
} |
Protected Member Functions |
| | COORDOP_IMPL (const COORDOP_IMPL &rhs) |
| | COORDOP_IMPL (TYPE type, bool IsLinear=false) |
| bool | GetDisableRangeCheck () const |
| TYPE | GetType () const |
| void | SetDisableRangeCheck (bool DisableRangeCheck) |
| void | SetLinear (const LINEAR &Linear) |
| void | SetNonLinear () |
| void | SetSourceCRS (const COORDREFSYS &SourceCRS) |
| void | SetTargetCRS (const COORDREFSYS &TargetCRS) |
| void | SetValidDirections (bool hasForward, bool hasReverse) |
Private Member Functions |
| virtual ERRVALUE | v_ConvertForward (const DPOINT3DH *ipoints, DPOINT3DH *opoints, INT32 NumPoints) const =0 |
| virtual ERRVALUE | v_ConvertForward (const DPOINT3D *ipoints, DPOINT3D *opoints, INT32 NumPoints) const =0 |
| virtual ERRVALUE | v_ConvertForward (const DPOINT2D *ipoints, DPOINT2D *opoints, INT32 NumPoints) const =0 |
| virtual ERRVALUE | v_ConvertReverse (const DPOINT3DH *ipoints, DPOINT3DH *opoints, INT32 NumPoints) const =0 |
| virtual ERRVALUE | v_ConvertReverse (const DPOINT3D *ipoints, DPOINT3D *opoints, INT32 NumPoints) const =0 |
| virtual ERRVALUE | v_ConvertReverse (const DPOINT2D *ipoints, DPOINT2D *opoints, INT32 NumPoints) const =0 |
| virtual COORDOP_IMPL * | v_Copy () const =0 |
| virtual void | v_Reverse ()=0 |
Detailed Description
Base for coordinate operation implementation.
Member Enumeration Documentation
- Enumerator:
| TYPE_Identity |
|
| TYPE_Single |
|
| TYPE_List |
|
Constructor & Destructor Documentation
| virtual SPATREF::COORDOP_IMPL::~COORDOP_IMPL |
( |
|
) |
[virtual] |
| SPATREF::COORDOP_IMPL::COORDOP_IMPL |
( |
TYPE |
type, |
|
|
bool |
IsLinear = false | |
|
) |
| | [explicit, protected] |
| SPATREF::COORDOP_IMPL::COORDOP_IMPL |
( |
const COORDOP_IMPL & |
rhs |
) |
[protected] |
Member Function Documentation
| void SPATREF::COORDOP_IMPL::AddRef |
( |
|
) |
[inline] |
Compute approximated linear transformation if within specified tolerance.
Regardless of direction specified, any returned LINEAR operation will have the same direction as the operation instance itself.
- Returns:
- TRUE if approximation valid, FALSE if not, < 0 if error
- Parameters:
-
| 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 |
| Linear | Linear approximation returned if available |
Perform forward operation on DPOINT3DH array.
- Parameters:
-
| ipoints | Input point array |
| opoints | Output point array |
| NumPoints | Number of points to convert |
Perform forward operation on DPOINT3D array.
- Parameters:
-
| ipoints | Input point array |
| opoints | Output point array |
| NumPoints | Number of points to convert |
Perform forward operation on DPOINT2D array.
- Parameters:
-
| ipoints | Input point array |
| opoints | Output point array |
| NumPoints | Number of points to convert |
| ERRVALUE SPATREF::COORDOP_IMPL::ConvertForwardDense |
( |
INT32 |
NumPoints, |
|
|
int |
NumDim, |
|
|
const double * |
ipoint, |
|
|
double |
tolerance, |
|
|
COORDOP_TARGET & |
target | |
|
) |
| | const |
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 |
Perform reverse operation on DPOINT3DH array.
- Parameters:
-
| ipoints | Input point array |
| opoints | Output point array |
| NumPoints | Number of points to convert |
Perform reverse operation on DPOINT3D array.
- Parameters:
-
| ipoints | Input point array |
| opoints | Output point array |
| NumPoints | Number of points to convert |
Perform reverse operation on DPOINT2D array.
- Parameters:
-
| ipoints | Input point array |
| opoints | Output point array |
| NumPoints | Number of points to convert |
| ERRVALUE SPATREF::COORDOP_IMPL::ConvertReverseDense |
( |
INT32 |
NumPoints, |
|
|
int |
NumDim, |
|
|
const double * |
ipoint, |
|
|
double |
tolerance, |
|
|
COORDOP_TARGET & |
target | |
|
) |
| | const |
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 |
| bool SPATREF::COORDOP_IMPL::GetDisableRangeCheck |
( |
|
) |
const [inline, protected] |
| const LINEAR& SPATREF::COORDOP_IMPL::GetLinear |
( |
|
) |
const [inline] |
Get linear implementation if operation is linear.
| const COORDREFSYS& SPATREF::COORDOP_IMPL::GetSourceCRS |
( |
|
) |
const [inline] |
Get source coordinate reference system description.
| const COORDREFSYS& SPATREF::COORDOP_IMPL::GetTargetCRS |
( |
|
) |
const [inline] |
Get target coordinate reference system description.
| TYPE SPATREF::COORDOP_IMPL::GetType |
( |
|
) |
const [inline, protected] |
| bool SPATREF::COORDOP_IMPL::HasForward |
( |
|
) |
const [inline] |
Determine if forward operation is supported.
| bool SPATREF::COORDOP_IMPL::HasReverse |
( |
|
) |
const [inline] |
Determine if reverse operation is supported.
| bool SPATREF::COORDOP_IMPL::IsBidirectional |
( |
|
) |
const [inline] |
Determine if both forward and reverse operations are supported.
| bool SPATREF::COORDOP_IMPL::IsLinear |
( |
|
) |
const [inline] |
Determine if operation is linear.
| void SPATREF::COORDOP_IMPL::Release |
( |
|
) |
|
| void SPATREF::COORDOP_IMPL::SetDisableRangeCheck |
( |
bool |
DisableRangeCheck |
) |
[inline, protected] |
| void SPATREF::COORDOP_IMPL::SetLinear |
( |
const LINEAR & |
Linear |
) |
[inline, protected] |
Set to use specified linear implementation.
| void SPATREF::COORDOP_IMPL::SetNonLinear |
( |
|
) |
[inline, protected] |
Set operation to be nonlinear.
| void SPATREF::COORDOP_IMPL::SetSourceCRS |
( |
const COORDREFSYS & |
SourceCRS |
) |
[inline, protected] |
Set source coordinate reference system.
| void SPATREF::COORDOP_IMPL::SetTargetCRS |
( |
const COORDREFSYS & |
TargetCRS |
) |
[inline, protected] |
Set target coordinate reference system.
| void SPATREF::COORDOP_IMPL::SetValidDirections |
( |
bool |
hasForward, |
|
|
bool |
hasReverse | |
|
) |
| | [inline, protected] |
Perform forward operation on DPOINT3DH array.
| virtual ERRVALUE SPATREF::COORDOP_IMPL::v_ConvertForward |
( |
const DPOINT3D * |
ipoints, |
|
|
DPOINT3D * |
opoints, |
|
|
INT32 |
NumPoints | |
|
) |
| | const [private, pure virtual] |
Perform forward operation on DPOINT3D array.
| virtual ERRVALUE SPATREF::COORDOP_IMPL::v_ConvertForward |
( |
const DPOINT2D * |
ipoints, |
|
|
DPOINT2D * |
opoints, |
|
|
INT32 |
NumPoints | |
|
) |
| | const [private, pure virtual] |
Perform forward operation on DPOINT2D array.
Perform reverse operation on DPOINT3DH array.
| virtual ERRVALUE SPATREF::COORDOP_IMPL::v_ConvertReverse |
( |
const DPOINT3D * |
ipoints, |
|
|
DPOINT3D * |
opoints, |
|
|
INT32 |
NumPoints | |
|
) |
| | const [private, pure virtual] |
Perform reverse operation on DPOINT3D array.
| virtual ERRVALUE SPATREF::COORDOP_IMPL::v_ConvertReverse |
( |
const DPOINT2D * |
ipoints, |
|
|
DPOINT2D * |
opoints, |
|
|
INT32 |
NumPoints | |
|
) |
| | const [private, pure virtual] |
Perform reverse operation on DPOINT2D array.
| virtual COORDOP_IMPL* SPATREF::COORDOP_IMPL::v_Copy |
( |
|
) |
const [private, pure virtual] |
Construct copy of instance.
| virtual void SPATREF::COORDOP_IMPL::v_Reverse |
( |
|
) |
[private, pure virtual] |
Reverse operation direction.
The documentation for this class was generated from the following file: