CFx SDK Documentation  2022 SP0
GiNonEntityTraits.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 #ifndef __ODGI_NONENTITYTRAITS_H__
25 #define __ODGI_NONENTITYTRAITS_H__
26 
27 #include "TD_PackPush.h"
28 
29 #include "Gi/Gi.h"
30 #include "OdCodePage.h"
31 #include "Gi/GiDrawable.h"
32 
33 class OdGiLinetypeDash;
34 class OdFont;
35 class OdTtfDescriptor;
36 class OdGiTextStyle;
37 
45 {
46 public:
48 
49  // returned via subSetAttributes()
50 
51  enum
52  {
53  kByBlock = (OdGiDrawable::kLastFlag << 1),
54  kFrozen = (OdGiDrawable::kLastFlag << 2),
55  kOff = (OdGiDrawable::kLastFlag << 3),
56  kPlottable = (OdGiDrawable::kLastFlag << 4),
57  kLocked = (OdGiDrawable::kLastFlag << 5)
58  };
59 
63  virtual OdCmEntityColor color() const = 0;
64 
68  virtual OdDb::LineWeight lineweight() const = 0;
69 
73  virtual OdDbStub* linetype() const = 0;
74 
92  virtual OdDbStub* plotStyleNameId() const = 0;
96  virtual OdDbStub* materialId() const = 0;
100  virtual OdCmTransparency transparency() const = 0;
101 
106  virtual void setColor(const OdCmEntityColor& color) = 0;
111  virtual void setLineweight(OdDb::LineWeight lineweight) = 0;
116  virtual void setLinetype(OdDbStub* pLinetypeId) = 0;
117 
137  virtual void setPlotStyleName(OdDb::PlotStyleNameType plotStyleNameType, OdDbStub* pPlotStyleNameId= 0) = 0;
138 
143  virtual void setMaterial(OdDbStub* pMaterialId) = 0;
144 
150  virtual void setTransparency(const OdCmTransparency &transparency) = 0;
151 };
152 
157 
158 
165 {
166 public:
168 
169  // returned via subSetAttributes()
170 
171  enum
172  {
173  kByBlock = (OdGiDrawable::kLastFlag << 1),
174  kByLayer = (OdGiDrawable::kLastFlag << 2),
175  kContinuous = (OdGiDrawable::kLastFlag << 3),
176  // Scale linetype to fit
177  kScaleToFit = (OdGiDrawable::kLastFlag << 4),
178  // Teigha(R) for .dgn files specific
179  kScalability= (OdGiDrawable::kLastFlag << 5),
180  kDgLinetype = (OdGiDrawable::kLastFlag << 6),
181  //
182  kGiLinetypeFlagMax = kDgLinetype
183  };
184 
191  virtual double patternLength() const = 0;
192 
197  virtual void dashes(OdArray<OdGiLinetypeDash>& dashes) = 0;
198 
202  virtual double scale() const = 0;
203 
208  virtual void setDashes(const OdArray<OdGiLinetypeDash>& dashes) = 0;
212  virtual void setScale(double scale) = 0;
221  virtual void setPatternLength(double patternLength) = 0;
222 };
227 
234 {
235 public:
237 
242  virtual void textStyle(OdGiTextStyle& giTextStyle) const = 0;
243 
248  virtual void setTextStyle(const OdGiTextStyle& giTextStyle) = 0;
249 };
250 
255 
256 #include "TD_PackPop.h"
257 
258 #endif
scale
Definition: DimVarDefs.h:1684
OdSmartPtr< OdGiLayerTraits > OdGiLayerTraitsPtr
OdSmartPtr< OdGiLinetypeTraits > OdGiLinetypeTraitsPtr
OdSmartPtr< OdGiTextStyleTraits > OdGiTextStyleTraitsPtr
#define FIRSTDLL_EXPORT
Definition: RootExport.h:39
Definition: OdFont.h:235
virtual void setTransparency(const OdCmTransparency &transparency)=0
virtual OdDbStub * plotStyleNameId() const =0
virtual OdDb::PlotStyleNameType plotStyleNameType() const =0
virtual OdCmTransparency transparency() const =0
virtual OdDb::LineWeight lineweight() const =0
virtual void setLineweight(OdDb::LineWeight lineweight)=0
virtual OdDbStub * linetype() const =0
virtual void setMaterial(OdDbStub *pMaterialId)=0
virtual OdDbStub * materialId() const =0
virtual void setPlotStyleName(OdDb::PlotStyleNameType plotStyleNameType, OdDbStub *pPlotStyleNameId=0)=0
virtual void setLinetype(OdDbStub *pLinetypeId)=0
virtual void setColor(const OdCmEntityColor &color)=0
virtual OdCmEntityColor color() const =0
ODRX_DECLARE_MEMBERS(OdGiLayerTraits)
virtual double patternLength() const =0
virtual void setDashes(const OdArray< OdGiLinetypeDash > &dashes)=0
virtual double scale() const =0
virtual void setScale(double scale)=0
ODRX_DECLARE_MEMBERS(OdGiLinetypeTraits)
virtual void dashes(OdArray< OdGiLinetypeDash > &dashes)=0
virtual void setPatternLength(double patternLength)=0
ODRX_DECLARE_MEMBERS(OdGiTextStyleTraits)
virtual void textStyle(OdGiTextStyle &giTextStyle) const =0
virtual void setTextStyle(const OdGiTextStyle &giTextStyle)=0
PlotStyleNameType
Definition: OdaDefs.h:413
LineWeight
Definition: OdaDefs.h:382