- Main Page
- Related Pages
- Modules
- Classes
- Files

# ICurveAbstract.h

Go to the documentation of this file.

    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

Please send us your comment about this page