Main Page | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members

Orientation.h

Go to the documentation of this file.
00001 // SRM_SDK_VER_GOES_HERE
00002 

00004 

00006 
00007 // SRM_OTHERS_GOES_HERE
00008 
00009 // $Id: Orientation.h,v 1.11 2006/06/21 18:03:47 shend Exp $
00010 
00011 #ifndef _Orientation_h
00012 #define _Orientation_h
00013 
00019 #include "BaseSRF.h" 
00020 #include "Exception.h"
00021 
00022 namespace srm
00023 {
00024 
00025 
00030 class EXPORT_SRM_CPP_DLL Orientation
00031 {
00032 public:
00033 
00035     BaseSRF *getSRF() const {
00036         return _srf;
00037     }
00038 
00042     void getRefCoord( Coord3D &coord ) const;
00043     
00045     void getMatrix( Matrix3x3 mat ) const;
00046     
00050     void getDirectionComp1( Direction &dir ) const;
00051 
00055     void getDirectionComp2( Direction &dir ) const;
00056 
00060     void getDirectionComp3( Direction &dir ) const;
00061 
00066     void getDirectionComp( SRM_Integer index, Direction &dir ) const;
00067 
00071     void setDirectionComp( const Direction &dir1, 
00072                const Direction &dir2, 
00073                const Direction &dir3 );
00074 
00079     void setDirectionComp( const SRM_Integer index,
00080                const Direction   &dir );
00081 
00083     void setMatrix( const Matrix3x3 mat );
00084 
00086     bool isEqual( const Orientation &ori ) const;
00087 
00089     Orientation* makeCopy() const;
00090 
00091 protected:
00092     
00093     friend class BaseSRF_3D;
00094 
00098     Orientation( BaseSRF *srf, 
00099          const Vector3 ref_coord,
00100          const Matrix3x3 matrix );
00101 
00103     virtual ~Orientation() {
00104       _srf->release();
00105     }
00106 
00107     Orientation &operator =( const Orientation & ) { return *this; } 
00108 
00110     BaseSRF *_srf;
00112     Vector3 _ref_coord;
00114     Matrix3x3 _mat;
00115 };
00116 
00117 } // namespace srm
00118 
00119 #endif // _Orientation_h
00120 

Spatial Reference Model C++ API Version 4.1 - 26 Jun 2006
Copyright © 2006 SEDRIS Docs by Doxygen 1.3.2