FDO .NET API Reference | Feature Data Objects |
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 00019 00020 #pragma once 00021 00022 #include "mgIDirectPosition.h" 00023 00024 class FdoIDirectPosition; 00025 00026 BEGIN_NAMESPACE_OSGEO_GEOMETRY 00027 00028 /// \ingroup (OSGeoFDOGeometry) 00029 /// \brief 00030 /// The IDirectPositionImp class is a default implementation of the IDirectPosition object. 00031 /// IDirectPosition is a simple coordinate position in any allowed dimension. 00032 /// The actual object may have several implementations, depending on the dimension and other factors. 00033 /// This is a lightweight helper type for Geometries in the Geometry package. 00034 /// Note: It does not derive from IGeometry. 00035 private __gc class IDirectPositionImp 00036 : public NAMESPACE_OSGEO_RUNTIME::Disposable, public NAMESPACE_OSGEO_GEOMETRY::IDirectPosition 00037 { 00038 public: 00039 /// \brief 00040 /// Constructs a managed object based on an unmanaged instance of the object 00041 /// 00042 /// \param unmanaged 00043 /// Input A Pointer to the unmanaged object. 00044 /// 00045 /// \param autoDelete 00046 /// Input Indicates if the constructed element should be automatically deleted 00047 /// once it no longer referenced. 00048 /// 00049 IDirectPositionImp(System::IntPtr unmanaged, System::Boolean autoDelete); 00050 00051 /// \cond DOXYGEN-IGNORE 00052 protected: 00053 System::Void ReleaseUnmanagedObject(); 00054 /// \endcond 00055 00056 public: 00057 00058 /// \brief 00059 /// Gets the X ordinate. 00060 /// 00061 /// \return 00062 /// Returns the X ordinate; default is numeric_limits::quiet_NaN() 00063 /// 00064 __property System::Double get_X(); 00065 00066 /// \brief 00067 /// Gets the Y ordinate. 00068 /// 00069 /// \return 00070 /// Returns the Y ordinate; default is numeric_limits::quiet_NaN() 00071 /// 00072 __property System::Double get_Y(); 00073 00074 /// \brief 00075 /// Gets the Z ordinate. 00076 /// 00077 /// \return 00078 /// Returns the Z ordinate; default is numeric_limits::quiet_NaN() 00079 /// 00080 __property System::Double get_Z(); 00081 00082 /// \brief 00083 /// Gets the M ordinate. 00084 /// 00085 /// \return 00086 /// Returns the M ordinate; default is numeric_limits::quiet_NaN() 00087 /// 00088 __property System::Double get_M(); 00089 00090 /// \brief 00091 /// Gets the dimensionality of ordinates in this position. 00092 /// 00093 /// \remarks 00094 /// Values are from the Dimensionality enumeration. 00095 /// A return type of "Int32" is used instead of the enumeration, catering to typical use with bit masking. 00096 /// 00097 /// \return 00098 /// Returns the ordinate dimensionality 00099 /// 00100 __property System::Int32 get_Dimensionality(); 00101 00102 public private: 00103 FdoIDirectPosition *GetImpObj(); 00104 }; 00105 00106 END_NAMESPACE_OSGEO_GEOMETRY 00107 00108
Comments or suggestions? Send us feedback. |