/////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2002-2025, Open Design Alliance (the "Alliance"). // All rights reserved. // // This software and its documentation and related materials are owned by // the Alliance. The software may only be incorporated into application // programs owned by members of the Alliance, subject to a signed // Membership Agreement and Supplemental Software License Agreement with the // Alliance. The structure and organization of this software are the valuable // trade secrets of the Alliance and its suppliers. The software is also // protected by copyright law and international treaty provisions. Application // programs incorporating this software must include the following statement // with their copyright notices: // // This application incorporates Open Design Alliance software pursuant to a license // agreement with Open Design Alliance. // Open Design Alliance Copyright (C) 2002-2025 by Open Design Alliance. // All rights reserved. // // By use of this software, its documentation or related materials, you // acknowledge and accept the above terms. /////////////////////////////////////////////////////////////////////////////// #ifndef _NW_PLOTSEGMENT_H_ #define _NW_PLOTSEGMENT_H_ #include "NwObject.h" #include "Plot/NwPlotEnums.h" /** \details This class represents geometry. */ class NWDBEXPORT OdNwPlotSegment : public OdNwObject { //DOM-IGNORE-BEGIN ODRX_DECLARE_MEMBERS(OdNwPlotSegment); //DOM-IGNORE-END public: /** \details Default constructor. Creates a new object of the OdNwPlotSegment class. */ OdNwPlotSegment(); /** \details Constructor for objects of the OdNwPlotSegment class. Creates a new OdNwPlotSegment object for the specified item. \param pImpl [in] Item to create a OdNwPlotSegment object for. */ explicit OdNwPlotSegment(OdNwObjectImpl* pImpl); public: /** \details Virtual destructor. Frees allocated resources. */ virtual ~OdNwPlotSegment(); public: /** \details Gets the segment type for this segment. \returns The segment type for this segment as a value from the NwPlotSegmentType enum. \remarks Returned value can be one of the following: Name Value Description NwPlotSegmentType::NW_PLOT_SEGMENT_TYPE_NONE 0x00 Unknown segment. NwPlotSegmentType::NW_PLOT_SEGMENT_TYPE_POINTLIST 0x01 Point list segment. NwPlotSegmentType::NW_PLOT_SEGMENT_TYPE_POLY_LINE 0x02 Polyline segment. NwPlotSegmentType::NW_PLOT_SEGMENT_TYPE_POLY_BEZIER 0x03 Bezier segment. NwPlotSegmentType::NW_PLOT_SEGMENT_TYPE_QUADRATIC_BEZIER 0x04 Quadratic Bezier segment. NwPlotSegmentType::NW_PLOT_SEGMENT_TYPE_CIRCLE 0x05 Circle segment. NwPlotSegmentType::NW_PLOT_SEGMENT_TYPE_ELLIPSE 0x06 Ellipse segment. NwPlotSegmentType::NW_PLOT_SEGMENT_TYPE_ARC 0x07 Arc segment. NwPlotSegmentType::NW_PLOT_SEGMENT_TYPE_POLY_TRIANGLE 0x08 Poly-triangle segment.
*/ NwPlotSegmentType::Enum getSegmentType() const; }; /** \details This template class is a specialization of the OdSmartPtr class for OdNwPlotSegment object pointers. */ typedef OdSmartPtr OdNwPlotSegmentPtr; #endif // _NW_PLOTSEGMENT_H_