CFx SDK Documentation  2020SP3
GsBaseVectorizer.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_GS_BASE_VECTORIZER_H_
25 #define __OD_GS_BASE_VECTORIZER_H_
26 
27 #include "TD_PackPush.h"
28 
29 #include "Gs/GsExport.h"
31 #include "Gs/GsExtAccum.h"
32 #include "Gs/GsModel.h"
33 #include "GsMarkerArray.h"
34 #include "Gs/GsHighlightData.h"
35 
36 class OdGsBaseModel;
37 class OdGsLayerNode;
38 class OdGsUpdateContext;
39 class OdGiSelectProc;
40 class OdGsEntityNode;
43 struct OdGsGeomPortion;
44 class OdGsMaterialNode;
45 class OdGsBaseVectorizer;
46 
47 class OdGsMtContext;
48 class OdGsUpdateState;
49 class OdGiSharedRefDesc;
50 class OdGiHistory;
52 
53 class OdPerfTimerBase;
54 
62 {
63 public:
65 
70  {
71  return *m_pExtAccum.get();
72  }
73  OdGsBaseModel* gsModel() const { return m_pGsModel; }
74 
75  bool isRecordingMetafile() { return m_pGeomPortion != 0; }
76  OdGsGeomPortion *currentGeomPortion() const { return m_pGeomPortion; }
77 
78  void beginMetafileRecording(OdGsGeomPortion* pGeomPortion) { m_pGeomPortion = pGeomPortion; }
80  void onNestedDrawable(OdDbStub* layerId);
82 
83  bool isLayerFrozen(OdGsLayerNode *pLayerNode) const;
84 private:
85  friend class OdGsBaseVectorizer;
86  void set(OdGsBaseVectorizer* v) { m_vectorizer = v; }
87  void onLayerModified(OdDbStub* layerId);
88  void onLayerModified(OdDbStub* layerId, bool bFrozen);
89  void onFrozenLayerModified(OdDbStub* layerId) const;
90 
91 public:
93 
94 protected:
98 };
99 
104 
112 {
113 public:
115 
116 protected:
118 
119 public:
120 #ifdef SWIG
121  virtual void draw(const OdGiDrawable* pDrawable) {draw(pDrawable);};
122 #endif
123 
125  OdGsWriter& gsWriter() { return m_gsWriter; }
126  const OdGsWriter& gsWriter() const { return m_gsWriter; }
127  OdGsExtAccum& gsExtentsAccum() { return gsWriter().extentsAccum(); }
128 
153  virtual void beginMetafile(OdRxObject* pMetafile);
165  virtual void endMetafile(OdRxObject* pMetafile);
166 
177  virtual void playMetafile(const OdRxObject* pMetafile);
178 
184  virtual bool saveMetafile(const OdRxObject* pMetafile, OdGsFiler *pFiler);
190 
195  bool isMetafileEmpty() const { return m_nMetafileSize == 0; }
196 
202  {
203  if( m_nMetafileSize != OdUInt64( -1 ) ) return m_nMetafileSize;
204  return 0;
205  }
206 
210  virtual void loadViewport();
211 
212  virtual bool forceMetafilesDependence() const;
213 
214  virtual bool isViewRegenerated() const;
215 
219  virtual void drawViewportFrame();
220  virtual void updateViewport();
221 
222  // Materials support
223  virtual void processMaterialNode(OdDbStub *materialId, OdGsMaterialNode *pNode);
224  virtual bool saveMaterialCache(const OdGsMaterialNode *pNode, OdGsFiler *pFiler);
225  virtual bool loadMaterialCache(OdGsMaterialNode *pNode, OdGsFiler *pFiler);
226 
227  virtual void addPointLight(const OdGiPointLightTraitsData&) {}
228  virtual void addSpotLight(const OdGiSpotLightTraitsData&) {}
230  virtual void addWebLight(const OdGiWebLightTraitsData&);
231  // default implementation call's addPointLight
232 
234 
238  void pushModelTransform(const OdGeVector3d& normal);
240 
244 
248  virtual void setEntityTraitsDataChanged(int bit, bool value = true);
249 
251 
254  bool disableInfiniteGeomExtents() const { return GETBIT(m_flags, kDisableInfiniteGeomExtents); }
255  bool sectionableGeomExtentsOnly() const { return GETBIT(m_flags, kSectionableGeomExtentsOnly); }
256  void setSectionableGeomExtentsOnly(bool bOn) { SETBIT(m_flags, kSectionableGeomExtentsOnly, bOn); }
257 
263  void playMetafileMode(const OdRxObject* pMetafile, EMetafilePlayMode eMode);
267  EMetafilePlayMode metafilePlayMode() const { return m_eMfPlayMode; }
268 
270  {
271  kSharedRefTransform = (1 << 0),
272  kSharedRefUpdate = (1 << 1),
273  kSharedRefSelect = (1 << 2)
274  };
275  virtual void pushMetafileTransform(const OdGeMatrix3d&, OdUInt32 = 0){}
276  virtual void popMetafileTransform(OdUInt32 = 0){}
277 
278  virtual bool useSharedBlockReferences() const { return true; }
279  virtual bool useMetafileAsGeometry() const { return false; }
283  virtual void reportUpdateError(OdDbStub* /*entityId*/, const OdError& error)
284  {
285 #ifdef ODA_DIAGNOSTICS
286  throw error;
287 #else
288  ODA_ASSERT(error); // prevent arg unused warning
289 #endif
290  }
291 
292  OdGsLayerNode* gsLayerNode(OdDbStub* layerId, OdGsBaseModel* pModel);
293 
297  inline bool isFaded() const;
298  inline OdUInt32 fadingIntensity() const;
299 
300  inline bool isHighlighted() const;
301 
302  inline bool isSelecting() const;
303 
304  bool isDragging() const;
305 
306  virtual OdGiConveyorOutput& gsExtentsOutput() { return secondaryOutput(); }
307 
316  virtual void setAnalyticLinetypingCircles(bool analytic);
317 
325  virtual bool isAnalyticLinetypingCircles() const;
326 
335  virtual void setAnalyticLinetypingComplexCurves(bool analytic);
336 
344  virtual bool isAnalyticLinetypingComplexCurves() const;
345 
346 //#ifdef GS_INEXACT_SELECTION
348 //#endif
349 
351  OdUInt32 incFlags = OdGsProperties::kAll);
352 
357 
358  // OdGiBaseVectorizerImpl methods
359  virtual void setUp(OdGsViewImpl& view);
360 
361  // OdGiBaseVectorizer methods
362  virtual void beginViewVectorization();
363  virtual void endViewVectorization();
364  virtual void onTraitsModified();
365  virtual bool regenAbort() const;
366  virtual bool doDraw(OdUInt32 drawableFlags, const OdGiDrawable* pDrawable);
367  virtual void setSelectionMarker(OdGsMarker selectionMarker);
369 
375  virtual void setVisualStyle(const OdGiVisualStyle& visualStyle);
376 
377  const OdGsMarkerArray* highlightedSubentities() const;
379  OdUInt32 threadIndex() const;
380 
381  void highlight(bool bHighlight);
385  const OdGsHlBranch* currentHighlightBranch() const;
386 
387  OdGsLayerNode *activeLayerNode(bool bSync = false) const;
388 
389  OdGsModel::RenderType activeRenderType() const;
390  OdGsOverlayId activeOverlay() const;
391 protected:
392  void doSelect(const OdGePoint2d* aPtDc, int numPoints,
407  virtual void display(bool bUpdate);
413  virtual void updateExtents(bool bBuildCache);
414 
415  // OdGiBaseVectorizer methods
417  virtual OdDbStub* switchLayer(OdDbStub* layerId) const;
418 
419  void selectionMarkerOnChange(OdGsMarker nSelectionMarker);
420 
421  void checkRenderType(const OdGsModel *pModel);
422  virtual void renderTypeOnChange(OdGsModel::RenderType renderType);
423  virtual void switchOverlay(OdGsOverlayId overlayId);
424 
426 
427 public:
428  void updateExtentsInThreadInit(OdGsMtContext& mtContext);
429 
430 private:
431  void setInitGsState(bool bOn);
432  bool isRecordingHistory();
433  void deleteHistory();
434  void setThreadIndex(OdUInt32 idx) { m_threadIndex = idx; }
435  bool drawSectionable(const OdGiDrawable& drawable, bool& bRes);
436  bool drawSectionGeometry(OdGiSectionGeometry& geom, bool bVpModelTfAwareBefore);
437  void setCurrentState(OdGsUpdateState& newState);
438  OdGsUpdateState* currentState() { return m_curState; }
439  const OdGsUpdateState* currentState() const { return m_curState; }
440  void applyState(const OdGsUpdateState& s, const OdGsUpdateState& prev);
441 
442 public:
444 protected:
451  OdGsUpdateState* m_curState;
455  // Fading support
457  {
458  kFfLockedLayer = (1 << 0),
459  kFfXref = (1 << 1),
460  kFfRefEdit = (1 << 2),
461  kFfFlagsMask = kFfLockedLayer | kFfXref | kFfRefEdit,
462  kEFfLockedLayer = (1 << 4),
463  kEFfXref = (1 << 5),
464  kEFfRefEdit = (1 << 6),
465  kEFfFlagsMask = kEFfLockedLayer | kEFfXref | kEFfRefEdit,
466  kEFfFlagsOffset = 4,
467  kFvLockedLayerOffset = 8,
468  kFvLockedLayerMask = (0xFF << kFvLockedLayerOffset),
469  kFvXrefOffset = 16,
470  kFvXrefMask = (0xFF << kFvXrefOffset),
471  kFvRefEditOffset = 24,
472  kFvRefEditMask = (0xFF << kFvRefEditOffset)
473  };
475  template <OdGiContext::FadingType fadingType> friend class OdGsLockFadingFlag;
476 
477 public:
482  void setRenderAbort( bool bSet );
486  virtual bool renderAbort();
487 protected:
489  {
491  kViewInteractive = OdGiBaseVectorizerImpl::kLastImplFlag << 2,
492  kLastBaseVectorizerFlag = kViewInteractive
493  };
496 
497 
498 private:
499  mutable const OdGiLayerTraitsData* m_pCachedLayer;
500  OdGsLayerNode* m_effectiveLayer;
501  OdGsExtAccumPtr m_pOutputExtents;
502  OdGiHistory* m_giHistory;
503  OdUInt32 m_threadIndex;
504  bool m_bTraitsDataChanged;
505  bool m_bByBlockTraitsChanged;
506  friend class OdGsUpdateContext;
507  friend class OdGsDisplayContext;
508  friend class OdGsBaseVectorizeView;
509  friend class OdGsApplyModelOverrides;
510 };
511 
512 template <OdGiContext::FadingType fadingType>
514 {
515  protected:
518  public:
520  : m_lockedFlags(vectorizer.m_fadingFlags)
521  , m_bSavedBit(GETBIT(vectorizer.m_fadingFlags, 1 << fadingType))
522  {}
523  void set(bool bNewVal) { SETBIT(m_lockedFlags, 1 << fadingType, bNewVal); }
524  OdGsLockFadingFlag(OdGsBaseVectorizer &vectorizer, bool bNewVal)
525  : m_lockedFlags(vectorizer.m_fadingFlags)
526  , m_bSavedBit(GETBIT(vectorizer.m_fadingFlags, 1 << fadingType))
527  { set(bNewVal); }
529 };
530 
531 inline bool OdGsBaseVectorizer::isFaded() const
532 { // Returns true in case if any type of fading is 'true' and fading value is positive
534 }
535 
537 { // Returns percentage in [0-100] range
538  OdUInt32 nIntensityMix = 100;
540  nIntensityMix = nIntensityMix * (100 - ((m_fadingFlags & kFvLockedLayerMask) >> kFvLockedLayerOffset)) / 100;
542  nIntensityMix = nIntensityMix * (100 - ((m_fadingFlags & kFvXrefMask) >> kFvXrefOffset)) / 100;
544  nIntensityMix = nIntensityMix * (100 - ((m_fadingFlags & kFvRefEditMask) >> kFvRefEditOffset)) / 100;
545  return 100 - nIntensityMix;
546 }
547 
549 {
550  return m_pCurHltBr.get() && m_pCurHltBr->markers().size() ? &m_pCurHltBr->markers() : NULL;
551 }
552 
554 {
555  return m_threadIndex;
556 }
557 
559 {
560  return m_pCurHltBr;
561 }
562 
564 {
565  if (bSync)
567  return m_effectiveLayer;
568 }
569 
571 {
572  return m_curRenderType;
573 }
574 
576 {
577  return m_curOverlay;
578 }
579 
581 {
582  return m_pSelectProc != 0;
583 }
584 
586 {
587  return GETBIT(m_flags, kHighlighted);
588 }
589 
590 #include "TD_PackPop.h"
591 
592 #endif // __OD_GS_BASE_VECTORIZER_H_
GETBIT
#define GETBIT(flags, bit)
Definition: OdaDefs.h:498
OdGsBaseVectorizer::setAnalyticLinetypingComplexCurves
virtual void setAnalyticLinetypingComplexCurves(bool analytic)
OdGsBaseVectorizer::setSelectionMarker
virtual void setSelectionMarker(OdGsMarker selectionMarker)
OdGsBaseVectorizer::beginViewVectorization
virtual void beginViewVectorization()
OdGsBaseVectorizer::kEFfXref
@ kEFfXref
Definition: GsBaseVectorizer.h:463
OdGsBaseVectorizer::MetafileTransformFlags
MetafileTransformFlags
Definition: GsBaseVectorizer.h:270
OdGeVector3d
Definition: GeVector3d.h:54
OdGsBaseVectorizer::setUp
virtual void setUp(OdGsViewImpl &view)
NULL
#define NULL
Definition: GsProperties.h:177
OdRxObjectPtr
Definition: RxObject.h:345
OdGsWriter
Definition: GsBaseVectorizer.h:62
OdGsBaseVectorizer::pushModelTransform
void pushModelTransform(const OdGeVector3d &normal)
OdGsBaseVectorizer::kFvXrefOffset
@ kFvXrefOffset
Definition: GsBaseVectorizer.h:469
OdGsLockFadingFlag::OdGsLockFadingFlag
OdGsLockFadingFlag(OdGsBaseVectorizer &vectorizer, bool bNewVal)
Definition: GsBaseVectorizer.h:524
OdGiLayerTraitsData
Definition: GiLayerTraitsData.h:72
OdGsLockFadingFlag::set
void set(bool bNewVal)
Definition: GsBaseVectorizer.h:523
OdGsBaseVectorizer
Definition: GsBaseVectorizer.h:112
OdGsBaseVectorizer::isAnalyticLinetypingCircles
virtual bool isAnalyticLinetypingCircles() const
OdGsBaseVectorizer::endMetafile
virtual void endMetafile(OdRxObject *pMetafile)
OdGsBaseVectorizer::gsWriter
OdGsWriter & gsWriter()
Definition: GsBaseVectorizer.h:125
OdGsBaseVectorizer::m_drawableFilterFunction
OdIntPtr m_drawableFilterFunction
Definition: GsBaseVectorizer.h:454
OdGsBaseVectorizer::addDistantLight
virtual void addDistantLight(const OdGiDistantLightTraitsData &)
Definition: GsBaseVectorizer.h:229
OdGsBaseVectorizer::activeRenderType
OdGsModel::RenderType activeRenderType() const
Definition: GsBaseVectorizer.h:570
OdGsBaseVectorizer::popMetafileTransform
virtual void popMetafileTransform(OdUInt32=0)
Definition: GsBaseVectorizer.h:276
OdGsBaseVectorizer::activeLayerNode
OdGsLayerNode * activeLayerNode(bool bSync=false) const
Definition: GsBaseVectorizer.h:563
OdGsBaseVectorizer::BaseVectorizerFlags
BaseVectorizerFlags
Definition: GsBaseVectorizer.h:489
OdGsBaseVectorizer::loadMaterialCache
virtual bool loadMaterialCache(OdGsMaterialNode *pNode, OdGsFiler *pFiler)
OdGsLockFadingFlag
Definition: GsBaseVectorizer.h:514
OdGsBaseVectorizer::m_dRenderAbortCondition
double m_dRenderAbortCondition
Definition: GsBaseVectorizer.h:494
OdGsBaseVectorizer::checkSelection
void checkSelection()
OdGsBaseVectorizer::highlightedSubentities
const OdGsMarkerArray * highlightedSubentities() const
Definition: GsBaseVectorizer.h:548
OdRxObject
Definition: RxObject.h:564
OdGiBaseVectorizer::updateLayerTraits
void updateLayerTraits(OdGiSubEntityTraitsData &subEntityTraits) const
OdGsWriter::OdGsWriter
OdGsWriter()
OdGsBaseVectorizer::playMetafile
virtual void playMetafile(const OdRxObject *pMetafile)
OdGiBaseVectorizer
Definition: GiBaseVectorizer.h:171
SETBIT
#define SETBIT(flags, bit, value)
Definition: OdaDefs.h:497
OdGsBaseVectorizer::useSharedBlockReferences
virtual bool useSharedBlockReferences() const
Definition: GsBaseVectorizer.h:278
OdGsBaseVectorizer::highlight
void highlight(bool bHighlight)
OdGsLayerNode
Definition: GsLayerNode.h:41
OdGsWriter::beginMetafileRecording
void beginMetafileRecording(OdGsGeomPortion *pGeomPortion)
Definition: GsBaseVectorizer.h:78
EMetafilePlayMode
EMetafilePlayMode
Definition: GsDefs.h:328
GsModel.h
OdGsBaseVectorizer::lastMetafileSize
OdUInt64 lastMetafileSize() const
Definition: GsBaseVectorizer.h:201
OdGsBaseVectorizer::pushModelTransform
void pushModelTransform(const OdGeMatrix3d &xfm)
OdGsBaseVectorizer::displayWithoutNesting
void displayWithoutNesting(OdGsEntityNode *pNode)
OdGsBaseVectorizer::regenAbort
virtual bool regenAbort() const
OdGsBaseVectorizer::m_pSelectProc
OdGiSelectProc * m_pSelectProc
Definition: GsBaseVectorizer.h:447
OdGsBaseVectorizer::setEntityTraitsDataChanged
virtual void setEntityTraitsDataChanged()
OdGsWriter::m_vectorizer
OdGsBaseVectorizer * m_vectorizer
Definition: GsBaseVectorizer.h:97
OdGsBaseVectorizer::activeOverlay
OdGsOverlayId activeOverlay() const
Definition: GsBaseVectorizer.h:575
OdGsBaseVectorizer::m_curState
OdGsUpdateState * m_curState
Definition: GsBaseVectorizer.h:451
OdGsBaseVectorizer::addWebLight
virtual void addWebLight(const OdGiWebLightTraitsData &)
OdArray< OdGsMarker, OdMemoryAllocator< OdGsMarker > >
OdGsBaseVectorizer::output
virtual OdGiConveyorOutput & output()
TD_PackPop.h
TPtr::get
const TObj * get() const
Definition: TPtr.h:111
OdGsBaseVectorizer::displayViewportProperties
virtual bool displayViewportProperties(OdGsPropertiesDirectRenderOutput *pdro=NULL, OdUInt32 incFlags=OdGsProperties::kAll)
OdGsModel::RenderType
RenderType
Definition: GsModel.h:225
OdGsMarker
ptrdiff_t OdGsMarker
Definition: OdPlatformSettings.h:889
OdGsBaseVectorizer::saveMaterialCache
virtual bool saveMaterialCache(const OdGsMaterialNode *pNode, OdGsFiler *pFiler)
OdGsBaseVectorizer::saveMetafile
virtual bool saveMetafile(const OdRxObject *pMetafile, OdGsFiler *pFiler)
OdGsBaseVectorizer::kFfXref
@ kFfXref
Definition: GsBaseVectorizer.h:459
OdGsBaseVectorizer::objectToDeviceMatrix
virtual OdGeMatrix3d objectToDeviceMatrix() const
OdUInt32
unsigned int OdUInt32
Definition: OdPlatformSettings.h:783
OdGsHlBranch
Definition: GsHighlightData.h:53
OdGeMatrix3d
Definition: GeMatrix3d.h:73
OdGsBaseVectorizer::loadViewport
virtual void loadViewport()
OdGsBaseVectorizer::m_curRenderType
OdGsModel::RenderType m_curRenderType
Definition: GsBaseVectorizer.h:452
OdGsBaseVectorizer::kFfRefEdit
@ kFfRefEdit
Definition: GsBaseVectorizer.h:460
OdGsBaseVectorizer::pushClipBoundary
void pushClipBoundary(OdGiClipBoundary *pBoundary)
OdGsBaseVectorizer::isMetafileEmpty
bool isMetafileEmpty() const
Definition: GsBaseVectorizer.h:195
OdGsBaseVectorizer::m_pDetachedSecondaryOutput
OdGiConveyorGeometry * m_pDetachedSecondaryOutput
Definition: GsBaseVectorizer.h:449
OdGiBaseVectorizer::draw
void draw(const OdGiDrawable *pDrawable)
OdGiClipBoundary
Definition: GiClipBoundary.h:41
OdGsMaterialNode
Definition: GsMaterialNode.h:50
OdGiConveyorGeometry
Definition: GiConveyorGeometry.h:270
OdGiWebLightTraitsData
Definition: GiLightTraitsData.h:333
OdGsView::SelectionMode
SelectionMode
Definition: Gs.h:157
OdGsBaseVectorizer::disableInfiniteGeomExtents
bool disableInfiniteGeomExtents() const
Definition: GsBaseVectorizer.h:254
OdGiConveyorOutput
Definition: GiConveyorNode.h:64
OdGsBaseVectorizer::doViewExtents
bool doViewExtents(OdGeBoundBlock3d &extents)
OdGsBaseVectorizer::doSelect
void doSelect(const OdGePoint2d *aPtDc, int numPoints, OdGsSelectionReactor *pReactor, OdGsView::SelectionMode mode)
OdGsBaseVectorizer::setEntityTraitsDataChanged
virtual void setEntityTraitsDataChanged(int bit, bool value=true)
OdPerfTimerBase
Definition: OdPerfTimer.h:39
OdGsBaseVectorizer::setRenderAbort
void setRenderAbort(bool bSet)
OdGsBaseVectorizer::switchOverlay
virtual void switchOverlay(OdGsOverlayId overlayId)
OdGsBaseVectorizer::playMetafileMode
void playMetafileMode(const OdRxObject *pMetafile, EMetafilePlayMode eMode)
OdGiSelectProc
Definition: GiSelectProc.h:68
OdGsBaseVectorizer::useMetafileAsGeometry
virtual bool useMetafileAsGeometry() const
Definition: GsBaseVectorizer.h:279
OdSmartPtr< OdGsExtAccum >
OdGsBaseVectorizer::metafilePlayMode
EMetafilePlayMode metafilePlayMode() const
Definition: GsBaseVectorizer.h:267
OdGsWriter::endMetafileRecording
void endMetafileRecording()
OdGsBaseVectorizer::loadMetafile
virtual OdRxObjectPtr loadMetafile(OdGsFiler *pFiler)
OdGiVisualStyle
Definition: GiVisualStyle.h:996
OdGsBaseVectorizer::getTransformForMetafileGeometry
virtual OdGeMatrix3d getTransformForMetafileGeometry() const
Definition: GsBaseVectorizer.h:282
OdGsBaseVectorizer::kEFfFlagsMask
@ kEFfFlagsMask
Definition: GsBaseVectorizer.h:465
OdGiBaseVectorizer::m_flags
OdUInt32 m_flags
Definition: GiBaseVectorizer.h:338
OdGsBaseVectorizer::kFvXrefMask
@ kFvXrefMask
Definition: GsBaseVectorizer.h:470
OdGiAbstractClipBoundary
Definition: GiAbstractClipBoundary.h:39
OdGsBaseVectorizer::m_pDetachedOutput
OdGiConveyorGeometry * m_pDetachedOutput
Definition: GsBaseVectorizer.h:448
OdGsBaseVectorizer::fadingIntensity
OdUInt32 fadingIntensity() const
Definition: GsBaseVectorizer.h:536
OdGsBaseVectorizer::m_curOverlay
OdGsOverlayId m_curOverlay
Definition: GsBaseVectorizer.h:453
OdGsBaseVectorizer::pushMetafileTransform
virtual void pushMetafileTransform(const OdGeMatrix3d &, OdUInt32=0)
Definition: GsBaseVectorizer.h:275
OdGsBaseVectorizer::kFvRefEditMask
@ kFvRefEditMask
Definition: GsBaseVectorizer.h:472
OdGsBaseVectorizeView
Definition: GsBaseVectorizeView.h:53
OdArray::size
size_type size() const
Definition: OdArray.h:893
OdGsWriter::isLayerFrozen
bool isLayerFrozen(OdGsLayerNode *pLayerNode) const
OdGsWriter::onNestedDrawable
void onNestedDrawable(OdDbStub *layerId)
GiBaseVectorizerImpl.h
OdGsBaseVectorizer::gsExtentsOutput
virtual OdGiConveyorOutput & gsExtentsOutput()
Definition: GsBaseVectorizer.h:306
OdGsBaseVectorizer::addPointLight
virtual void addPointLight(const OdGiPointLightTraitsData &)
Definition: GsBaseVectorizer.h:227
OdGiDrawable
Definition: GiDrawable.h:49
OdGsWriter::m_pExtAccum
OdGsExtAccumPtr m_pExtAccum
Definition: GsBaseVectorizer.h:95
OdGsBaseVectorizer::m_viewTimingProcessor
OdPerfTimerBase * m_viewTimingProcessor
Definition: GsBaseVectorizer.h:495
OdGsViewImpl
Definition: GsViewImpl.h:58
OdGsBaseVectorizer::sectionableGeomExtentsOnly
bool sectionableGeomExtentsOnly() const
Definition: GsBaseVectorizer.h:255
OdGsBaseVectorizer::display
virtual void display(bool bUpdate)
OdGsBaseVectorizer::switchLayer
virtual OdDbStub * switchLayer(OdDbStub *layerId) const
OdGsBaseVectorizer::kFfFlagsMask
@ kFfFlagsMask
Definition: GsBaseVectorizer.h:461
OdGsExtAccum
Definition: GsExtAccum.h:90
OdGsBaseVectorizer::updateExtents
virtual void updateExtents(bool bBuildCache)
OdGsBaseVectorizer::pushClipBoundary
void pushClipBoundary(OdGiClipBoundary *pBoundary, OdGiAbstractClipBoundary *pClipInfo)
OdGsBaseVectorizer::~OdGsBaseVectorizer
~OdGsBaseVectorizer()
v
const GLfloat * v
Definition: gles2_ext.h:315
OdGsBaseVectorizer::renderAbort
virtual bool renderAbort()
OdGsBaseVectorizer::m_pCurHltBr
OdGsHlBranchPtr m_pCurHltBr
Definition: GsBaseVectorizer.h:443
OdGsBaseVectorizer::reportUpdateError
virtual void reportUpdateError(OdDbStub *, const OdError &error)
Definition: GsBaseVectorizer.h:283
OdGiBaseVectorizer::m_effectiveEntityTraitsData
OdGiSubEntityTraitsData m_effectiveEntityTraitsData
Definition: GiBaseVectorizer.h:175
OdGsBaseVectorizer::effectiveLayerTraits
virtual const OdGiLayerTraitsData & effectiveLayerTraits() const
OdGsBaseVectorizer::isSelecting
bool isSelecting() const
Definition: GsBaseVectorizer.h:580
OdGsWriter::currentGeomPortion
OdGsGeomPortion * currentGeomPortion() const
Definition: GsBaseVectorizer.h:76
OdGsBaseVectorizer::kFvLockedLayerOffset
@ kFvLockedLayerOffset
Definition: GsBaseVectorizer.h:467
OdGsBaseVectorizer::processMaterialNode
virtual void processMaterialNode(OdDbStub *materialId, OdGsMaterialNode *pNode)
TD_PackPush.h
OdGsBaseVectorizer::ODRX_USING_HEAP_OPERATORS
ODRX_USING_HEAP_OPERATORS(OdGiBaseVectorizer)
OdGsWriter::separateMetafile
void separateMetafile()
GsExport.h
OdGsBaseVectorizer::doDraw
virtual bool doDraw(OdUInt32 drawableFlags, const OdGiDrawable *pDrawable)
OdGsBaseVectorizer::threadIndex
OdUInt32 threadIndex() const
Definition: GsBaseVectorizer.h:553
OdGsBaseVectorizer::setAnalyticLinetypingCircles
virtual void setAnalyticLinetypingCircles(bool analytic)
OdGsBaseVectorizer::isFaded
bool isFaded() const
Definition: GsBaseVectorizer.h:531
OdGsBlockReferenceNode
Definition: GsBlockReferenceNode.h:228
OdGsBaseVectorizer::gsExtentsAccum
OdGsExtAccum & gsExtentsAccum()
Definition: GsBaseVectorizer.h:127
OdGsBaseVectorizer::currentHighlightBranch
const OdGsHlBranch * currentHighlightBranch() const
Definition: GsBaseVectorizer.h:558
OdGsBaseVectorizer::setTransformForMetafileGeometry
virtual void setTransformForMetafileGeometry(const OdGeMatrix3d &)
Definition: GsBaseVectorizer.h:281
OdGsLockFadingFlag::m_lockedFlags
OdUInt32 & m_lockedFlags
Definition: GsBaseVectorizer.h:516
OdGeBoundBlock3d
Definition: GeBoundBlock3d.h:43
OdGsBaseVectorizer::renderTypeOnChange
virtual void renderTypeOnChange(OdGsModel::RenderType renderType)
OdGsBaseVectorizer::m_eMfPlayMode
EMetafilePlayMode m_eMfPlayMode
Definition: GsBaseVectorizer.h:450
OdGsBaseVectorizer::endViewVectorization
virtual void endViewVectorization()
OdGsBaseVectorizer::selectionMarkerOnChange
void selectionMarkerOnChange(OdGsMarker nSelectionMarker)
GsMarkerArray.h
OdGsBaseVectorizer::popClipBoundary
void popClipBoundary()
OdGsBaseVectorizer::checkRenderType
void checkRenderType(const OdGsModel *pModel)
OdGsBaseVectorizer::isDragging
bool isDragging() const
GsExtAccum.h
OdGsOverlayId
OdGsOverlayId
Definition: GsOverlayDefs.h:40
TPtr< OdGsHlBranch >
OdGiPointLightTraitsData
Definition: GiLightTraitsData.h:118
OdGsBaseVectorizer::FadingFlags
FadingFlags
Definition: GsBaseVectorizer.h:457
OdGsBaseVectorizer::m_fadingFlags
OdUInt32 m_fadingFlags
Definition: GsBaseVectorizer.h:474
OdGsWriter::m_pGeomPortion
OdGsGeomPortion * m_pGeomPortion
Definition: GsBaseVectorizer.h:96
OdGsLockFadingFlag::m_bSavedBit
bool m_bSavedBit
Definition: GsBaseVectorizer.h:517
OdIntPtr
ptrdiff_t OdIntPtr
Definition: OdPlatformSettings.h:884
OdGsBaseModel
Definition: GsBaseModel.h:118
ODA_ASSERT
#define ODA_ASSERT(exp)
Definition: DebugStuff.h:49
OdGiDistantLightTraitsData
Definition: GiLightTraitsData.h:275
GsHighlightData.h
OdGsBaseVectorizer::isAnalyticLinetypingComplexCurves
virtual bool isAnalyticLinetypingComplexCurves() const
OdGsPropertiesDirectRenderOutput
Definition: GsProperties.h:47
GS_TOOLKIT_EXPORT
#define GS_TOOLKIT_EXPORT
Definition: GsExport.h:37
OdGsBaseVectorizer::findHighlightedSubnodeBranch
OdGsHlBranch * findHighlightedSubnodeBranch()
OdGsBaseVectorizer::kEFfLockedLayer
@ kEFfLockedLayer
Definition: GsBaseVectorizer.h:462
OdGsBaseVectorizer::gsLayerNode
OdGsLayerNode * gsLayerNode(OdDbStub *layerId, OdGsBaseModel *pModel)
OdError
Definition: OdError.h:43
OdGsBaseVectorizer::m_gsWriter
OdGsWriter m_gsWriter
Definition: GsBaseVectorizer.h:446
value
GLsizei const GLfloat * value
Definition: gles2_ext.h:302
OdGiSectionGeometry
Definition: GiSectionGeometry.h:43
OdGsBaseVectorizer::beginMetafile
virtual void beginMetafile(OdRxObject *pMetafile)
OdGsBlockReferenceNodeImpl
Definition: GsBlockReferenceNode.h:160
OdGsWriter::extentsAccum
OdGsExtAccum & extentsAccum()
Definition: GsBaseVectorizer.h:69
OdGsBaseVectorizer::kFvLockedLayerMask
@ kFvLockedLayerMask
Definition: GsBaseVectorizer.h:468
OdGsBaseVectorizer::m_nMetafileSize
OdUInt64 m_nMetafileSize
Definition: GsBaseVectorizer.h:445
OdGsBaseVectorizer::drawViewportFrame
virtual void drawViewportFrame()
OdGsWriter::m_pGsModel
OdGsBaseModel * m_pGsModel
Definition: GsBaseVectorizer.h:92
OdGsWriter::isRecordingMetafile
bool isRecordingMetafile()
Definition: GsBaseVectorizer.h:75
OdGiBaseVectorizerImpl::kHighlighted
@ kHighlighted
Definition: GiBaseVectorizerImpl.h:372
OdGiBaseVectorizerImpl
Definition: GiBaseVectorizerImpl.h:50
OdGsBaseVectorizer::newGsMetafile
virtual OdRxObjectPtr newGsMetafile()
OdGsBaseVectorizer::isViewRegenerated
virtual bool isViewRegenerated() const
OdGsBaseVectorizer::setSectionableGeomExtentsOnly
void setSectionableGeomExtentsOnly(bool bOn)
Definition: GsBaseVectorizer.h:256
OdGsBaseVectorizer::setVisualStyle
virtual void setVisualStyle(const OdGiVisualStyle &visualStyle)
OdGsBaseVectorizer::onTraitsModified
virtual void onTraitsModified()
OdGsBaseVectorizer::updateExtentsInThreadInit
void updateExtentsInThreadInit(OdGsMtContext &mtContext)
OdGsModel
Definition: GsModel.h:77
OdGsBaseVectorizer::kEFfFlagsOffset
@ kEFfFlagsOffset
Definition: GsBaseVectorizer.h:466
OdGsFiler
Definition: GsFiler.h:63
OdGsHlBranch::markers
const OdGsMarkerArray & markers() const
Definition: GsHighlightData.h:100
OdGsLockFadingFlag::~OdGsLockFadingFlag
~OdGsLockFadingFlag()
Definition: GsBaseVectorizer.h:528
OdGiBaseVectorizerImpl::kLastImplFlag
@ kLastImplFlag
Definition: GiBaseVectorizerImpl.h:397
OdGeMatrix3d::kIdentity
static GE_STATIC_EXPORT const OdGeMatrix3d kIdentity
Definition: GeMatrix3d.h:79
OdGsBaseVectorizer::isHighlighted
bool isHighlighted() const
Definition: GsBaseVectorizer.h:585
OdGsBaseVectorizer::kFvRefEditOffset
@ kFvRefEditOffset
Definition: GsBaseVectorizer.h:471
OdGsBaseVectorizer::gsWriter
const OdGsWriter & gsWriter() const
Definition: GsBaseVectorizer.h:126
OdGsLockFadingFlag::OdGsLockFadingFlag
OdGsLockFadingFlag(OdGsBaseVectorizer &vectorizer)
Definition: GsBaseVectorizer.h:519
OdGsBaseVectorizer::outputForMetafileGeometry
virtual OdGiConveyorOutput & outputForMetafileGeometry()
OdGsBaseVectorizer::popModelTransform
void popModelTransform()
OdGiSpotLightTraitsData
Definition: GiLightTraitsData.h:191
OdGsBaseVectorizer::secondaryOutput
OdGiConveyorOutput & secondaryOutput()
OdGsBaseVectorizer::addSpotLight
virtual void addSpotLight(const OdGiSpotLightTraitsData &)
Definition: GsBaseVectorizer.h:228
OdGsWriter::gsModel
OdGsBaseModel * gsModel() const
Definition: GsBaseVectorizer.h:73
OdGsGeomPortion
Definition: GsEntityNode.h:41
OdGsBaseVectorizer::forceMetafilesDependence
virtual bool forceMetafilesDependence() const
OdGsSelectionReactor
Definition: GsSelectionReactor.h:128
OdGsBaseVectorizer::kEFfRefEdit
@ kEFfRefEdit
Definition: GsBaseVectorizer.h:464
OdGsBaseVectorizer::kFfLockedLayer
@ kFfLockedLayer
Definition: GsBaseVectorizer.h:458
OdGsProperties::kAll
@ kAll
Definition: GsProperties.h:129
OdGsEntityNode
Definition: GsEntityNode.h:103
OdUInt64
Definition: Int64.h:137
OdGsBaseVectorizer::updateViewport
virtual void updateViewport()
OdGsBaseVectorizer::OdGsBaseVectorizer
OdGsBaseVectorizer()
OdGePoint2d
Definition: GePoint2d.h:60