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 #include "mgIRingAbstractImp.h" 00022 #include "mgILinearRing.h" 00023 00024 class FdoILinearRing; 00025 00026 BEGIN_NAMESPACE_OSGEO_GEOMETRY 00027 public __gc __interface IDirectPosition; 00028 public __gc class DirectPositionCollection; 00029 END_NAMESPACE_OSGEO_GEOMETRY 00030 00031 BEGIN_NAMESPACE_OSGEO_GEOMETRY 00032 00033 /// \ingroup (OSGeoFDOGeometry) 00034 /// \brief 00035 /// The ILinearRingImp class is a linear ring helper type. 00036 /// The shape of ILinearRingImp is the set of positions defined by the contained collection, 00037 /// plus linear interpolation between consecutive points. 00038 public __gc class ILinearRingImp : 00039 public NAMESPACE_OSGEO_GEOMETRY::IRingAbstractImp, public NAMESPACE_OSGEO_GEOMETRY::ILinearRing 00040 { 00041 public: 00042 /// \brief 00043 /// Constructs a managed object based on an unmanaged instance of the object 00044 /// 00045 /// \param unmanaged 00046 /// Input A Pointer to the unmanaged object. 00047 /// 00048 /// \param autoDelete 00049 /// Input Indicates if the constructed element should be automatically deleted 00050 /// once it no longer referenced. 00051 /// 00052 ILinearRingImp(System::IntPtr unmanaged, System::Boolean autoDelete); 00053 00054 public private: 00055 FdoILinearRing *GetImpObj(); 00056 00057 public: 00058 /// \brief 00059 /// Gets the number of positions in this object. 00060 /// 00061 /// \return 00062 /// Returns the number of positions 00063 /// 00064 __property System::Int32 get_Count(); 00065 00066 /// \brief 00067 /// Gets the position at the specified (zero-based) index. 00068 /// 00069 /// \param index 00070 /// Input Zero-based index in the object's list of positions. 00071 /// 00072 /// \return 00073 /// Returns the position 00074 /// 00075 __property NAMESPACE_OSGEO_GEOMETRY::IDirectPosition *get_Item(System::Int32 index); 00076 00077 /// \brief 00078 /// Gets the position at the specified (zero-based) index, by values of its member data. 00079 /// This is in aid of higher performance for any implementation that 00080 /// does not internally use FdoIDirectPosition objects for storage, or for 00081 /// an application seeking to avoid overhead of accessor methods. 00082 /// 00083 /// \param index 00084 /// Input Zero-based index in the object's list of positions. 00085 /// \param coordinateX 00086 /// Output X ordinate value. 00087 /// \param coordinateY 00088 /// Output Y ordinate value. 00089 /// \param coordinateZ 00090 /// Output Z ordinate value. 00091 /// \param coordinateM 00092 /// Output M ordinate value. 00093 /// \param dimensionality 00094 /// Output Dimensionality of ordinates in this position. 00095 /// 00096 /// \return 00097 /// Returns nothing 00098 /// 00099 System::Void GetItemByMembers( 00100 System::Int32 index, 00101 System::Double &coordinateX, 00102 System::Double &coordinateY, 00103 System::Double &coordinateZ, 00104 System::Double &coordinateM, 00105 System::Int32 &dimensionality); 00106 00107 /// \brief 00108 /// Gets a collection of all of the positions in this object. 00109 /// 00110 /// \return 00111 /// Returns the positions 00112 /// 00113 __property NAMESPACE_OSGEO_GEOMETRY::DirectPositionCollection *get_Positions(); 00114 }; 00115 00116 END_NAMESPACE_OSGEO_GEOMETRY 00117 00118
Comments or suggestions? Send us feedback. |