FDO API Reference | Feature Data Objects |
00001 #ifndef _ICURVEABSTRACT_H_ 00002 #define _ICURVEABSTRACT_H_ 00003 00004 // 00005 // Copyright (C) 2004-2006 Autodesk, Inc. 00006 // 00007 // This library is free software; you can redistribute it and/or 00008 // modify it under the terms of version 2.1 of the GNU Lesser 00009 // General Public License as published by the Free Software Foundation. 00010 // 00011 // This library is distributed in the hope that it will be useful, 00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 // Lesser General Public License for more details. 00015 // 00016 // You should have received a copy of the GNU Lesser General Public 00017 // License along with this library; if not, write to the Free Software 00018 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00019 // 00020 00021 00022 00023 #ifdef _WIN32 00024 #pragma once 00025 #endif 00026 00027 #include <Geometry/IGeometry.h> 00028 #include <Geometry/IDirectPosition.h> 00029 00030 /// \brief 00031 /// The FdoICurveAbstract class is a curve Geometry type (abstract). FdoICurveAbstract is the most general curve type. 00032 class FdoICurveAbstract : public FdoIGeometry 00033 { 00034 public: 00035 /// \brief 00036 /// Gets the starting position of this Curve. 00037 /// 00038 /// \remarks 00039 /// This is the start of the entire curve. In cases where a derived type 00040 /// is composed of multiple contiguous parts, this position is the start of the 00041 /// first of those parts. 00042 /// 00043 /// \return 00044 /// Returns the starting position 00045 /// 00046 FDO_GEOM_API virtual FdoIDirectPosition* GetStartPosition() const = 0; 00047 00048 /// \brief 00049 /// Gets the ending position of this Curve. 00050 /// 00051 /// \remarks 00052 /// This is the end of the entire curve. In cases where a derived type 00053 /// is composed of multiple contiguous parts, this position is the end of the 00054 /// last of those parts. 00055 /// 00056 /// \return 00057 /// Returns the ending position 00058 /// 00059 FDO_GEOM_API virtual FdoIDirectPosition* GetEndPosition() const = 0; 00060 00061 /// \brief 00062 /// Gets the closure state for the curve. 00063 /// 00064 /// \remarks 00065 /// The meaning behind this method is not guaranteed 00066 /// to be uniform between derived types or between implementations 00067 /// of this package. 00068 /// It may represent a computed value, an explicit attribute, or be true by definition. 00069 /// As a computed value, the result is typically from simply testing the starting and 00070 /// ending positions for exact equality. This is only reliable in floating 00071 /// point arithmetic if these data have identical origins. 00072 /// As an explicit attribute, it would be persisted with the Geometry and 00073 /// typically denoted by a parameter in the relevant factory method. 00074 /// Some Geometry types are closed by definition. 00075 /// 00076 /// \return 00077 /// Returns 'true' if the curve is closed, and false otherwise 00078 /// 00079 FDO_GEOM_API virtual bool GetIsClosed() const = 0; 00080 }; 00081 #endif 00082 00083
Comments or suggestions? Send us feedback. |