FRX SDK Documentation 2025 SP0
Loading...
Searching...
No Matches
AcDbPolyline.h
Go to the documentation of this file.
1#pragma once
2
3//
4// (C) Copyright 2005-2024 by Graebert GmbH.
5//
6// Permission to use, copy, modify, and distribute this software in
7// object code form for any purpose and without fee is hereby granted,
8// provided that the above copyright notice appears in all copies and
9// that both that copyright notice and the limited warranty and
10// restricted rights notice below appear in all supporting
11// documentation.
12//
13// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
14// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
15// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
16// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
17// UNINTERRUPTED OR ERROR FREE.
18
19#include "..\acdb17\AcDbCurve.h"
20#include "..\acdb17\AcDb.h"
21#include "..\acad\Acad.h"
22
23template < typename Param1 > class AcArrayMemCopyReallocator;
24class AcDb2dPolyline;
25class AcDbCurve;
26class AcDbDwgFiler;
27class AcDbDxfFiler;
28class AcDbEntity;
29class AcDbExtents;
31class AcDbGripData;
32class AcDbObjectId;
34class AcGeCircArc2d;
35class AcGeCircArc3d;
36class AcGeLineSeg2d;
37class AcGeLineSeg3d;
38class AcGeMatrix3d;
39class AcGePlane;
40class AcGePoint2d;
41class AcGePoint3d;
42class AcGeVector3d;
44class AcGiWorldDraw;
45class AcRxClass;
46
48{
49public:
58public:
59 AcDbPolyline(unsigned int);
61 AcGeVector3d normal(void)const ;
62 double elevation(void)const ;
63 double thickness(void)const ;
64 SegType segType(unsigned int)const ;
65 virtual Acad::ErrorStatus addVertexAt(unsigned int, AcGePoint2d const &,double = 0.,double = -1.,double = -1., Adesk::Int32 = 0);
66 virtual Acad::ErrorStatus convertFrom( AcDbEntity * &,int = 1);
67 Acad::ErrorStatus convertTo( AcDb2dPolyline * &,int = 1)const ;
68 Acad::ErrorStatus getArcSegAt(unsigned int, AcGeCircArc2d &)const ;
69 Acad::ErrorStatus getArcSegAt(unsigned int, AcGeCircArc3d &)const ;
70 Acad::ErrorStatus getBulgeAt(unsigned int,double &)const ;
71 Acad::ErrorStatus getConstantWidth(double &)const ;
72 Acad::ErrorStatus getLineSegAt(unsigned int, AcGeLineSeg2d &)const ;
73 Acad::ErrorStatus getLineSegAt(unsigned int, AcGeLineSeg3d &)const ;
74 Acad::ErrorStatus getPointAt(unsigned int, AcGePoint2d &)const ;
75 Acad::ErrorStatus getPointAt(unsigned int, AcGePoint3d &)const ;
76 Acad::ErrorStatus getWidthsAt(unsigned int,double &,double &)const ;
77 Acad::ErrorStatus maximizeMemory(void);
78 Acad::ErrorStatus minimizeMemory(void);
79 virtual Acad::ErrorStatus removeVertexAt(unsigned int);
80 virtual Acad::ErrorStatus setBulgeAt(unsigned int,double);
81 virtual Acad::ErrorStatus setConstantWidth(double);
82 virtual Acad::ErrorStatus setNormal( AcGeVector3d const &);
83 virtual Acad::ErrorStatus setPointAt(unsigned int, AcGePoint2d const &);
84 virtual Acad::ErrorStatus setThickness(double);
85 virtual Acad::ErrorStatus setWidthsAt(unsigned int,double,double);
86 Acad::ErrorStatus getVertexIdentifierAt( unsigned int, long & ) const;
87 int hasBulges(void)const ;
88 int hasPlinegen(void)const ;
89 int hasWidth(void)const ;
90 int isOnlyLines(void)const ;
91
92 unsigned int numVerts(void)const ;
93 virtual ~AcDbPolyline(void);
94 virtual bool castShadows(void)const ;
95 virtual bool receiveShadows(void)const ;
96 virtual AcDbEntity * subentPtr( AcDbFullSubentPath const &)const ;
97
98 virtual Acad::ErrorStatus applyPartialUndo( AcDbDwgFiler *, AcRxClass *);
99 virtual Acad::ErrorStatus dwgInFields( AcDbDwgFiler *);
100 virtual Acad::ErrorStatus dwgOutFields( AcDbDwgFiler *)const ;
101 virtual Acad::ErrorStatus dxfInFields( AcDbDxfFiler *);
102 virtual Acad::ErrorStatus dxfOutFields( AcDbDxfFiler *)const ;
103 virtual Acad::ErrorStatus explode( AcDbVoidPtrArray &)const ;
104 virtual Acad::ErrorStatus extend(double);
105 virtual Acad::ErrorStatus extend(int, AcGePoint3d const &);
106 virtual Acad::ErrorStatus getArea(double &)const ;
107 virtual Acad::ErrorStatus getClassID( _GUID *)const ;
108 virtual Acad::ErrorStatus getClosestPointTo( AcGePoint3d const &, AcGePoint3d &,int=0)const ;
109 virtual Acad::ErrorStatus getClosestPointTo( AcGePoint3d const &, AcGeVector3d const &, AcGePoint3d &,int=0)const ;
110 virtual Acad::ErrorStatus getDistAtParam(double,double &)const ;
111 virtual Acad::ErrorStatus getDistAtPoint( AcGePoint3d const &,double &)const ;
112 virtual Acad::ErrorStatus getEndParam(double &)const ;
113 virtual Acad::ErrorStatus getEndPoint( AcGePoint3d &)const ;
114 virtual Acad::ErrorStatus getFirstDeriv( AcGePoint3d const &, AcGeVector3d &)const ;
115 virtual Acad::ErrorStatus getFirstDeriv(double, AcGeVector3d &)const ;
116 virtual Acad::ErrorStatus getGeomExtents( AcDbExtents &)const ;
117 virtual Acad::ErrorStatus getGripPoints( AcDbGripDataPtrArray&, const double, const int, AcGeVector3d const &, const int)const ;
119 virtual Acad::ErrorStatus getOffsetCurves(double, AcDbVoidPtrArray &)const ;
120 virtual Acad::ErrorStatus getOrthoProjectedCurve( AcGePlane const &, AcDbCurve * &)const ;
122 virtual Acad::ErrorStatus getParamAtDist(double,double &)const ;
123 virtual Acad::ErrorStatus getParamAtPoint( AcGePoint3d const &,double &)const ;
124 virtual Acad::ErrorStatus getPlane( AcGePlane &, AcDb::Planarity &)const ;
125 virtual Acad::ErrorStatus getPointAtDist(double, AcGePoint3d &)const ;
126 virtual Acad::ErrorStatus getPointAtParam(double, AcGePoint3d &)const ;
127 virtual Acad::ErrorStatus getProjectedCurve( AcGePlane const &, AcGeVector3d const &, AcDbCurve * &)const ;
128 virtual Acad::ErrorStatus getSecondDeriv( AcGePoint3d const &, AcGeVector3d &)const ;
129 virtual Acad::ErrorStatus getSecondDeriv(double, AcGeVector3d &)const ;
131 virtual Acad::ErrorStatus getSplitCurves( AcGeDoubleArray const &, AcDbVoidPtrArray &)const ;
132 virtual Acad::ErrorStatus getStartPoint( AcGePoint3d &)const ;
134 virtual Acad::ErrorStatus getSubentPathsAtGsMarker(unsigned long, Adesk::GsMarker, AcGePoint3d const &, AcGeMatrix3d const &,int &, AcDbFullSubentPath * &,int = 0, AcDbObjectId * = nullptr)const ;
135 virtual Acad::ErrorStatus moveGripPointsAt( AcGeIntArray const &, AcGeVector3d const &);
136 virtual Acad::ErrorStatus moveStretchPointsAt( AcGeIntArray const &, AcGeVector3d const &);
137 virtual Acad::ErrorStatus transformBy( AcGeMatrix3d const &);
138 virtual Adesk::Boolean isClosed(void)const ;
139 virtual Adesk::Boolean isPeriodic(void)const ;
140 virtual int onSegAt(unsigned int, AcGePoint2d const &,double &)const ;
142 virtual void getEcs( AcGeMatrix3d &)const ;
145 virtual void reset(int,unsigned int);
147 virtual void setElevation(double);
148 void setPlinegen(int);
149
150 virtual Acad::ErrorStatus setVertexIdentifierAt(unsigned int,long);
151 virtual Acad::ErrorStatus setFromAcGeCurve(AcGeCurve3d const &, AcGeVector3d *, AcGeTol const & = AcGeContext::gTol);
152 virtual Acad::ErrorStatus getAcGeCurve(AcGeCurve3d * &, AcGeTol const & = AcGeContext::gTol)const;
153 virtual Acad::ErrorStatus reverseCurve(void);
154
155 virtual Acad::ErrorStatus subTransformBy(AcGeMatrix3d const & param_1);
157 virtual Acad::ErrorStatus subGetGeomExtents(AcDbExtents & param_1)const;
159 virtual Adesk::Boolean isPlanar(void)const;
160 virtual Acad::ErrorStatus getStartParam(double &)const;
161 virtual Acad::ErrorStatus subExplode(AcDbVoidPtrArray & param_1)const;
162 virtual Acad::ErrorStatus subGetSubentPathsAtGsMarker(AcDb::SubentType, Adesk::GsMarker, AcGePoint3d const &, AcGeMatrix3d const &, int &, AcDbFullSubentPath * &, int = 0, AcDbObjectId* = 0)const;
165
166protected:
168
169};
#define ACRX_DECLARE_MEMBERS(classname)
Definition addmacro.h:756
virtual Acad::ErrorStatus getOsnapPoints(AcDb::OsnapMode, Adesk::GsMarker, AcGePoint3d const &, AcGePoint3d const &, AcGeMatrix3d const &, AcArray< AcGePoint3d, AcArrayMemCopyReallocator< AcGePoint3d > > &, AcGeIntArray &) const
virtual Acad::ErrorStatus setNormal(AcGeVector3d const &)
virtual int onSegAt(unsigned int, AcGePoint2d const &, double &) const
virtual Acad::ErrorStatus getDistAtParam(double, double &) const
virtual Acad::ErrorStatus getSecondDeriv(double, AcGeVector3d &) const
virtual void gripStatus(AcDb::GripStat)
virtual Acad::ErrorStatus convertFrom(AcDbEntity *&, int=1)
virtual Acad::ErrorStatus subExplode(AcDbVoidPtrArray &param_1) const
virtual Acad::ErrorStatus transformBy(AcGeMatrix3d const &)
virtual Acad::ErrorStatus getFirstDeriv(double, AcGeVector3d &) const
int hasWidth(void) const
virtual Acad::ErrorStatus getEndParam(double &) const
virtual Acad::ErrorStatus extend(int, AcGePoint3d const &)
Acad::ErrorStatus getLineSegAt(unsigned int, AcGeLineSeg3d &) const
virtual Acad::ErrorStatus moveGripPointsAt(AcGeIntArray const &, AcGeVector3d const &)
virtual Acad::ErrorStatus getPointAtParam(double, AcGePoint3d &) const
virtual Acad::ErrorStatus getGripPoints(AcArray< AcGePoint3d, AcArrayMemCopyReallocator< AcGePoint3d > > &, AcGeIntArray &, AcGeIntArray &) const
virtual Acad::ErrorStatus getAcGeCurve(AcGeCurve3d *&, AcGeTol const &=AcGeContext::gTol) const
virtual void getEcs(AcGeMatrix3d &) const
virtual Acad::ErrorStatus getSubentPathsAtGsMarker(unsigned long, Adesk::GsMarker, AcGePoint3d const &, AcGeMatrix3d const &, int &, AcDbFullSubentPath *&, int=0, AcDbObjectId *=nullptr) const
virtual AcDbEntity * subSubentPtr(AcDbFullSubentPath const &param_1) const
int hasPlinegen(void) const
virtual Acad::ErrorStatus getGeomExtents(AcDbExtents &) const
virtual bool castShadows(void) const
AcDbPolyline(void)
virtual Acad::ErrorStatus getClosestPointTo(AcGePoint3d const &, AcGePoint3d &, int=0) const
virtual Acad::ErrorStatus getSplitCurves(AcGeDoubleArray const &, AcDbVoidPtrArray &) const
double elevation(void) const
virtual Acad::ErrorStatus moveStretchPointsAt(AcGeIntArray const &, AcGeVector3d const &)
virtual Acad::ErrorStatus getPlane(AcGePlane &, AcDb::Planarity &) const
virtual Acad::ErrorStatus getGripPoints(AcDbGripDataPtrArray &, const double, const int, AcGeVector3d const &, const int) const
virtual Acad::ErrorStatus addVertexAt(unsigned int, AcGePoint2d const &, double=0., double=-1., double=-1., Adesk::Int32=0)
virtual void viewportDraw(AcGiViewportDraw *)
virtual Acad::ErrorStatus reverseCurve(void)
virtual Acad::ErrorStatus getOffsetCurves(double, AcDbVoidPtrArray &) const
virtual Acad::ErrorStatus getClassID(_GUID *) const
virtual Acad::ErrorStatus removeVertexAt(unsigned int)
virtual Acad::ErrorStatus getStretchPoints(AcArray< AcGePoint3d, AcArrayMemCopyReallocator< AcGePoint3d > > &) const
virtual Acad::ErrorStatus getSplitCurves(AcArray< AcGePoint3d, AcArrayMemCopyReallocator< AcGePoint3d > > const &, AcDbVoidPtrArray &) const
int isOnlyLines(void) const
AcDbPolyline(AcDbSystemInternals *)
virtual AcDbEntity * subentPtr(AcDbFullSubentPath const &) const
double thickness(void) const
virtual Acad::ErrorStatus setVertexIdentifierAt(unsigned int, long)
virtual Acad::ErrorStatus explode(AcDbVoidPtrArray &) const
unsigned int numVerts(void) const
virtual Acad::ErrorStatus getSecondDeriv(AcGePoint3d const &, AcGeVector3d &) const
virtual Adesk::Boolean subWorldDraw(AcGiWorldDraw *)
Acad::ErrorStatus getPointAt(unsigned int, AcGePoint3d &) const
virtual Adesk::Boolean worldDraw(AcGiWorldDraw *)
virtual bool receiveShadows(void) const
virtual Acad::ErrorStatus subGetGeomExtents(AcDbExtents &param_1) const
AcGeVector3d normal(void) const
virtual Acad::ErrorStatus getFirstDeriv(AcGePoint3d const &, AcGeVector3d &) const
virtual Acad::ErrorStatus getStartPoint(AcGePoint3d &) const
virtual Acad::ErrorStatus getParamAtPoint(AcGePoint3d const &, double &) const
Acad::ErrorStatus getVertexIdentifierAt(unsigned int, long &) const
void setPlinegen(int)
virtual Adesk::Boolean isPlanar(void) const
virtual void setElevation(double)
Acad::ErrorStatus convertTo(AcDb2dPolyline *&, int=1) const
virtual Acad::ErrorStatus getClosestPointTo(AcGePoint3d const &, AcGeVector3d const &, AcGePoint3d &, int=0) const
virtual Acad::ErrorStatus setThickness(double)
Acad::ErrorStatus getBulgeAt(unsigned int, double &) const
virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler *) const
virtual Acad::ErrorStatus subGetSubentPathsAtGsMarker(AcDb::SubentType, Adesk::GsMarker, AcGePoint3d const &, AcGeMatrix3d const &, int &, AcDbFullSubentPath *&, int=0, AcDbObjectId *=0) const
virtual Acad::ErrorStatus getPointAtDist(double, AcGePoint3d &) const
virtual Acad::ErrorStatus applyPartialUndo(AcDbDwgFiler *, AcRxClass *)
virtual void setClosed(Adesk::Boolean)
Acad::ErrorStatus minimizeMemory(void)
virtual Acad::ErrorStatus setBulgeAt(unsigned int, double)
Acad::ErrorStatus getConstantWidth(double &) const
int hasBulges(void) const
SegType segType(unsigned int) const
Acad::ErrorStatus maximizeMemory(void)
virtual Acad::ErrorStatus extend(double)
virtual void reset(int, unsigned int)
Acad::ErrorStatus getWidthsAt(unsigned int, double &, double &) const
virtual Acad::ErrorStatus setPointAt(unsigned int, AcGePoint2d const &)
Acad::ErrorStatus getArcSegAt(unsigned int, AcGeCircArc2d &) const
virtual ~AcDbPolyline(void)
virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler *)
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler *) const
Acad::ErrorStatus getPointAt(unsigned int, AcGePoint2d &) const
virtual Adesk::Boolean isClosed(void) const
virtual Adesk::Boolean isPeriodic(void) const
virtual Acad::ErrorStatus getStartParam(double &) const
virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler *)
virtual Acad::ErrorStatus setFromAcGeCurve(AcGeCurve3d const &, AcGeVector3d *, AcGeTol const &=AcGeContext::gTol)
Acad::ErrorStatus getArcSegAt(unsigned int, AcGeCircArc3d &) const
virtual Acad::ErrorStatus setConstantWidth(double)
virtual Acad::ErrorStatus subTransformBy(AcGeMatrix3d const &param_1)
virtual Acad::ErrorStatus getOrthoProjectedCurve(AcGePlane const &, AcDbCurve *&) const
virtual Acad::ErrorStatus setWidthsAt(unsigned int, double, double)
virtual Acad::ErrorStatus getDistAtPoint(AcGePoint3d const &, double &) const
Acad::ErrorStatus getLineSegAt(unsigned int, AcGeLineSeg2d &) const
AcDbPolyline(unsigned int)
virtual void subViewportDraw(AcGiViewportDraw *)
virtual Acad::ErrorStatus getParamAtDist(double, double &) const
virtual Acad::ErrorStatus getEndPoint(AcGePoint3d &) const
virtual Acad::ErrorStatus getArea(double &) const
virtual Acad::ErrorStatus getProjectedCurve(AcGePlane const &, AcGeVector3d const &, AcDbCurve *&) const
static ARX_API_STATIC AcGeTol gTol
Definition AcGeContext.h:24
IntPtr GsMarker
Definition AddStruct.h:67