API Reference OSGeo FDO Provider for GDAL

FdoGrfpRasterGeoreferenceLocation.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (C) 2004-2006  Autodesk, Inc.
00003  * 
00004  * This library is free software; you can redistribute it and/or
00005  * modify it under the terms of version 2.1 of the GNU Lesser
00006  * General Public License as published by the Free Software Foundation.
00007  * 
00008  * This library is distributed in the hope that it will be useful,
00009  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00010  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00011  * Lesser General Public License for more details.
00012  * 
00013  * You should have received a copy of the GNU Lesser General Public
00014  * License along with this library; if not, write to the Free Software
00015  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00016  *
00017  */
00018 /// <library>GRFPOverrides.lib</library>
00019 
00020 #ifndef FDOGRFPRASTERGEOREFERENCELOCATION_H
00021 #define FDOGRFPRASTERGEOREFERENCELOCATION_H
00022 
00023 #ifdef _WIN32
00024 #pragma once
00025 #endif //_WIN32
00026 
00027 /// <summary> 
00028 /// The FdoGrfpRasterImageDefinition class defines a raster image which contains a name 
00029 /// and the extents of the raster image.
00030 /// </summary>
00031 class FdoGrfpRasterGeoreferenceLocation : public FdoDisposable
00032 {
00033 public:
00034     /// <summary>Constructs a new Raster Image Georeference Location.</summary>
00035     /// <returns>Returns the newly created FdoGrfpRasterGeoreferenceLocation instance.</returns> 
00036     FDOGRFP_API static FdoGrfpRasterGeoreferenceLocation* Create();
00037 
00038     /// <summary>Retrieves the X insertion point of the raster image.</summary>
00039     /// <returns>Returns the X insertion point.</returns> 
00040     /// <remarks> X coordinate (in ground units) of the center of the upper 
00041     /// left pixel of the image; the (1, 1) or (0, 0) pixel depending on convention.</remarks>
00042     FDOGRFP_API FdoDouble GetXInsertionPoint (void) const;
00043 
00044     /// <summary>Sets the X insertion point of the raster image.</summary>
00045     /// <param name="point">Input the X insertion point of the image.</param>
00046     /// <returns>Returns nothing.</returns> 
00047     /// <remarks> X coordinate (in ground units) of the center of the upper 
00048     /// left pixel of the image; the (1, 1) or (0, 0) pixel depending on convention.</remarks>
00049     FDOGRFP_API void SetXInsertionPoint (FdoDouble point);
00050 
00051     /// <summary>Retrieves the Y insertion point of the raster image.</summary>
00052     /// <returns>Returns the Y insertion point.</returns> 
00053     /// <remarks> Y coordinate (in ground units) of the center of the upper 
00054     /// left pixel of the image; the (1, 1) or (0, 0) pixel depending on convention.</remarks>
00055     FDOGRFP_API FdoDouble GetYInsertionPoint (void) const;
00056 
00057     /// <summary>Sets the Y insertion point of the raster image.</summary>
00058     /// <param name="point">Input the Y insertion point of the image.</param>
00059     /// <returns>Returns nothing.</returns> 
00060     /// <remarks> Y coordinate (in ground units) of the center of the upper 
00061     /// left pixel of the image; the (1, 1) or (0, 0) pixel depending on convention.</remarks>
00062     FDOGRFP_API void SetYInsertionPoint (FdoDouble point);
00063 
00064     /// <summary>Retrieves the X resolution of the raster image.</summary>
00065     /// <returns>Returns the Resolution angle.</returns> 
00066     /// <remarks> Cell size in the X direction. Usually a positive number. </remarks>
00067     FDOGRFP_API FdoDouble GetXResolution (void) const;
00068 
00069     /// <summary>Sets the X Resolution of the raster image.</summary>
00070     /// <param name="Resolution">Input the Resolution angle in degrees.</param>
00071     /// <returns>Returns nothing.</returns> 
00072     /// <remarks> Cell size in the X direction. Usually a positive number. </remarks>
00073     FDOGRFP_API void SetXResolution (FdoDouble Resolution);
00074 
00075     /// <summary>Retrieves the Y Resolution of the raster image.</summary>
00076     /// <returns>Returns the Resolution angle.</returns> 
00077     /// <remarks> Cell size in the Y direction. Usually a negative number in order to convert 
00078     /// from image row numbering (increasing from the top down) to map coordinates (increasing 
00079     /// from the bottom up). For a rectified image, ResolutionY must be equal to ResolutionX and 
00080     /// of opposite sign. </remarks>
00081     FDOGRFP_API FdoDouble GetYResolution (void) const;
00082 
00083     /// <summary>Sets the Y Resolution of the raster image.</summary>
00084     /// <param name="resolution">Input the resolution of the .</param>
00085     /// <returns>Returns nothing.</returns> 
00086     /// <remarks> Cell size in the Y direction. Usually a negative number in order to convert 
00087     /// from image row numbering (increasing from the top down) to map coordinates (increasing 
00088     /// from the bottom up). For a rectified image, ResolutionY must be equal to ResolutionX and 
00089     /// of opposite sign. </remarks>
00090     FDOGRFP_API void SetYResolution (FdoDouble resolution);
00091 
00092     /// <summary>Retrieves the X Rotation of the raster image.</summary>
00093     /// <returns>Returns the rotation angle.</returns> 
00094     FDOGRFP_API FdoDouble GetXRotation (void) const;
00095 
00096     /// <summary>Sets the X Rotation of the raster image.</summary>
00097     /// <param name="rotation">Input the rotation angle in degrees.</param>
00098     /// <returns>Returns nothing.</returns> 
00099     FDOGRFP_API void SetXRotation (FdoDouble rotation);
00100 
00101     /// <summary>Retrieves the Y Rotation (Skew) of the raster image.</summary>
00102     /// <returns>Returns the rotation angle.</returns> 
00103     FDOGRFP_API FdoDouble GetYRotation (void) const;
00104 
00105     /// <summary>Sets the Y Rotation (Skew) of the raster image.</summary>
00106     /// <param name="rotation">Input the rotation angle in degrees.</param>
00107     /// <returns>Returns nothing.</returns> 
00108     FDOGRFP_API void SetYRotation (FdoDouble rotation);
00109 
00110 protected:
00111     FDOGRFP_API FdoGrfpRasterGeoreferenceLocation(void);
00112     FDOGRFP_API virtual ~FdoGrfpRasterGeoreferenceLocation(void);
00113     void Dispose(void);
00114 
00115 private:
00116     FdoDouble m_resX;
00117     FdoDouble m_resY;
00118     FdoDouble m_insX;
00119     FdoDouble m_insY;
00120     FdoDouble m_rotX;
00121     FdoDouble m_rotY; 
00122 //DOM-IGNORE-END
00123 };
00124 
00125 /// <summary> FdoGrfpRasterImageDefinitionP is a FdoPtr on FdoGrfpRasterImageDefinition, provided for convenience. </summary>
00126 typedef FdoPtr<FdoGrfpRasterGeoreferenceLocation> FdoGrfpRasterGeoreferenceLocationP;
00127 
00128 #endif // FDOGRFPRASTERGEOREFERENCELOCATION_H

Comments?