OSGeo FDO Provider for Raster API Reference

OSGeo FDO Provider for Raster API

API Reference OSGeo FDO Provider for Raster

FdoRfpRasterGeoreferenceLocation.h

Go to the documentation of this file.
00001 /*
00002  * (C) Copyright 2004 by Autodesk, Inc. All Rights Reserved.
00003  *
00004  * By using this code, you are agreeing to the terms and conditions of
00005  * the License Agreement included in the documentation for this code.
00006  *
00007  * AUTODESK MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AS TO THE
00008  * CORRECTNESS OF THIS CODE OR ANY DERIVATIVE WORKS WHICH INCORPORATE
00009  * IT. AUTODESK PROVIDES THE CODE ON AN "AS-IS" BASIS AND EXPLICITLY
00010  * DISCLAIMS ANY LIABILITY, INCLUDING CONSEQUENTIAL AND INCIDENTAL
00011  * DAMAGES FOR ERRORS, OMISSIONS, AND OTHER PROBLEMS IN THE CODE.
00012  *
00013  * Use, duplication, or disclosure by the U.S. Government is subject
00014  * to restrictions set forth in FAR 52.227-19 (Commercial Computer
00015  * Software Restricted Rights) and DFAR 252.227-7013(c)(1)(ii)
00016  * (Rights in Technical Data and Computer Software), as applicable.
00017  *
00018  */
00019 #ifndef FDORFPRASTERGEOREFERENCELOCATION_H
00020 #define FDORFPRASTERGEOREFERENCELOCATION_H
00021 
00022 #ifdef _WIN32
00023 #pragma once
00024 #endif //_WIN32
00025 
00026 /// \brief
00027 ///  
00028 /// The FdoRfpRasterImageDefinition class defines a raster image which contains a name 
00029 /// and the extents of the raster image.
00030 class FdoRfpRasterGeoreferenceLocation : public FdoDisposable
00031 {
00032 public:
00033     /// \brief
00034     /// Constructs a new Raster Image Georeference Location.
00035     /// 
00036     /// \return
00037     /// Returns the newly created FdoRfpRasterGeoreferenceLocation instance.
00038     /// 
00039     FDORFP_API static FdoRfpRasterGeoreferenceLocation* Create();
00040 
00041     /// \brief
00042     /// Retrieves the X insertion point of the raster image.
00043     /// 
00044     /// \remarks
00045     ///  X coordinate (in ground units) of the center of the upper 
00046     /// left pixel of the image; the (1, 1) or (0, 0) pixel depending on convention.
00047     /// 
00048     /// \return
00049     /// Returns the X insertion point.
00050     /// 
00051     FDORFP_API FdoDouble GetXInsertionPoint (void) const;
00052 
00053     /// \brief
00054     /// Sets the X insertion point of the raster image.
00055     /// 
00056     /// \remarks
00057     ///  X coordinate (in ground units) of the center of the upper 
00058     /// left pixel of the image; the (1, 1) or (0, 0) pixel depending on convention.
00059     /// 
00060     /// \param point 
00061     /// Input the X insertion point of the image.
00062     /// 
00063     /// \return
00064     /// Returns nothing.
00065     /// 
00066     FDORFP_API void SetXInsertionPoint (FdoDouble point);
00067 
00068     /// \brief
00069     /// Retrieves the Y insertion point of the raster image.
00070     /// 
00071     /// \remarks
00072     ///  Y coordinate (in ground units) of the center of the upper 
00073     /// left pixel of the image; the (1, 1) or (0, 0) pixel depending on convention.
00074     /// 
00075     /// \return
00076     /// Returns the Y insertion point.
00077     /// 
00078     FDORFP_API FdoDouble GetYInsertionPoint (void) const;
00079 
00080     /// \brief
00081     /// Sets the Y insertion point of the raster image.
00082     /// 
00083     /// \remarks
00084     ///  Y coordinate (in ground units) of the center of the upper 
00085     /// left pixel of the image; the (1, 1) or (0, 0) pixel depending on convention.
00086     /// 
00087     /// \param point 
00088     /// Input the Y insertion point of the image.
00089     /// 
00090     /// \return
00091     /// Returns nothing.
00092     /// 
00093     FDORFP_API void SetYInsertionPoint (FdoDouble point);
00094 
00095     /// \brief
00096     /// Retrieves the X resolution of the raster image.
00097     /// 
00098     /// \remarks
00099     ///  Cell size in the X direction. Usually a positive number. 
00100     /// 
00101     /// \return
00102     /// Returns the Resolution angle.
00103     /// 
00104     FDORFP_API FdoDouble GetXResolution (void) const;
00105 
00106     /// \brief
00107     /// Sets the X Resolution of the raster image.
00108     /// 
00109     /// \remarks
00110     ///  Cell size in the X direction. Usually a positive number. 
00111     /// 
00112     /// \param Resolution 
00113     /// Input the Resolution angle in degrees.
00114     /// 
00115     /// \return
00116     /// Returns nothing.
00117     /// 
00118     FDORFP_API void SetXResolution (FdoDouble Resolution);
00119 
00120     /// \brief
00121     /// Retrieves the Y Resolution of the raster image.
00122     /// 
00123     /// \remarks
00124     ///  Cell size in the Y direction. Usually a negative number in order to convert 
00125     /// from image row numbering (increasing from the top down) to map coordinates (increasing 
00126     /// from the bottom up). For a rectified image, ResolutionY must be equal to ResolutionX and 
00127     /// of opposite sign. 
00128     /// 
00129     /// \return
00130     /// Returns the Resolution angle.
00131     /// 
00132     FDORFP_API FdoDouble GetYResolution (void) const;
00133 
00134     /// \brief
00135     /// Sets the Y Resolution of the raster image.
00136     /// 
00137     /// \remarks
00138     ///  Cell size in the Y direction. Usually a negative number in order to convert 
00139     /// from image row numbering (increasing from the top down) to map coordinates (increasing 
00140     /// from the bottom up). For a rectified image, ResolutionY must be equal to ResolutionX and 
00141     /// of opposite sign. 
00142     /// 
00143     /// \param resolution 
00144     /// Input the resolution of the .
00145     /// 
00146     /// \return
00147     /// Returns nothing.
00148     /// 
00149     FDORFP_API void SetYResolution (FdoDouble resolution);
00150 
00151     /// \brief
00152     /// Retrieves the X Rotation of the raster image.
00153     /// 
00154     /// \return
00155     /// Returns the rotation angle.
00156     /// 
00157     FDORFP_API FdoDouble GetXRotation (void) const;
00158 
00159     /// \brief
00160     /// Sets the X Rotation of the raster image.
00161     /// 
00162     /// \param rotation 
00163     /// Input the rotation angle in degrees.
00164     /// 
00165     /// \return
00166     /// Returns nothing.
00167     /// 
00168     FDORFP_API void SetXRotation (FdoDouble rotation);
00169 
00170     /// \brief
00171     /// Retrieves the Y Rotation (Skew) of the raster image.
00172     /// 
00173     /// \return
00174     /// Returns the rotation angle.
00175     /// 
00176     FDORFP_API FdoDouble GetYRotation (void) const;
00177 
00178     /// \brief
00179     /// Sets the Y Rotation (Skew) of the raster image.
00180     /// 
00181     /// \param rotation 
00182     /// Input the rotation angle in degrees.
00183     /// 
00184     /// \return
00185     /// Returns nothing.
00186     /// 
00187     FDORFP_API void SetYRotation (FdoDouble rotation);
00188 
00189 protected:
00190     FDORFP_API FdoRfpRasterGeoreferenceLocation(void);
00191     FDORFP_API virtual ~FdoRfpRasterGeoreferenceLocation(void);
00192     void Dispose(void);
00193 
00194 private:
00195     FdoDouble m_resX;
00196     FdoDouble m_resY;
00197     FdoDouble m_insX;
00198     FdoDouble m_insY;
00199     FdoDouble m_rotX;
00200     FdoDouble m_rotY; 
00201 /// \endcond
00202 
00203 };
00204 
00205 /// \brief
00206 ///  FdoRfpRasterImageDefinitionP is a FdoPtr on FdoRfpRasterImageDefinition, provided for convenience. 
00207 typedef FdoPtr<FdoRfpRasterGeoreferenceLocation> FdoRfpRasterGeoreferenceLocationP;
00208 
00209 #endif // FDORFPRASTERGEOREFERENCELOCATION_H
00210 
00211 

Comments?