CFx SDK Documentation  2020SP3
GiLightTraitsData.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 __OD_GI_LIGHT_TRAITS_DATA__
25 #define __OD_GI_LIGHT_TRAITS_DATA__
26 
27 #include "TD_PackPush.h"
28 
29 #include "Gi/GiLightTraits.h"
30 
36 {
37  bool m_bOn;
38  double m_dIntensity;
39  OdCmEntityColor m_color;
40  OdGiShadowParameters m_shadowParameters;
41 
42 public:
43  enum LightType
44  {
50  };
51 
52  static LightType drawableLightType(const OdGiDrawable *pDrawable);
53 protected:
55 
56 protected:
58  : m_bOn(false)
59  , m_dIntensity(0.0)
61  {}
62 
63 public:
64  bool isOn() const { return m_bOn; }
65  void setOn(bool value) { m_bOn = value; }
66 
67  double intensity() const { return m_dIntensity; }
68  void setIntensity(double dIntensity) { m_dIntensity = dIntensity; }
69 
70  OdCmEntityColor color() const { return m_color; }
71  void setColor(const OdCmEntityColor& color) { m_color = color; }
72 
73  OdGiShadowParameters shadowParameters() const { return m_shadowParameters; }
74  void setShadowParameters(const OdGiShadowParameters& params) { m_shadowParameters = params; }
75 
76  LightType type() const { return m_type; }
77 
78  void save(OdGsFiler * pFiler) const;
79  void load(OdGsFiler * pFiler);
80 
81  static void deleteLightTraitsData(OdGiLightTraitsData* pLightTraits);
82 };
83 
85 {
86  const LightType lightType = (pDrawable) ? (LightType)pDrawable->drawableType() : kInvalidLight;
87  switch (lightType)
88  {
89  case kPointLight:
90  case kSpotLight:
91  case kDistantLight:
92  case kWebLight:
93  return lightType;
94  default:
95  return kInvalidLight;
96  }
97 }
98 
99 inline void OdGiLightTraitsData::save(OdGsFiler *pFiler) const {
100  pFiler->wrBool(isOn());
101  pFiler->wrDouble(intensity());
102  pFiler->wrUInt32(color().color());
103  m_shadowParameters.save(pFiler);
104 }
105 
106 inline void OdGiLightTraitsData::load(OdGsFiler *pFiler) {
107  setOn(pFiler->rdBool());
108  setIntensity(pFiler->rdDouble());
109  { OdCmEntityColor lightColor; lightColor.setColor(pFiler->rdUInt32()); setColor(lightColor); }
110  m_shadowParameters.load(pFiler);
111 }
112 
118 {
119  OdGePoint3d m_position;
120  OdGiLightAttenuation m_attenuation;
121  // Photometric data
122  double m_dPhysIntensity;
123  OdGiColorRGB m_lampColor;
124  bool m_bHasTarget;
125  OdGePoint3d m_target;
126  bool m_bHemisphere;
127 
128 public:
130  : m_dPhysIntensity(1500.0)
131  , m_lampColor(1.0, 1.0, 1.0)
132  , m_bHasTarget(false)
133  , m_bHemisphere(false)
134  {
136  }
137 
138  OdGePoint3d position() const { return m_position; }
139  void setPosition(const OdGePoint3d& pos) { m_position = pos; }
140 
141  OdGiLightAttenuation attenuation() const { return m_attenuation; }
142  void setAttenuation(const OdGiLightAttenuation& atten) { m_attenuation = atten; }
143 
144  double physicalIntensity() const { return m_dPhysIntensity; }
145  void setPhysicalIntensity(double intensity) { m_dPhysIntensity = intensity; }
146 
147  OdGiColorRGB lampColor() const { return m_lampColor; }
148  void setLampColor(const OdGiColorRGB& color) { m_lampColor = color; }
149 
150  bool hasTarget() const { return m_bHasTarget; }
151  void setHasTarget(bool bTarget) { m_bHasTarget = bTarget; }
152 
153  OdGePoint3d targetLocation() const { return m_target; }
154  void setTargetLocation(const OdGePoint3d &loc) { m_target = loc; }
155 
156  void setHemisphericalDistribution(bool bHemisphere) { m_bHemisphere = bHemisphere; }
157  bool hemisphericalDistribution() const { return m_bHemisphere; }
158 
159  inline void save(OdGsFiler *pFiler) const {
161  pFiler->wrPoint3d(position());
162  attenuation().save(pFiler);
163  pFiler->wrDouble(physicalIntensity());
164  pFiler->wrDouble(m_lampColor.red);
165  pFiler->wrDouble(m_lampColor.green);
166  pFiler->wrDouble(m_lampColor.blue);
167  pFiler->wrBool(hasTarget());
168  pFiler->wrPoint3d(targetLocation());
170  }
171 
172  inline void load(OdGsFiler *pFiler) {
174  pFiler->rdPoint3d(m_position);
175  m_attenuation.load(pFiler);
176  setPhysicalIntensity(pFiler->rdDouble());
177  m_lampColor.red = pFiler->rdDouble();
178  m_lampColor.green = pFiler->rdDouble();
179  m_lampColor.blue = pFiler->rdDouble();
180  setHasTarget(pFiler->rdBool());
181  pFiler->rdPoint3d(m_target);
183  }
184 };
185 
191 {
192  OdGePoint3d m_position, m_target;
193  OdGiLightAttenuation m_attenuation;
194  double m_dHotspot, m_dFalloff;
195  // Photometric data
196  double m_dPhysIntensity;
197  OdGiColorRGB m_lampColor;
198 
199 public:
201  : m_dHotspot(0.0)
202  , m_dFalloff(0.0)
203  , m_dPhysIntensity(1500.0)
204  , m_lampColor(1.0, 1.0, 1.0)
205  {
206  m_type = kSpotLight;
207  }
208 
209  OdGePoint3d position() const { return m_position; }
210  void setPosition(const OdGePoint3d& pos) { m_position = pos; }
211 
212  OdGePoint3d target() const { return m_target; }
213  void setTarget(const OdGePoint3d& trg) { m_target = trg; }
214 
215  OdGiLightAttenuation attenuation() const { return m_attenuation; }
216  void setAttenuation(const OdGiLightAttenuation& atten) { m_attenuation = atten; }
217 
218  bool setHotspotAndFalloff(double hotSpot, double falloff);
219  double hotspot() const { return m_dHotspot; }
220  double falloff() const { return m_dFalloff; }
221 
222  double physicalIntensity() const { return m_dPhysIntensity; }
223  void setPhysicalIntensity(double intensity) { m_dPhysIntensity = intensity; }
224 
225  OdGiColorRGB lampColor() const { return m_lampColor; }
226  void setLampColor(const OdGiColorRGB& color) { m_lampColor = color; }
227 
228  void save(OdGsFiler *pFiler) const {
230  pFiler->wrPoint3d(position());
231  pFiler->wrPoint3d(target());
232  attenuation().save(pFiler);
233  pFiler->wrDouble(physicalIntensity());
234  pFiler->wrDouble(hotspot());
235  pFiler->wrDouble(falloff());
236  pFiler->wrDouble(m_lampColor.red);
237  pFiler->wrDouble(m_lampColor.green);
238  pFiler->wrDouble(m_lampColor.blue);
239  }
240 
241  void load(OdGsFiler *pFiler) {
243  pFiler->rdPoint3d(m_position);
244  pFiler->rdPoint3d(m_target);
245  m_attenuation.load(pFiler);
246  setPhysicalIntensity(pFiler->rdDouble());
247  m_dHotspot = pFiler->rdDouble();
248  m_dFalloff = pFiler->rdDouble();
249  m_lampColor.red = pFiler->rdDouble();
250  m_lampColor.green = pFiler->rdDouble();
251  m_lampColor.blue = pFiler->rdDouble();
252  }
253 };
254 
259 inline bool OdGiSpotLightTraitsData::setHotspotAndFalloff(double hotspot, double falloff)
260 {
261  if((hotspot > falloff) ||
262  (hotspot < 0.0) || (falloff < 0.0) ||
263  (OdaToDegree(hotspot) > 160.0) || (OdaToDegree(falloff) > 160.0))
264  return false;
265  m_dHotspot = hotspot;
266  m_dFalloff = falloff;
267  return true;
268 }
269 
275 {
276  OdGeVector3d m_direction;
277  bool m_bIsSunlight;
278  // Photometric data
279  double m_dPhysIntensity;
280  OdGiColorRGB m_lampColor;
281  //OdGiSkyParameters m_skyParams; // Unused
282 
283 public:
285  : m_bIsSunlight(false)
286  , m_dPhysIntensity(1500.0)
287  , m_lampColor(1.0, 1.0, 1.0)
288  {
290  }
291 
292  OdGeVector3d direction() const { return m_direction; }
293  void setDirection(const OdGeVector3d& dir) { m_direction = dir; }
294 
295  bool isSunlight() const { return m_bIsSunlight; }
296  void setSunlight(bool val) { m_bIsSunlight = val; }
297 
298  double physicalIntensity() const { return m_dPhysIntensity; }
299  void setPhysicalIntensity(double intensity) { m_dPhysIntensity = intensity; }
300 
301  OdGiColorRGB lampColor() const { return m_lampColor; }
302  void setLampColor(const OdGiColorRGB& color) { m_lampColor = color; }
303 
304  void skyParameters(OdGiSkyParameters & /*params*/) const { /*params = m_skyParams;*/ }
305  void setSkyParameters(const OdGiSkyParameters & /*params*/) { /*m_skyParams = params;*/ }
306 
307  void save(OdGsFiler *pFiler) const {
309  pFiler->wrVector3d(direction());
310  pFiler->wrBool(isSunlight());
311  pFiler->wrDouble(physicalIntensity());
312  pFiler->wrDouble(m_lampColor.red);
313  pFiler->wrDouble(m_lampColor.green);
314  pFiler->wrDouble(m_lampColor.blue);
315  }
316 
317  void load(OdGsFiler *pFiler) {
319  pFiler->rdVector3d(m_direction);
320  setSunlight(pFiler->rdBool());
321  setPhysicalIntensity(pFiler->rdDouble());
322  m_lampColor.red = pFiler->rdDouble();
323  m_lampColor.green = pFiler->rdDouble();
324  m_lampColor.blue = pFiler->rdDouble();
325  }
326 };
327 
333 {
334  OdString m_webFile;
335  OdGeVector3d m_webRotate;
336  double m_dFlux;
337  OdGiWebLightTraits::WebFileType m_webFileType;
338  OdGiWebLightTraits::WebSymmetry m_webSymmetry;
339  bool m_bHorzAng90to270;
340 
341 public:
344  , m_dFlux(0.0)
345  , m_webFileType(OdGiWebLightTraits::kTypeA)
346  , m_webSymmetry(OdGiWebLightTraits::kNoSymmetry)
347  , m_bHorzAng90to270(false)
348  {
349  m_type = kWebLight;
350  }
351 
352  const OdString &webFile() const { return m_webFile; }
353  void setWebFile(const OdString &fileName) { m_webFile = fileName; }
354 
355  const OdGeVector3d& webRotation() const { return m_webRotate; }
356  void setWebRotation(const OdGeVector3d& rot) { m_webRotate = rot; }
357 
358  double webFlux() const { return m_dFlux; }
359  void setWebFlux(double flux) { m_dFlux = flux; }
360 
361  OdGiWebLightTraits::WebFileType webFileType() const { return m_webFileType; }
363 
364  OdGiWebLightTraits::WebSymmetry webSymmetry() const { return m_webSymmetry; }
365  void setWebSymmetry(OdGiWebLightTraits::WebSymmetry sym) { m_webSymmetry = sym; }
366 
367  bool webHorzAng90to270() const { return m_bHorzAng90to270; }
368  void setWebHorzAng90to270(bool bHA) { m_bHorzAng90to270 = bHA; }
369 
370  inline void save(OdGsFiler *pFiler) const {
372  pFiler->wrString(webFile());
373  pFiler->wrVector3d(webRotation());
374  pFiler->wrDouble(webFlux());
375  pFiler->wrUInt8((OdUInt8)webFileType());
376  pFiler->wrUInt8((OdUInt8)webSymmetry());
377  pFiler->wrBool(webHorzAng90to270());
378  }
379 
380  inline void load(OdGsFiler *pFiler) {
382  pFiler->rdString(m_webFile);
383  pFiler->rdVector3d(m_webRotate);
384  setWebFlux(pFiler->rdDouble());
387  setWebHorzAng90to270(pFiler->rdBool());
388  }
389 };
390 
392 {
393  switch(pLightTraits->type())
394  {
396  delete static_cast<OdGiDistantLightTraitsData*>(pLightTraits);
397  break;
399  delete static_cast<OdGiPointLightTraitsData*>(pLightTraits);
400  break;
402  delete static_cast<OdGiSpotLightTraitsData*>(pLightTraits);
403  break;
405  delete static_cast<OdGiWebLightTraitsData*>(pLightTraits);
406  break;
407  default:
408  {
409  ODA_FAIL_ONCE();
410  }
411  break;
412  }
413 }
414 
420 {
421  OdUInt32 m_nViewportId;
422  OdDbStub* m_pViewportObjectId;
423  bool m_bVpDepOn;
424  double m_dVpDepDimming;
425 
426 public:
428  m_nViewportId( 0 ),
429  m_pViewportObjectId( NULL ),
430  m_bVpDepOn( false ),
431  m_dVpDepDimming( 0.0 )
432  {
433  }
434 
435  OdUInt32 viewportId() const { return m_nViewportId; }
436  void setViewportId( OdUInt32 id ) { m_nViewportId = id; }
437 
438  OdDbStub* viewportObjectId() const { return m_pViewportObjectId; }
439  void setViewportObjectId( OdDbStub* id ) { m_pViewportObjectId = id; }
440 
441  bool vpDepOn() const { return m_bVpDepOn; }
442  void setVpDepOn( bool on ) { m_bVpDepOn = on; }
443 
444  double vpDepDimming() const { return m_dVpDepDimming; }
445  void setVpDepDimming( double dimming ) { m_dVpDepDimming = dimming; }
446 
447  inline void save(OdGsFiler *pFiler) const {
449  pFiler->wrBool( vpDepOn() );
450  pFiler->wrDouble( vpDepDimming() );
451  pFiler->wrUInt32( viewportId() );
452  pFiler->wrHandle( viewportObjectId() );
453  }
454 
455  inline void load(OdGsFiler *pFiler) {
457  setVpDepOn( pFiler->rdBool() );
458  setVpDepDimming( pFiler->rdDouble() );
459  setViewportId( pFiler->rdUInt32() );
460  setViewportObjectId( pFiler->rdHandle() );
461  }
462 };
463 
464 #include "TD_PackPop.h"
465 
466 #endif // __OD_GI_LIGHT_TRAITS_DATA__
OdGiLightTraitsData::setColor
void setColor(const OdCmEntityColor &color)
Definition: GiLightTraitsData.h:71
OdGiLightTraitsData::kSpotLight
@ kSpotLight
Definition: GiLightTraitsData.h:47
OdGiColorRGB::blue
double blue
Definition: GiLightTraits.h:57
OdCmEntityColor
Definition: CmColorBase.h:68
OdGiSpotLightTraitsData::setPhysicalIntensity
void setPhysicalIntensity(double intensity)
Definition: GiLightTraitsData.h:223
OdaToDegree
#define OdaToDegree(rad)
Definition: OdaCommon.h:65
OdGiDrawable::kWebLight
@ kWebLight
Definition: GiDrawable.h:97
OdGeVector3d
Definition: GeVector3d.h:54
OdString
Definition: OdString.h:95
OdGiDistantLightTraitsData::physicalIntensity
double physicalIntensity() const
Definition: GiLightTraitsData.h:298
NULL
#define NULL
Definition: GsProperties.h:177
OdGiWebLightTraitsData::webFileType
OdGiWebLightTraits::WebFileType webFileType() const
Definition: GiLightTraitsData.h:361
OdGiColorRGB
Definition: GiLightTraits.h:56
OdGiPointLightTraitsData::lampColor
OdGiColorRGB lampColor() const
Definition: GiLightTraitsData.h:147
OdGsFiler::wrVector3d
virtual void wrVector3d(const OdGeVector3d &vec)
OdGiLightTraitsVpDepData::setViewportObjectId
void setViewportObjectId(OdDbStub *id)
Definition: GiLightTraitsData.h:439
OdUInt8
unsigned char OdUInt8
Definition: OdPlatformSettings.h:759
OdGsFiler::rdVector3d
virtual void rdVector3d(OdGeVector3d &vec) const
OdGiLightTraitsVpDepData::vpDepOn
bool vpDepOn() const
Definition: GiLightTraitsData.h:441
OdGiDistantLightTraitsData::direction
OdGeVector3d direction() const
Definition: GiLightTraitsData.h:292
OdGiLightTraitsVpDepData::setVpDepDimming
void setVpDepDimming(double dimming)
Definition: GiLightTraitsData.h:445
OdGiPointLightTraitsData::setTargetLocation
void setTargetLocation(const OdGePoint3d &loc)
Definition: GiLightTraitsData.h:154
OdGsFiler::wrUInt32
virtual void wrUInt32(OdUInt32 val)
OdGiLightTraitsData
Definition: GiLightTraitsData.h:36
OdGsFiler::rdString
virtual void rdString(OdString &str) const
OdGiSpotLightTraitsData::setHotspotAndFalloff
bool setHotspotAndFalloff(double hotSpot, double falloff)
Definition: GiLightTraitsData.h:259
OdGiLightTraitsVpDepData::setViewportId
void setViewportId(OdUInt32 id)
Definition: GiLightTraitsData.h:436
type
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274
OdGiDrawable::kPointLight
@ kPointLight
Definition: GiDrawable.h:89
OdGiPointLightTraitsData::setPosition
void setPosition(const OdGePoint3d &pos)
Definition: GiLightTraitsData.h:139
false
false
Definition: DimVarDefs.h:165
OdGiWebLightTraits::WebSymmetry
WebSymmetry
Definition: GiLightTraits.h:872
OdGiLightTraitsData::kInvalidLight
@ kInvalidLight
Definition: GiLightTraitsData.h:45
OdGiSpotLightTraitsData::save
void save(OdGsFiler *pFiler) const
Definition: GiLightTraitsData.h:228
OdGiLightTraitsData::kDistantLight
@ kDistantLight
Definition: GiLightTraitsData.h:48
OdGiWebLightTraitsData::setWebFlux
void setWebFlux(double flux)
Definition: GiLightTraitsData.h:359
OdGiLightTraitsData::deleteLightTraitsData
static void deleteLightTraitsData(OdGiLightTraitsData *pLightTraits)
Definition: GiLightTraitsData.h:391
OdGsFiler::rdUInt32
virtual OdUInt32 rdUInt32() const
OdGsFiler::wrDouble
virtual void wrDouble(double val)
OdGiLightTraitsData::intensity
double intensity() const
Definition: GiLightTraitsData.h:67
OdGiWebLightTraitsData::webSymmetry
OdGiWebLightTraits::WebSymmetry webSymmetry() const
Definition: GiLightTraitsData.h:364
OdGiLightTraitsVpDepData::load
void load(OdGsFiler *pFiler)
Definition: GiLightTraitsData.h:455
TD_PackPop.h
OdGiSpotLightTraitsData::lampColor
OdGiColorRGB lampColor() const
Definition: GiLightTraitsData.h:225
OdCmEntityColor::setColor
void setColor(OdUInt32 color)
OdGiSpotLightTraitsData::OdGiSpotLightTraitsData
OdGiSpotLightTraitsData()
Definition: GiLightTraitsData.h:200
OdGiSpotLightTraitsData::setLampColor
void setLampColor(const OdGiColorRGB &color)
Definition: GiLightTraitsData.h:226
OdGiLightTraitsData::shadowParameters
OdGiShadowParameters shadowParameters() const
Definition: GiLightTraitsData.h:73
OdGiLightTraitsData::setIntensity
void setIntensity(double dIntensity)
Definition: GiLightTraitsData.h:68
OdGiDistantLightTraitsData::setSkyParameters
void setSkyParameters(const OdGiSkyParameters &)
Definition: GiLightTraitsData.h:305
OdGiDistantLightTraitsData::save
void save(OdGsFiler *pFiler) const
Definition: GiLightTraitsData.h:307
OdUInt32
unsigned int OdUInt32
Definition: OdPlatformSettings.h:783
OdGiPointLightTraitsData::OdGiPointLightTraitsData
OdGiPointLightTraitsData()
Definition: GiLightTraitsData.h:129
OdGiShadowParameters::load
void load(OdGsFiler *pFiler)
Definition: GiLightTraits.h:187
OdGiLightTraitsData::load
void load(OdGsFiler *pFiler)
Definition: GiLightTraitsData.h:106
OdGiLightTraitsVpDepData::vpDepDimming
double vpDepDimming() const
Definition: GiLightTraitsData.h:444
OdGiWebLightTraitsData::setWebHorzAng90to270
void setWebHorzAng90to270(bool bHA)
Definition: GiLightTraitsData.h:368
OdGiLightTraitsData::color
OdCmEntityColor color() const
Definition: GiLightTraitsData.h:70
OdGsFiler::rdHandle
virtual OdDbStub * rdHandle() const =0
OdGiLightTraitsData::setShadowParameters
void setShadowParameters(const OdGiShadowParameters &params)
Definition: GiLightTraitsData.h:74
OdGiLightTraitsData::kPointLight
@ kPointLight
Definition: GiLightTraitsData.h:46
OdGiLightAttenuation
Definition: GiLightTraits.h:402
OdGsFiler::rdBool
virtual bool rdBool() const
OdGiShadowParameters
Definition: GiLightTraits.h:120
OdGiPointLightTraitsData::hemisphericalDistribution
bool hemisphericalDistribution() const
Definition: GiLightTraitsData.h:157
OdGiSpotLightTraitsData::hotspot
double hotspot() const
Definition: GiLightTraitsData.h:219
OdGiWebLightTraitsData
Definition: GiLightTraitsData.h:333
GiLightTraits.h
OdGiLightTraitsVpDepData::OdGiLightTraitsVpDepData
OdGiLightTraitsVpDepData()
Definition: GiLightTraitsData.h:427
OdGiPointLightTraitsData::targetLocation
OdGePoint3d targetLocation() const
Definition: GiLightTraitsData.h:153
OdGsFiler::wrString
virtual void wrString(const OdString &str)
OdGiPointLightTraitsData::setHemisphericalDistribution
void setHemisphericalDistribution(bool bHemisphere)
Definition: GiLightTraitsData.h:156
OdGePoint3d
Definition: GePoint3d.h:55
OdGiLightTraitsVpDepData::viewportId
OdUInt32 viewportId() const
Definition: GiLightTraitsData.h:435
OdGiWebLightTraitsData::webRotation
const OdGeVector3d & webRotation() const
Definition: GiLightTraitsData.h:355
OdGiWebLightTraitsData::save
void save(OdGsFiler *pFiler) const
Definition: GiLightTraitsData.h:370
OdGiDrawable::drawableType
virtual DrawableType drawableType() const
Definition: GiDrawable.h:102
OdGiDistantLightTraitsData::load
void load(OdGsFiler *pFiler)
Definition: GiLightTraitsData.h:317
OdGiWebLightTraits
Definition: GiLightTraits.h:860
OdGiWebLightTraitsData::setWebFile
void setWebFile(const OdString &fileName)
Definition: GiLightTraitsData.h:353
OdGiPointLightTraitsData::hasTarget
bool hasTarget() const
Definition: GiLightTraitsData.h:150
OdGiDistantLightTraitsData::skyParameters
void skyParameters(OdGiSkyParameters &) const
Definition: GiLightTraitsData.h:304
OdGiPointLightTraitsData::setAttenuation
void setAttenuation(const OdGiLightAttenuation &atten)
Definition: GiLightTraitsData.h:142
OdGiDrawable
Definition: GiDrawable.h:49
OdGiShadowParameters::save
void save(OdGsFiler *pFiler) const
Definition: GiLightTraits.h:175
OdGiDistantLightTraitsData::lampColor
OdGiColorRGB lampColor() const
Definition: GiLightTraitsData.h:301
OdGiLightTraitsData::kWebLight
@ kWebLight
Definition: GiLightTraitsData.h:49
OdGiLightTraitsData::LightType
LightType
Definition: GiLightTraitsData.h:44
OdGsFiler::wrHandle
virtual void wrHandle(OdDbStub *pHandle)=0
OdGiLightTraitsVpDepData
Definition: GiLightTraitsData.h:420
OdGiLightTraitsVpDepData::viewportObjectId
OdDbStub * viewportObjectId() const
Definition: GiLightTraitsData.h:438
OdGiDistantLightTraitsData::setLampColor
void setLampColor(const OdGiColorRGB &color)
Definition: GiLightTraitsData.h:302
OdGiWebLightTraitsData::OdGiWebLightTraitsData
OdGiWebLightTraitsData()
Definition: GiLightTraitsData.h:342
OdGiDistantLightTraitsData::setSunlight
void setSunlight(bool val)
Definition: GiLightTraitsData.h:296
OdGiWebLightTraits::WebFileType
WebFileType
Definition: GiLightTraits.h:865
OdGiSpotLightTraitsData::setPosition
void setPosition(const OdGePoint3d &pos)
Definition: GiLightTraitsData.h:210
ODA_FAIL_ONCE
#define ODA_FAIL_ONCE()
Definition: DebugStuff.h:66
OdGiColorRGB::red
double red
Definition: GiLightTraits.h:57
TD_PackPush.h
OdGiWebLightTraitsData::webFile
const OdString & webFile() const
Definition: GiLightTraitsData.h:352
OdGiWebLightTraitsData::setWebSymmetry
void setWebSymmetry(OdGiWebLightTraits::WebSymmetry sym)
Definition: GiLightTraitsData.h:365
OdGiLightTraitsData::save
void save(OdGsFiler *pFiler) const
Definition: GiLightTraitsData.h:99
OdGiSpotLightTraitsData::setAttenuation
void setAttenuation(const OdGiLightAttenuation &atten)
Definition: GiLightTraitsData.h:216
OdGiWebLightTraitsData::setWebRotation
void setWebRotation(const OdGeVector3d &rot)
Definition: GiLightTraitsData.h:356
OdGiSpotLightTraitsData::attenuation
OdGiLightAttenuation attenuation() const
Definition: GiLightTraitsData.h:215
params
GLenum GLint * params
Definition: gles2_ext.h:184
OdGsFiler::rdDouble
virtual double rdDouble() const
OdGiLightTraitsData::setOn
void setOn(bool value)
Definition: GiLightTraitsData.h:65
OdGiPointLightTraitsData::attenuation
OdGiLightAttenuation attenuation() const
Definition: GiLightTraitsData.h:141
OdGsFiler::wrPoint3d
virtual void wrPoint3d(const OdGePoint3d &pt)
OdGiSkyParameters
Definition: GiLightTraits.h:499
OdGiWebLightTraitsData::webFlux
double webFlux() const
Definition: GiLightTraitsData.h:358
OdGiPointLightTraitsData::physicalIntensity
double physicalIntensity() const
Definition: GiLightTraitsData.h:144
OdGiWebLightTraitsData::setWebFileType
void setWebFileType(OdGiWebLightTraits::WebFileType type)
Definition: GiLightTraitsData.h:362
OdGsFiler::wrUInt8
virtual void wrUInt8(OdUInt8 val)
OdGiPointLightTraitsData
Definition: GiLightTraitsData.h:118
OdGiWebLightTraitsData::load
void load(OdGsFiler *pFiler)
Definition: GiLightTraitsData.h:380
OdGiSpotLightTraitsData::position
OdGePoint3d position() const
Definition: GiLightTraitsData.h:209
OdGsFiler::wrBool
virtual void wrBool(bool bVal)
OdGiLightAttenuation::save
void save(OdGsFiler *pFiler) const
Definition: GiLightTraits.h:476
OdGiDistantLightTraitsData::isSunlight
bool isSunlight() const
Definition: GiLightTraitsData.h:295
OdGiDistantLightTraitsData
Definition: GiLightTraitsData.h:275
OdGiLightTraitsData::type
LightType type() const
Definition: GiLightTraitsData.h:76
OdGiPointLightTraitsData::setHasTarget
void setHasTarget(bool bTarget)
Definition: GiLightTraitsData.h:151
OdGiSpotLightTraitsData::falloff
double falloff() const
Definition: GiLightTraitsData.h:220
OdGiLightTraitsData::OdGiLightTraitsData
OdGiLightTraitsData()
Definition: GiLightTraitsData.h:57
OdGiLightTraitsVpDepData::setVpDepOn
void setVpDepOn(bool on)
Definition: GiLightTraitsData.h:442
OdGiColorRGB::green
double green
Definition: GiLightTraits.h:57
value
GLsizei const GLfloat * value
Definition: gles2_ext.h:302
OdGsFiler::rdUInt8
virtual OdUInt8 rdUInt8() const
OdGiLightTraitsData::drawableLightType
static LightType drawableLightType(const OdGiDrawable *pDrawable)
Definition: GiLightTraitsData.h:84
OdGiDistantLightTraitsData::setDirection
void setDirection(const OdGeVector3d &dir)
Definition: GiLightTraitsData.h:293
OdGiPointLightTraitsData::setLampColor
void setLampColor(const OdGiColorRGB &color)
Definition: GiLightTraitsData.h:148
OdGiLightTraitsData::isOn
bool isOn() const
Definition: GiLightTraitsData.h:64
OdGsFiler::rdPoint3d
virtual void rdPoint3d(OdGePoint3d &pt) const
OdGiWebLightTraitsData::webHorzAng90to270
bool webHorzAng90to270() const
Definition: GiLightTraitsData.h:367
OdGiPointLightTraitsData::load
void load(OdGsFiler *pFiler)
Definition: GiLightTraitsData.h:172
OdGiPointLightTraitsData::save
void save(OdGsFiler *pFiler) const
Definition: GiLightTraitsData.h:159
OdGiLightAttenuation::load
void load(OdGsFiler *pFiler)
Definition: GiLightTraits.h:483
OdGsFiler
Definition: GsFiler.h:63
OdGiDrawable::kSpotLight
@ kSpotLight
Definition: GiDrawable.h:90
OdGiSpotLightTraitsData::setTarget
void setTarget(const OdGePoint3d &trg)
Definition: GiLightTraitsData.h:213
OdGiPointLightTraitsData::setPhysicalIntensity
void setPhysicalIntensity(double intensity)
Definition: GiLightTraitsData.h:145
OdGiSpotLightTraitsData::load
void load(OdGsFiler *pFiler)
Definition: GiLightTraitsData.h:241
OdGiSpotLightTraitsData::physicalIntensity
double physicalIntensity() const
Definition: GiLightTraitsData.h:222
OdGiLightTraitsData::m_type
LightType m_type
Definition: GiLightTraitsData.h:54
OdGiDrawable::kDistantLight
@ kDistantLight
Definition: GiDrawable.h:88
OdGiDistantLightTraitsData::setPhysicalIntensity
void setPhysicalIntensity(double intensity)
Definition: GiLightTraitsData.h:299
OdGiSpotLightTraitsData
Definition: GiLightTraitsData.h:191
OdGiSpotLightTraitsData::target
OdGePoint3d target() const
Definition: GiLightTraitsData.h:212
OdGiLightTraitsVpDepData::save
void save(OdGsFiler *pFiler) const
Definition: GiLightTraitsData.h:447
OdGiDistantLightTraitsData::OdGiDistantLightTraitsData
OdGiDistantLightTraitsData()
Definition: GiLightTraitsData.h:284
OdGiPointLightTraitsData::position
OdGePoint3d position() const
Definition: GiLightTraitsData.h:138