CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
DbLeader.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, 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 Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 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_DBLEOD_H
28#define OD_DBLEOD_H 1
29
30#include "TD_PackPush.h"
31
32#include "DbCurve.h"
34#include "DwgDeclareMembers.h"
35
42{
43public:
45
47
51 virtual OdGeVector3d normal() const;
52
56 virtual int numVertices() const;
57
72 virtual bool appendVertex(
73 const OdGePoint3d& vertex);
74
78 virtual void removeLastVertex();
79
83 virtual OdGePoint3d firstVertex() const;
84
88 virtual OdGePoint3d lastVertex() const;
89
95 int vertexIndex) const;
96
106 virtual bool setVertexAt(
107 int vertexIndex,
108 const OdGePoint3d& vertex);
109
113 bool isArrowHeadEnabled() const;
114
121 virtual bool hasArrowHead() const;
122
126 virtual void enableArrowHead();
127
131 virtual void disableArrowHead();
132
136 virtual bool hasHookLine() const;
137
142 virtual bool isHookLineOnXDir() const;
143
147 virtual void setToSplineLeader();
148
152 virtual void setToStraightLeader();
153
157 virtual bool isSplined() const;
158
163
169 virtual void setDimensionStyle(
170 const OdDbHardPointerId& dimStyleId);
171
191 virtual void attachAnnotation(
192 OdDbObjectId annoId);
193
218 virtual void attachAnnotation(
219 OdDbObjectId annoId,
220 OdGeVector3d xDir,
221 double annotationWidth,
222 double annotationHeight,
223 bool hookLineOnXDir);
224
229 virtual void detachAnnotation();
230
235
240
260
281 const OdGeVector3d& offset);
282
286
288 {
289 kMText = 0, // OdDbMText
290 kFcf = 1, // OdDbFcf
291 kBlockRef = 2, // OdDbBlockReference.
292 kNoAnno = 3 // No annotation.
293 //FELIX_CHANGE_BEGIN
294 , kText = 4 // OdDbText
295 //FELIX_CHANGE_END
296 };
297
313
317 double annoHeight() const;
318
322 double annoWidth() const;
323
334 virtual double dimasz() const;
335
346 virtual OdCmColor dimclrd() const;
347
363 virtual double dimgap() const;
364
375 virtual OdDb::LineWeight dimlwd() const;
376
389 virtual OdDbObjectId dimldrblk() const;
390
407 virtual bool dimsah() const;
408
429 virtual double dimscale() const;
430
449 virtual int dimtad() const;
450
461 virtual OdDbObjectId dimtxsty() const;
462
473 virtual double dimtxt() const;
474
481 virtual void setDimasz(
482 double val);
483
490 virtual void setDimclrd(
491 const OdCmColor& val);
492
504 virtual void setDimgap(
505 double val);
506
515 virtual void setDimldrblk(
516 OdDbObjectId val);
517
526 virtual void setDimldrblk(
527 const OdString& val);
528
535 virtual void setDimlwd(
536 OdDb::LineWeight val);
537
550 virtual void setDimsah(
551 bool val);
552
569 virtual void setDimscale(
570 double val);
571
586 virtual void setDimtad(
587 int val);
588
595 virtual void setDimtxsty(
596 OdDbObjectId val);
597
604 virtual void setDimtxt(
605 double val);
606
608 void* pClsid) const;
609
611 OdDbDwgFiler* pFiler);
612
613 virtual void dwgOutFields(
614 OdDbDwgFiler* pFiler) const;
615
617 OdDbDxfFiler* pFiler);
618
619 virtual void dxfOutFields(
620 OdDbDxfFiler* pFiler) const;
621
622 virtual bool subWorldDraw(
623 OdGiWorldDraw* pWd) const ODRX_OVERRIDE;
624
627
629 OdRxObjectPtrArray& entitySet) const ODRX_OVERRIDE;
630
631 virtual void subClose() ODRX_OVERRIDE;
632
634 OdGiDrawableTraits* pTraits) const ODRX_OVERRIDE;
635
636 virtual bool isPlanar() const;
637
639 OdGePlane& plane,
640 OdDb::Planarity& planarity) const;
641
642 virtual bool isClosed() const;
643
644 virtual bool isPeriodic() const;
645
647 double& startParam) const;
648
650 double& endParam) const;
651
653 OdGePoint3d& startPoint) const;
654
656 OdGePoint3d& endPoint) const;
657
659 double param,
660 OdGePoint3d& pointOnCurve) const ODRX_OVERRIDE;
661
663 const OdGePoint3d& pointOnCurve,
664 double& param) const ODRX_OVERRIDE;
665
667 const OdGeMatrix3d& xfm) ODRX_OVERRIDE;
668
670 const OdGeMatrix3d& xform,
671 OdDbEntityPtr& pEnt) const ODRX_OVERRIDE;
672
673 virtual OdResult getDistAtParam( double param, double& dist ) const;
674
675 virtual OdResult getParamAtDist( double dist, double& param ) const;
676
678 double param,
679 OdGeVector3d& firstDeriv) const;
680
682 double param,
683 OdGeVector3d& secondDeriv) const;
684
686 double& area) const;
687
690
696 OdDbDatabase *pDb,
697 bool doSubents);
698
704
705
709 virtual void modifiedGraphics(
710 const OdDbObject* pObject);
711
712 virtual void erased(
713 const OdDbObject* pObject,
714 bool erasing = true);
715
726 OdDbDimStyleTableRecord *pRecord) const;
727
738 const OdDbDimStyleTableRecord* pDimstyle);
739
750 OdDbObjectId dimstyleID);
751
760 virtual void setPlane(
761 const OdGePlane& leaderPlane);
762
767
768protected:
770 OdGsMarker gsMark,
771 const OdGePoint3d& ,
772 const OdGeMatrix3d& ,
773 OdDbFullSubentPathArray& subentPaths,
774 const OdDbObjectIdArray* pEntAndInsertStack ) const;
775
777
778 OdDbObjectPtr subWblockClone(OdDbIdMapping& idMap, OdDbObject* owner, bool bPrimary) const override;
779};
780
784
785#include "TD_PackPop.h"
786
787#endif
788
OdSmartPtr< OdDbEntity > OdDbEntityPtr
Definition DbEntity.h:51
#define DBDIM_EXPORT
Definition DbExport.h:72
OdSmartPtr< OdDbLeader > OdDbLeaderPtr
Definition DbLeader.h:783
OdSmartPtr< OdDbObject > OdDbObjectPtr
Definition DbObject.h:1750
OdArray< OdDbFullSubentPath > OdDbFullSubentPathArray
Definition DbSubentId.h:169
true
OdArray< OdGsMarker, OdMemoryAllocator< OdGsMarker > > OdGsMarkerArray
OdArray< OdDbObjectId, OdClrMemAllocator< OdDbObjectId > > OdDbObjectIdArray
Definition IdArrays.h:53
ptrdiff_t OdGsMarker
unsigned int OdUInt32
#define ODRX_SEALED_VIRTUAL
#define ODRX_OVERRIDE
OdResult
Definition OdResult.h:29
OdArray< OdRxObjectPtr > OdRxObjectPtrArray
Definition RxObject.h:1196
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
virtual OdCmColor dimclrd() const
virtual OdResult getDistAtParam(double param, double &dist) const
virtual double dimasz() const
virtual void setDimldrblk(OdDbObjectId val)
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
virtual bool isHookLineOnXDir() const
virtual OdResult getStartPoint(OdGePoint3d &startPoint) const
virtual bool isPlanar() const
double annoHeight() const
virtual void setDimclrd(const OdCmColor &val)
virtual OdResult getParamAtPoint(const OdGePoint3d &pointOnCurve, double &param) const ODRX_OVERRIDE
virtual void enableArrowHead()
virtual OdGeVector3d annotationOffset() const
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
OdResult subGetSubentPathsAtGsMarker(OdDb::SubentType type, OdGsMarker gsMark, const OdGePoint3d &, const OdGeMatrix3d &, OdDbFullSubentPathArray &subentPaths, const OdDbObjectIdArray *pEntAndInsertStack) const
AnnoType annoType() const
virtual OdDbHardPointerId dimensionStyle() const
virtual bool hasHookLine() const
virtual OdGePoint3d lastVertex() const
virtual bool subWorldDraw(OdGiWorldDraw *pWd) const ODRX_OVERRIDE
virtual void setDimlwd(OdDb::LineWeight val)
virtual OdDb::LineWeight dimlwd() const
virtual void setDimgap(double val)
DWGMAP_DECLARE_MEMBERS(OdDbLeader)
virtual void attachAnnotation(OdDbObjectId annoId)
void setDimstyleData(const OdDbDimStyleTableRecord *pDimstyle)
virtual OdResult getPointAtParam(double param, OdGePoint3d &pointOnCurve) const ODRX_OVERRIDE
virtual OdResult getEndPoint(OdGePoint3d &endPoint) const
virtual bool dimsah() const
virtual void modifiedGraphics(const OdDbObject *pObject)
virtual void setAnnotationOffset(const OdGeVector3d &offset)
virtual void setDimscale(double val)
@ kLeaderLineMark
Definition DbLeader.h:765
virtual int dimtad() const
bool isArrowHeadEnabled() const
virtual OdResult subGetClassID(void *pClsid) const
virtual void setDimensionStyle(const OdDbHardPointerId &dimStyleId)
virtual bool hasArrowHead() const
virtual void setDimldrblk(const OdString &val)
virtual bool appendVertex(const OdGePoint3d &vertex)
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
virtual OdResult getFirstDeriv(double param, OdGeVector3d &firstDeriv) const
virtual OdGePoint3d vertexAt(int vertexIndex) const
virtual OdResult getSecondDeriv(double param, OdGeVector3d &secondDeriv) const
virtual double dimtxt() const
virtual OdGePoint3d firstVertex() const
void getDimstyleData(OdDbDimStyleTableRecord *pRecord) const
virtual bool isSplined() const
virtual OdUInt32 subSetAttributes(OdGiDrawableTraits *pTraits) const ODRX_OVERRIDE
virtual OdGeVector3d annotationXDir() const
virtual void attachAnnotation(OdDbObjectId annoId, OdGeVector3d xDir, double annotationWidth, double annotationHeight, bool hookLineOnXDir)
virtual void detachAnnotation()
virtual OdDbObjectId annotationObjId() const
virtual void removeLastVertex()
virtual OdResult subExplode(OdRxObjectPtrArray &entitySet) const ODRX_OVERRIDE
OdDbObjectPtr subWblockClone(OdDbIdMapping &idMap, OdDbObject *owner, bool bPrimary) const override
virtual OdResult getParamAtDist(double dist, double &param) const
virtual bool isPeriodic() const
virtual void setDimtxsty(OdDbObjectId val)
virtual void setDimtad(int val)
virtual void setDimsah(bool val)
virtual OdResult subTransformBy(const OdGeMatrix3d &xfm) ODRX_OVERRIDE
virtual OdGeVector3d normal() const
virtual double dimscale() const
virtual void setPlane(const OdGePlane &leaderPlane)
ODRX_SEALED_VIRTUAL void subViewportDraw(OdGiViewportDraw *pVd) const ODRX_OVERRIDE
virtual int numVertices() const
virtual bool isClosed() const
virtual OdResult getStartParam(double &startParam) const
virtual bool setVertexAt(int vertexIndex, const OdGePoint3d &vertex)
virtual void setToSplineLeader()
virtual void setDimasz(double val)
virtual OdResult getEndParam(double &endParam) const
virtual void subClose() ODRX_OVERRIDE
virtual void setToStraightLeader()
OdResult subGetGsMarkersAtSubentPath(const OdDbFullSubentPath &subPath, OdGsMarkerArray &gsMarkers) const
void subSetDatabaseDefaults(OdDbDatabase *pDb, bool doSubents)
virtual OdDbObjectId dimldrblk() const
virtual OdDbObjectId dimtxsty() const
virtual double dimgap() const
virtual void setDimtxt(double val)
TD_USING(OdDbCurve::getFirstDeriv)
virtual OdResult subGetTransformedCopy(const OdGeMatrix3d &xform, OdDbEntityPtr &pEnt) const ODRX_OVERRIDE
virtual OdResult getArea(double &area) const
virtual OdResult getPlane(OdGePlane &plane, OdDb::Planarity &planarity) const
virtual OdResult evaluateLeader()
virtual void disableArrowHead()
virtual void erased(const OdDbObject *pObject, bool erasing=true)
double annoWidth() const
GLuint GLsizei GLsizei GLint GLenum * type
Definition gles2_ext.h:274
GLintptr offset
Definition gles2_ext.h:183
LineWeight
Definition OdaDefs.h:386