#include <BaseSRF.h>
Inheritance diagram for srm::BaseSRF_3D:


Public Member Functions | |
| virtual bool | isA (SRF_ClassType type) const |
| Returns true if this SRF is of the given class type. | |
| virtual Coord3D * | createCoordinate3D (SRM_Long_Float coord_comp1, SRM_Long_Float coord_comp2, SRM_Long_Float coord_comp3)=0 |
| Creates a 3D coordinate object. | |
| virtual void | freeCoordinate3D (Coord3D *coord) |
| Frees a 3D coordinate object. | |
| virtual void | getCoordinate3DValues (const Coord3D &coord, SRM_Long_Float &coord_comp1, SRM_Long_Float &coord_comp2, SRM_Long_Float &coord_comp3) const |
| Retrieves the 3D coordinate component values. | |
| virtual SRM_Coordinate_Valid_Region | changeCoordinate3DSRF (const Coord3D &src_coord, Coord3D &des_coord) |
| Changes a coordinate's values to this SRF. | |
| virtual void | changeCoordinate3DArraySRF (Coord3D **src_coord_array, SRM_Integer_Positive *index, Coord3D **des_coord_array, SRM_Coordinate_Valid_Region *region_array) |
| Changes an array of coordinate values to this SRF using tranformation object. | |
| virtual SRM_Coordinate_Valid_Region | changeCoordinate3DSRFObject (const Coord3D &src_coord, const SRM_ORM_Transformation_3D_Parameters hst, Coord3D &des_coord) |
| Changes a coordinate's values to this SRF using tranformation object. | |
| virtual void | changeCoordinate3DArraySRFObject (Coord3D **src_coord_array, const SRM_ORM_Transformation_3D_Parameters hst, SRM_Integer_Positive *index, Coord3D **des_coord_array, SRM_Coordinate_Valid_Region *region_array) |
| Changes an array of coordinate values to this SRF using tranformation object. | |
| virtual void | setValidRegion (const SRM_Integer component, const SRM_Interval_Type type, const SRM_Long_Float lower, const SRM_Long_Float upper) |
| Set the Valid Region for this SRF. | |
| virtual void | setExtendedValidRegion (const SRM_Integer component, const SRM_Interval_Type type, const SRM_Long_Float extended_lower, const SRM_Long_Float lower, const SRM_Long_Float upper, const SRM_Long_Float extended_upper) |
| Set the Extended Valid Region for this SRF. | |
| virtual void | getValidRegion (const SRM_Integer component, SRM_Interval_Type &type, SRM_Long_Float &lower, SRM_Long_Float &upper) |
| Get the Valid Region for this SRF. | |
| virtual void | getExtendedValidRegion (const SRM_Integer component, SRM_Interval_Type &type, SRM_Long_Float &extended_lower, SRM_Long_Float &lower, SRM_Long_Float &upper, SRM_Long_Float &extended_upper) |
| Get the Extended Valid Region for this SRF. | |
| virtual Direction * | createDirection (const Coord3D &ref_coord, const SRM_Vector_3D vec) |
| Creates a direction object. | |
| virtual Direction * | createDirection (const Coord3D &ref_coord, const SRM_Long_Float vectorComp1, const SRM_Long_Float vectorComp2, const SRM_Long_Float vectorComp3) |
| Creates a direction object. | |
| virtual Direction * | createDirection () |
| Creates a direction object. | |
| virtual void | freeDirection (Direction *direction) |
| Frees a direction object. | |
| virtual void | getDirectionValues (const Direction &direction, Coord3D &ref_coord, SRM_Vector_3D vec) const |
| Retrieves the direction component values. | |
| virtual SRM_Coordinate_Valid_Region | changeDirectionSRF (const Direction &src_dir, Direction &des_dir) |
| Changes a direction's values to this SRF. | |
| void | changeDirectionArraySRF (Direction **src_direction_array, SRM_Integer_Positive *index, Direction **des_direction_array, SRM_Coordinate_Valid_Region *region_array) |
| Changes a direction's values to this SRF using tranformation object. | |
| virtual SRM_Coordinate_Valid_Region | changeDirectionSRFObject (const Direction &src_dir, const SRM_ORM_Transformation_3D_Parameters hst, Direction &des_dir) |
| Changes a direction's values to this SRF using tranformation object. | |
| void | changeDirectionArraySRFObject (Direction **src_direction_array, const SRM_ORM_Transformation_3D_Parameters hst, SRM_Integer_Positive *index, Direction **des_direction_array, SRM_Coordinate_Valid_Region *region_array) |
| Changes a direction's values to this SRF using tranformation object. | |
| virtual SRM_Coordinate_Valid_Region | checkDirection (const Direction &direction) |
| Check a direction in this SRF. | |
| void | computeSRFOrientation (const Coord3D &src_ref_loc, const Coord3D &tgt_ref_loc, Orientation &out_ori) |
| This method sets the values of the Orientation object representing the orientation of the source srf (at the source reference location) with respect to this (the target) srf (at the target reference location). | |
| void | getLocalTangentFrameSRFParameters (const Coord3D &ref_loc, SRM_LCE_3D_Parameters <f) |
| Computes the parameters corresponding to the local tangent frame at the input reference location. | |
| virtual SRF_LococentricEuclidean3D * | createLococentricEuclidean3DSRF (const Coord3D &lococentre, const Direction &primary_axis, const Direction &secondary_axis) |
| creates a Loccentric Euclidean 3D SRF whose origin in at the input lococentre and the primary and secodary axes are aligned with the input direction axes. | |
| void | transformOrientation (const Coord3D &src_ref_loc, Orientation &src_ori, const Coord3D &tgt_ref_loc, Orientation &tgt_ori) |
| Given an orientation with respect to a local tangent frame (LTF_S) associated with a reference location in the source SRF, this method computes the orientation with respect to the local tangent frame (LTF_T) associated with the specified reference location in the target SRF. | |
| SRM_Coordinate_Valid_Region | transformOrientationCommonOrigin (const Coord3D &src_ref_loc, Orientation &src_ori, Coord3D &tgt_ref_loc, Orientation &tgt_ori) |
| Given an orientation with respect to a local tangent frame (LTF_S) associated with a reference location in the source SRF, this method computes the orientation with respect to the local tangent frame (LTF_T) associated with the specified reference location in the target SRF. | |
| void | transformVectorInBodyFrame (const Coord3D &src_ref_loc, Orientation &src_ori, const SRM_Vector_3D &input_vec, const Coord3D &tgt_ref_loc, SRM_Vector_3D &tgt_vec) |
| Given a vector in a body frame (or in general any linear reference frame) and given the orientation, src_ori, of the body frame with respect to LTF_S, this method computes the vector representation of the vector with respect to LTF_T, where LTF_S is the local tangent frame associated with the source SRF at the given source reference location, and LTF_T is the local tangent frame associated with the target SRF at the given target reference location. | |
| SRM_Coordinate_Valid_Region | transformVectorInBodyFrameCommonOrigin (const Coord3D &src_ref_loc, Orientation &src_ori, const SRM_Vector_3D &input_vec, Coord3D &tgt_ref_loc, SRM_Vector_3D &tgt_vec) |
| Given a vector in a body frame (or in general any linear reference frame) and given the orientation, src_ori, of the body frame with respect to LTF_S, this method computes the vector representation of the vector with respect to LTF_T, where LTF_S is the local tangent frame associated with the source SRF at the given source reference location, and LTF_T is the local tangent frame associated with the target SRF at the given target reference location. | |
| void | transformVector (const Coord3D &src_ref_loc, const SRM_Vector_3D &src_vec, const Coord3D &tgt_ref_loc, SRM_Vector_3D &tgt_vec) |
| Given a vector in the local tangent frame (LTF_S) associated with a reference location in the source SRF, this method computes the vector in the local tangent frame (LTF_T) associated with the specified reference location in the tangent SRF. | |
| SRM_Coordinate_Valid_Region | transformVectorCommonOrigin (const Coord3D &src_ref_loc, const SRM_Vector_3D &src_vec, Coord3D &tgt_ref_loc, SRM_Vector_3D &tgt_vec) |
| Given a vector in the local tangent frame (LTF_S) associated with a reference location in the source SRF, this method computes the vector in the local tangent frame (LTF_T) associated with the specified reference location in the target SRF. | |
Static Public Member Functions | |
| SRM_SRFS_Code_Info | getNaturalSRFSetMemberCode (const Coord3D &src_coord, SRM_ORM_Code orm_dst, SRM_RT_Code rt_dst, SRM_SRFS_Code tgt_srfs) |
| Computes the natural SRF Set member code (region) where the 3D coordinate is located in the target SRF Set. | |
| BaseSRF_3D * | getNaturalSRFSetMember (Coord3D &src_coord, SRM_ORM_Code orm_dst, SRM_RT_Code rt_dst, SRM_SRFS_Code tgt_srfs) |
| Returns the natural SRF Set member instance that the 3D coordinate is located in the target SRF Set. | |
| SRM_Long_Float | calculateEuclideanDistance (const Coord3D &coord1, const Coord3D &coord2) |
| Returns the euclidean distance (in metres) between two 3D coordinates. | |
Protected Member Functions | |
| BaseSRF_3D (void *impl) | |
| No stack allocation. | |
| BaseSRF_3D & | operator= (const BaseSRF_3D &) |
| No copy constructor. | |
| virtual | ~BaseSRF_3D () |
| Use release(). | |
SRFs are allocated by the API, and when no longer needed they should be released by calling the release() method.
Definition at line 629 of file BaseSRF.h.
|
||||||||||||
|
Returns the euclidean distance (in metres) between two 3D coordinates.
|
|
||||||||||||||||||||
|
Changes an array of coordinate values to this SRF using tranformation object.
|
|
||||||||||||||||||||||||
|
Changes an array of coordinate values to this SRF using tranformation object.
|
|
||||||||||||
|
Changes a coordinate's values to this SRF.
Reimplemented in srm::SRF_Celestiocentric, srm::SRF_Celestiodetic, srm::SRF_LocalTangentSpaceEuclidean, srm::SRF_LococentricEuclidean3D, srm::SRF_Mercator, srm::SRF_PolarStereographic, and srm::SRF_TransverseMercator. |
|
||||||||||||||||
|
Changes a coordinate's values to this SRF using tranformation object.
|
|
||||||||||||||||||||
|
Changes a direction's values to this SRF using tranformation object.
|
|
||||||||||||||||||||||||
|
Changes a direction's values to this SRF using tranformation object.
|
|
||||||||||||
|
Changes a direction's values to this SRF.
|
|
||||||||||||||||
|
Changes a direction's values to this SRF using tranformation object.
|
|
||||||||||||||||
|
This method sets the values of the Orientation object representing the orientation of the source srf (at the source reference location) with respect to this (the target) srf (at the target reference location). The Orientation is computed as the cosine matrix of the source local tangent frame (at the source reference location) with respect to the target local tangent frame (at the target reference location).
|
|
||||||||||||||||
|
|
Creates a direction object.
|
|
||||||||||||||||||||
|
Creates a direction object.
|
|
||||||||||||
|
Creates a direction object.
|
|
||||||||||||||||
|
creates a Loccentric Euclidean 3D SRF whose origin in at the input lococentre and the primary and secodary axes are aligned with the input direction axes.
|
|
|
Frees a 3D coordinate object.
|
|
|
Frees a direction object.
|
|
||||||||||||||||||||
|
Retrieves the 3D coordinate component values.
|
|
||||||||||||||||
|
Retrieves the direction component values.
|
|
||||||||||||||||||||||||||||
|
Get the Extended Valid Region for this SRF.
|
|
||||||||||||
|
Computes the parameters corresponding to the local tangent frame at the input reference location.
|
|
||||||||||||||||||||
|
Returns the natural SRF Set member instance that the 3D coordinate is located in the target SRF Set.
|
|
||||||||||||||||||||
|
Computes the natural SRF Set member code (region) where the 3D coordinate is located in the target SRF Set.
|
|
||||||||||||||||||||
|
Get the Valid Region for this SRF.
|
|
||||||||||||||||||||||||||||
|
Set the Extended Valid Region for this SRF.
|
|
||||||||||||||||||||
|
Set the Valid Region for this SRF.
|
|
||||||||||||||||||||
|
Given an orientation with respect to a local tangent frame (LTF_S) associated with a reference location in the source SRF, this method computes the orientation with respect to the local tangent frame (LTF_T) associated with the specified reference location in the target SRF. The output orientation is computed by composing the orientation of LTF_S with respect to LTF_T with the input source orientation. The SRF invoking this method is the target SRF.
|
|
||||||||||||||||||||
|
Given an orientation with respect to a local tangent frame (LTF_S) associated with a reference location in the source SRF, this method computes the orientation with respect to the local tangent frame (LTF_T) associated with the specified reference location in the target SRF. LTF_S and LTF_T have a common origin. The output orientation is computed by composing the orientation of LTF_S with respect to LTF_T with the input source orientation. The SRF invoking this method is the target SRF.
|
|
||||||||||||||||||||
|
Given a vector in the local tangent frame (LTF_S) associated with a reference location in the source SRF, this method computes the vector in the local tangent frame (LTF_T) associated with the specified reference location in the tangent SRF. The output vector is computed by applying the orientation of LTF_S with respect to LTF_T to the source vector. The SRF invoking this method is the target SRF.
|
|
||||||||||||||||||||
|
Given a vector in the local tangent frame (LTF_S) associated with a reference location in the source SRF, this method computes the vector in the local tangent frame (LTF_T) associated with the specified reference location in the target SRF. LTF_S and LTF_T have a common origin. The output vector is computed by applying the orientation of LTF_S with respect to LTF_T to the source vector. The SRF invoking this method is the target SRF.
|
|
||||||||||||||||||||||||
|
Given a vector in a body frame (or in general any linear reference frame) and given the orientation, src_ori, of the body frame with respect to LTF_S, this method computes the vector representation of the vector with respect to LTF_T, where LTF_S is the local tangent frame associated with the source SRF at the given source reference location, and LTF_T is the local tangent frame associated with the target SRF at the given target reference location. The output vector is computed by applying the composed orientation, from the orientation of LTF_S with respect to LTF_T with the source orientation, to the source vector. This method is equivalent to applying the orientation result from the transformOrientation method to the source vector. The SRF invoking this method is the target SRF.
|
|
||||||||||||||||||||||||
|
Given a vector in a body frame (or in general any linear reference frame) and given the orientation, src_ori, of the body frame with respect to LTF_S, this method computes the vector representation of the vector with respect to LTF_T, where LTF_S is the local tangent frame associated with the source SRF at the given source reference location, and LTF_T is the local tangent frame associated with the target SRF at the given target reference location. The output vector is computed by applying the composed orientation, from the orientation of LTF_S with respect to LTF_T with the source orientation, to the source vector. This method is equivalent to applying the orientation result from the transformOrientation method to the source vector. The SRF invoking this method is the target SRF.
|
| Spatial Reference Model C++ API | Version 4.4 - December 7, 2009 |
| Copyright © 2009 SEDRIS | Docs by Doxygen 1.3.2 |