CFx SDK Documentation  2023 SP0
DbMline.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2017, Open Design Alliance (the "Alliance").
3 // All rights reserved.
4 //
5 // This software and its documentation and related materials are owned by
6 // the Alliance. The software may only be incorporated into application
7 // programs owned by members of the Alliance, subject to a signed
8 // Membership Agreement and Supplemental Software License Agreement with the
9 // Alliance. The structure and organization of this software are the valuable
10 // trade secrets of the Alliance and its suppliers. The software is also
11 // protected by copyright law and international treaty provisions. Application
12 // programs incorporating this software must include the following statement
13 // with their copyright notices:
14 //
15 // This application incorporates Teigha(R) software pursuant to a license
16 // agreement with Open Design Alliance.
17 // Teigha(R) Copyright (C) 2002-2017 by Open Design Alliance.
18 // All rights reserved.
19 //
20 // By use of this software, its documentation or related materials, you
21 // acknowledge and accept the above terms.
23 
24 
25 
26 
27 #ifndef OD_DBMLINE_H
28 #define OD_DBMLINE_H
29 
30 #include "TD_PackPush.h"
31 
32 #include "DbEntity.h"
33 //#include "Ge/GeVoidPointerArray.h"
34 
40 struct Mline
41 {
43  enum
44  {
45  kTop = 0,
47  kBottom
48  };
49  enum
50  {
51  kOpen = 0,
53  kMerged
54  };
55 };
56 
57 class OdGePlane;
58 
63  struct OdMLSegment
64 {
67 };
68 
70 
84 {
85 public:
87 
89 
94  void setStyle(
95  const OdDbObjectId &styleId);
96 
101 
107 
112 
116  void setScale(
117  double scale);
118 
122  double scale() const;
123 
128 
133  void setNormal(
134  const OdGeVector3d& normal);
135 
145  void appendSeg(
146  const OdGePoint3d& newVertex);
147 
154  (OdGePoint3d& lastVertex);
155 
167  int vertexIndex,
168  const OdGePoint3d& newPosition);
169 
176  bool closedMline);
177 
183  bool closedMline() const;
184 
191  bool supressIt);
192 
199  bool supressStartCaps() const;
200 
207  bool supressIt);
208 
215  bool supressEndCaps() const;
216 
220  int numVertices() const;
221 
227  int vertexIndex) const;
228 
234  int vertexIndex) const;
235 
241  int vertexIndex) const;
242 
249 
256  int vertexIndex,
257  const OdMLSegmentArray& params);
258 
269  int element(const OdGePoint3d &pt) const;
270 
278  OdResult getClosestPointTo(const OdGePoint3d &pt, OdGePoint3d& ptOut, bool bExtend, bool bExcludeCaps = false) const;
279 
288  OdResult getClosestPointTo(const OdGePoint3d &pt, const OdGeVector3d &norm, OdGePoint3d& ptOut, bool bExtend, bool bExcludeCaps = false) const;
289 
290  void getPlane(OdGePlane &plane) const;
291 
293  OdDbDwgFiler* pFiler);
294 
295  virtual void dwgOutFields(
296  OdDbDwgFiler* pFiler) const;
297 
299  OdDbDxfFiler* pFiler);
300 
301  virtual void dxfOutFields(
302  OdDbDxfFiler* pFiler) const;
303 
305  const OdGeMatrix3d& xfm);
306 
307  virtual bool subWorldDraw(
308  OdGiWorldDraw* pWd) const;
309 
311  OdRxObjectPtrArray& entitySet) const; /* Replace OdRxObjectPtrArray */
312 
313  virtual OdResult explodeGeometry(OdRxObjectPtrArray& entitySet) const;
314 
315  virtual void subClose();
316 
318  void* pClsid) const;
319 
321  const OdGeMatrix3d& mat, OdDbEntityPtr& pCopy) const;
322 
323  virtual void subSetDatabaseDefaults(OdDbDatabase * pDb, bool doSubents);
324 
326  OdGsMarker gsMark,
327  const OdGePoint3d& ,
328  const OdGeMatrix3d& ,
329  OdDbFullSubentPathArray& subentPaths,
330  const OdDbObjectIdArray* pEntAndInsertStack) const;
331 
333  OdGsMarkerArray& gsMarkers) const;
334 };
335 
340 
341 #include "TD_PackPop.h"
342 
343 #endif
344 
#define TOOLKIT_EXPORT
Definition: DbExport.h:40
OdSmartPtr< OdDbMline > OdDbMlinePtr
Definition: DbMline.h:339
OdArray< OdMLSegment > OdMLSegmentArray
Definition: DbMline.h:69
scale
Definition: DimVarDefs.h:1684
ptrdiff_t OdGsMarker
signed char OdInt8
OdResult
Definition: OdResult.h:29
void setStyle(const OdDbObjectId &styleId)
Mline::MlineJustification justification() const
int numVertices() const
double scale() const
int element(const OdGePoint3d &pt) const
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
OdResult getClosestPointTo(const OdGePoint3d &pt, const OdGeVector3d &norm, OdGePoint3d &ptOut, bool bExtend, bool bExcludeCaps=false) const
OdGeVector3d miterAt(int vertexIndex) const
OdResult getClosestPointTo(const OdGePoint3d &pt, OdGePoint3d &ptOut, bool bExtend, bool bExcludeCaps=false) const
virtual OdResult subGetTransformedCopy(const OdGeMatrix3d &mat, OdDbEntityPtr &pCopy) const
virtual OdResult subExplode(OdRxObjectPtrArray &entitySet) const
virtual bool subWorldDraw(OdGiWorldDraw *pWd) const
OdGeVector3d normal() const
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
OdDbObjectId style() const
bool closedMline() const
virtual void subSetDatabaseDefaults(OdDbDatabase *pDb, bool doSubents)
void setSupressStartCaps(bool supressIt)
void removeLastSeg(OdGePoint3d &lastVertex)
OdGeVector3d axisAt(int vertexIndex) const
void appendSeg(const OdGePoint3d &newVertex)
void setSupressEndCaps(bool supressIt)
virtual OdResult subGetClassID(void *pClsid) const
OdGePoint3d vertexAt(int vertexIndex) const
bool supressStartCaps() const
void getPlane(OdGePlane &plane) const
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
void setNormal(const OdGeVector3d &normal)
virtual OdResult subGetGsMarkersAtSubentPath(const OdDbFullSubentPath &subPath, OdGsMarkerArray &gsMarkers) const
virtual OdResult subGetSubentPathsAtGsMarker(OdDb::SubentType type, OdGsMarker gsMark, const OdGePoint3d &, const OdGeMatrix3d &, OdDbFullSubentPathArray &subentPaths, const OdDbObjectIdArray *pEntAndInsertStack) const
virtual OdResult explodeGeometry(OdRxObjectPtrArray &entitySet) const
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
void moveVertexAt(int vertexIndex, const OdGePoint3d &newPosition)
virtual void subClose()
virtual OdResult subTransformBy(const OdGeMatrix3d &xfm)
ODDB_DECLARE_MEMBERS(OdDbMline)
void setScale(double scale)
void setClosedMline(bool closedMline)
bool supressEndCaps() const
void setParametersAt(int vertexIndex, const OdMLSegmentArray &params)
void getParametersAt(int index, OdMLSegmentArray &params) const
void setJustification(Mline::MlineJustification justification)
GLenum GLint * params
Definition: gles2_ext.h:184
GLuint index
Definition: gles2_ext.h:265
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274
Definition: DbMline.h:41
@ kBottom
Definition: DbMline.h:47
@ kZero
Definition: DbMline.h:46
@ kTop
Definition: DbMline.h:45
OdInt8 MlineJustification
Definition: DbMline.h:42
@ kOpen
Definition: DbMline.h:51
@ kClosed
Definition: DbMline.h:52
@ kMerged
Definition: DbMline.h:53
OdGeDoubleArray m_AreaFillParams
Definition: DbMline.h:65
OdGeDoubleArray m_SegParams
Definition: DbMline.h:66