CFx SDK Documentation  2020SP3
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
FIRSTDLL_EXPORT
#define FIRSTDLL_EXPORT
Definition: RootExport.h:39
OdCmEntityColor
Definition: CmColorBase.h:68
scale
scale
Definition: DimVarDefs.h:1684
OdGiTextStyleTraits::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdGiTextStyleTraits)
OdGiLayerTraits::linetype
virtual OdDbStub * linetype() const =0
OdGiTextStyleTraitsPtr
OdSmartPtr< OdGiTextStyleTraits > OdGiTextStyleTraitsPtr
Definition: GiNonEntityTraits.h:254
OdCmTransparency
Definition: CmColorBase.h:1617
OdGiTextStyleTraits::textStyle
virtual void textStyle(OdGiTextStyle &giTextStyle) const =0
OdGiLinetypeTraits::setDashes
virtual void setDashes(const OdArray< OdGiLinetypeDash > &dashes)=0
OdGiLayerTraits
Definition: GiNonEntityTraits.h:45
OdGiLinetypeDash
Definition: GiLinetype.h:43
OdGiLinetypeTraitsPtr
OdSmartPtr< OdGiLinetypeTraits > OdGiLinetypeTraitsPtr
Definition: GiNonEntityTraits.h:226
OdGiLayerTraits::setColor
virtual void setColor(const OdCmEntityColor &color)=0
OdArray< OdGiLinetypeDash >
OdCodePage.h
TD_PackPop.h
OdGiLinetypeTraits::dashes
virtual void dashes(OdArray< OdGiLinetypeDash > &dashes)=0
OdGiLinetypeTraits::patternLength
virtual double patternLength() const =0
OdGiLinetypeTraits::setPatternLength
virtual void setPatternLength(double patternLength)=0
OdGiLayerTraits::setTransparency
virtual void setTransparency(const OdCmTransparency &transparency)=0
OdGiTextStyle
Definition: GiTextStyle.h:52
OdGiLayerTraits::lineweight
virtual OdDb::LineWeight lineweight() const =0
OdSmartPtr
Definition: SmartPtr.h:58
OdGiLayerTraits::setPlotStyleName
virtual void setPlotStyleName(OdDb::PlotStyleNameType plotStyleNameType, OdDbStub *pPlotStyleNameId=0)=0
OdGiLayerTraits::color
virtual OdCmEntityColor color() const =0
OdGiLayerTraitsPtr
OdSmartPtr< OdGiLayerTraits > OdGiLayerTraitsPtr
Definition: GiNonEntityTraits.h:156
OdGiLayerTraits::setMaterial
virtual void setMaterial(OdDbStub *pMaterialId)=0
OdGiTextStyleTraits::setTextStyle
virtual void setTextStyle(const OdGiTextStyle &giTextStyle)=0
TD_PackPush.h
OdGiTextStyleTraits
Definition: GiNonEntityTraits.h:234
OdDb::PlotStyleNameType
PlotStyleNameType
Definition: OdaDefs.h:413
OdGiDrawable::kLastFlag
@ kLastFlag
Definition: GiDrawable.h:82
OdGiLayerTraits::plotStyleNameId
virtual OdDbStub * plotStyleNameId() const =0
OdGiDrawableTraits
Definition: Gi.h:71
OdDb::LineWeight
LineWeight
Definition: OdaDefs.h:382
GiDrawable.h
OdGiLayerTraits::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdGiLayerTraits)
OdGiLinetypeTraits::setScale
virtual void setScale(double scale)=0
OdGiLayerTraits::setLinetype
virtual void setLinetype(OdDbStub *pLinetypeId)=0
OdGiLinetypeTraits
Definition: GiNonEntityTraits.h:165
OdGiLayerTraits::materialId
virtual OdDbStub * materialId() const =0
OdGiLinetypeTraits::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdGiLinetypeTraits)
OdFont
Definition: OdFont.h:235
OdGiLinetypeTraits::scale
virtual double scale() const =0
OdGiLayerTraits::setLineweight
virtual void setLineweight(OdDb::LineWeight lineweight)=0
OdTtfDescriptor
Definition: TtfDescriptor.h:46
OdGiLayerTraits::plotStyleNameType
virtual OdDb::PlotStyleNameType plotStyleNameType() const =0
OdGiLayerTraits::transparency
virtual OdCmTransparency transparency() const =0
Gi.h