FDO .NET API Reference Feature Data Objects

mgILineStringSegmentImp.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 
00019 
00020 #pragma once
00021 #include "mgICurveSegmentAbstractImp.h"
00022 #include "mgILineStringSegment.h"
00023 
00024 class FdoILineStringSegment;
00025 BEGIN_NAMESPACE_OSGEO_GEOMETRY
00026 public __gc __interface IDirectPosition;
00027 public __gc class DirectPositionCollection;
00028 END_NAMESPACE_OSGEO_GEOMETRY
00029 
00030 BEGIN_NAMESPACE_OSGEO_GEOMETRY
00031 
00032 /// \ingroup (OSGeoFDOGeometry)
00033 /// \brief
00034 /// The ILineStringSegmentImp class is a LineString curve segment type.  
00035 /// The shape of ILineStringSegmentImp is the set of positions defined by the contained collection, 
00036 /// plus linear interpolation between consecutive points.
00037 /// This is a helper type for Geometries in the Geometry package.
00038 /// Note: It does not derive from IGeometry.
00039 private __gc class ILineStringSegmentImp 
00040 : public NAMESPACE_OSGEO_GEOMETRY::ICurveSegmentAbstractImp, public NAMESPACE_OSGEO_GEOMETRY::ILineStringSegment
00041 {
00042 public:
00043     /// \brief
00044     /// Constructs a managed object based on an unmanaged instance of the object
00045     /// 
00046     /// \param unmanaged 
00047     /// Input A Pointer to the unmanaged object.
00048     /// 
00049     /// \param autoDelete 
00050     /// Input Indicates if the constructed element should be automatically deleted 
00051     /// once it no longer referenced.
00052     /// 
00053     ILineStringSegmentImp(System::IntPtr unmanaged, System::Boolean autoDelete);
00054 
00055 public private:
00056     FdoILineStringSegment *GetImpObj();
00057 
00058 public:
00059     /// \brief
00060     /// Gets the number of positions in this object.
00061     /// 
00062     /// \return
00063     /// Returns the number of positions
00064     /// 
00065     __property System::Int32 get_Count();
00066 
00067     /// \brief
00068     /// Gets the position at the specified (zero-based) index.
00069     /// 
00070     /// \return
00071     /// Returns the position
00072     /// 
00073     __property NAMESPACE_OSGEO_GEOMETRY::IDirectPosition *get_Item(System::Int32 index);
00074 
00075     /// \brief
00076     /// Gets a collection of all of the positions in this object.
00077     /// 
00078     /// \return
00079     /// Returns the positions
00080     /// 
00081     __property NAMESPACE_OSGEO_GEOMETRY::DirectPositionCollection *get_Positions();
00082 };
00083 
00084 END_NAMESPACE_OSGEO_GEOMETRY
00085 
00086 

Comments or suggestions? Send us feedback.