CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
Gs.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#ifndef __GS_H_INCLUDED_
25#define __GS_H_INCLUDED_
26
27#include "RxObject.h"
28#include "RxIterator.h"
29#include "Gs/GsExport.h"
30
31class OdGiDrawable;
32
37
38class OdGeMatrix3d;
39class OdGePoint3d;
40class OdGeVector3d;
41class OdGePoint2d;
42class OdGiEdgeData;
43class OdGiFaceData;
44class OdGiVertexData;
45struct OdGiClipBoundary;
47class OdDbStub;
48class OdGeExtents3d;
49class OdGiVisualStyle;
50
51#include "TD_PackPush.h"
52
53#include "OdPlatform.h"
54#include "RxModule.h"
55#include "IntArray.h"
56#include "GsDCPointArray.h"
57#include "Ge/GePoint2dArray.h"
58
61
62class OdGsView;
63
68
69class OdGsModel;
70
75
80
81class OdGsDevice;
82
87
88class OdRxDictionary;
89
94
95class OdGsReactor;
96
101
102class OdGiRasterImage;
103
108
114
115#include "GsDefs.h"
116
117class OdGiContext;
118struct OdGsClientViewInfo;
119class OdGsFiler;
120
123class OdGiPathNode;
124
126
140class FIRSTDLL_EXPORT OdGsView : public OdRxObject
141{
142public:
144
149 {
150 kBoundingBox = -1, // Bounding box. For internal use only.
151 k2DOptimized = 0, // Standard *display*. Optimized for 2D.
152 kWireframe = 1, // Standard *display*. Uses 3D pipeline.
153 kHiddenLine = 2, // Wireframe *display*. Hidden lines removed.
154 kFlatShaded = 3, // Faceted *display*. One *color* per face.
155 kGouraudShaded = 4, // Smooth shaded *display*. Colors interpolated between *vertices*.
156 kFlatShadedWithWireframe = 5, // Faceted *display* with wireframe overlay.
157 kGouraudShadedWithWireframe = 6, // Smooth shaded *display* with wireframe overlay.
158 kNone // No render mode.
159 };
160
165 {
166 kParallel = 0, // Orthogonal projection.
167 kPerspective = 1 // Perspective projection.
168 };
169
174 {
175 kWindow = 0, // Selection by two points (represents rectangle). Select only objects which is entirely inside selection area.
176 kCrossing = 1, // Selection by two points (represents rectangle). Select objects which is entirely inside or intersects selection area.
177 kFence = 2, // Selection by two or more points (represents polyline). Select object which is intersects selection polyline.
178 kWPoly = 3, // Selection by three or more points (represents polygon). Select only objects which is entirely inside selection area.
179 kCPoly = 4, // Selection by three or more points (represents polygon). Select objects which is entirely inside or intersects selection area.
180
181 kPoint = 16, // Same as kCrossing, but returns only single selected object: top for 3D render modes or first for 2D render mode.
182 kPointLast = 17 // Same as kPoint, but for 2D render mode it returns last selected object.
183 };
184
189 {
190 kOneLight = 0, // Single front light.
191 kTwoLights, // Front and back lights.
192 kBackLight // Single back light.
193 };
194
199 {
202 };
203
209 virtual OdGsDevice* device() const = 0;
210
214 virtual OdGiContext* userGiContext() const = 0;
215
220 virtual void setUserGiContext(OdGiContext* pUserGiContext) = 0;
221
227 virtual double lineweightToDcScale() const = 0;
234 virtual void setLineweightToDcScale(double scale) = 0;
235
247 virtual void setLineweightEnum(int numLineweights, const OdUInt8* lineweights, const OdUInt16* altSourceLwds = NULL) = 0;
248
258 virtual void setViewport(const OdGePoint2d& lowerLeft, const OdGePoint2d& upperRight) = 0;
259
269 virtual void setViewport(const OdGsDCRect& screenRect) = 0;
270
279 virtual void setViewport(const OdGsDCRectDouble& screenRect);
280
292 virtual void getViewport(OdGePoint2d& lowerLeft, OdGePoint2d& upperRight) const = 0;
293
304 virtual void getViewport(OdGsDCRect& screenRect) const = 0;
305
313 virtual void getViewport(OdGsDCRectDouble& screenRect) const;
314
322 virtual void setViewportClipRegion(int numContours, int const* numVertices, OdGsDCPoint const* vertices) = 0;
323
331 virtual void setViewportClipRegion(int numContours, int const* numVertices, OdGePoint2d const* vertices) = 0;
332
339 virtual void viewportClipRegion(OdIntArray& counts, OdGsDCPointArray& vertices) const = 0;
340
347 virtual void viewportClipRegion(OdIntArray& counts, OdGePoint2dArray& vertices) const = 0;
348
353
360 virtual void setViewport3dClipping(const OdGiClipBoundary* pBoundary, const OdGiAbstractClipBoundary* pClipInfo = NULL);
361
370 virtual const OdGiClipBoundary *viewport3dClipping(const OdGiAbstractClipBoundary** ppClipInfo = NULL) const;
371
376
382 virtual void setViewportBorderProperties(ODCOLORREF color, int width) = 0;
383
389 virtual void getViewportBorderProperties(ODCOLORREF& color, int& width) const = 0;
390
395 virtual void setViewportBorderVisibility(bool visible) = 0;
396
402 virtual bool isViewportBorderVisible() const = 0;
403
424 virtual void setView(
425 const OdGePoint3d& position,
426 const OdGePoint3d& target,
427 const OdGeVector3d& upVector,
428 double fieldWidth,
429 double fieldHeight,
430 Projection projectionType = kParallel) = 0;
431
435 virtual OdGePoint3d position() const = 0;
436
440 virtual OdGePoint3d target() const = 0;
441
445 virtual OdGeVector3d upVector() const = 0;
446
450 virtual double lensLength() const = 0;
451
456 virtual void setLensLength(double lensLength) = 0;
457
463 virtual bool isPerspective() const = 0;
464
468 virtual double fieldWidth() const = 0;
472 virtual double fieldHeight() const = 0;
473
478 virtual void setEnableFrontClip(bool enable) = 0;
479
485 virtual bool isFrontClipped() const = 0;
486
491 virtual void setFrontClip(double frontClip) = 0;
492
496 virtual double frontClip() const = 0;
497
502 virtual void setEnableBackClip(bool enable) = 0;
503
509 virtual bool isBackClipped() const = 0;
510
515 virtual void setBackClip(double backClip) = 0;
519 virtual double backClip() const = 0;
520
527 virtual OdGeMatrix3d viewingMatrix() const = 0;
528
535 virtual OdGeMatrix3d projectionMatrix() const = 0;
536
543 virtual OdGeMatrix3d screenMatrix() const = 0;
544
556
564
585 virtual void setMode(RenderMode mode) = 0;
586
605 virtual RenderMode mode() const = 0;
606
622 virtual bool add(OdGiDrawable* pSceneGraph, OdGsModel* pModel) = 0;
623
627 virtual int numRootDrawables() const = 0;
628
634 virtual OdDbStub* rootDrawableIdAt(int i, OdGsModelPtr* pModelReturn = 0) const = 0;
635
641 virtual OdGiDrawablePtr rootDrawableAt(int i, OdGsModelPtr* pModelReturn = 0) const = 0;
642
650 virtual bool erase(OdGiDrawable* sceneGraph) = 0;
656 virtual void eraseAll() = 0;
657
663 virtual OdGsModel *getModel(const OdGiDrawable *pDrawable) const = 0;
667 virtual OdGsModelArray getModelList() const = 0;
668
672 virtual void invalidate() = 0;
673
679 virtual void invalidate(const OdGsDCRect &screenRect) = 0;
680
692 virtual bool isValid() const = 0;
693
700 virtual void update() = 0;
701
712 virtual void beginInteractivity(double frameRateInHz) = 0;
720 virtual bool isInInteractivity() const = 0;
726 virtual double interactivityFrameRate() const = 0;
732 virtual void endInteractivity() = 0;
739 virtual void flush() = 0;
740
744 virtual void hide() = 0;
745
749 virtual void show() = 0;
750
756 virtual bool isVisible() = 0;
757
766 virtual void freezeLayer(OdDbStub* layerID) = 0;
767
776 virtual void thawLayer(OdDbStub* layerID) = 0;
777
785 virtual void clearFrozenLayers() = 0;
786
791
802 virtual void select(const OdGsDCPoint* pts, int nPoints,
803 OdGsSelectionReactor* pReactor,
805
816 virtual void dolly(const OdGeVector3d& dollyVector) = 0;
817
830 virtual void dolly(double xDolly, double yDolly, double zDolly) = 0;
831
846 virtual void roll(double rollAngle) = 0;
847
864 virtual void orbit(double xOrbit, double yOrbit) = 0;
865
871 virtual void zoom(double zoomFactor) = 0;
872
889 virtual void pan(double xPan, double yPan) = 0;
890
897 virtual void zoomExtents(const OdGePoint3d &minPt, const OdGePoint3d &maxPt) = 0;
898
905 virtual void zoomWindow(const OdGePoint2d &lowerLeft, const OdGePoint2d &upperRight) = 0;
906
914 virtual bool pointInView(const OdGePoint3d &pt) const = 0;
915
924 virtual bool extentsInView(const OdGePoint3d &minPt, const OdGePoint3d &maxPt) const = 0;
925
934 virtual OdGsViewPtr cloneView(bool cloneViewParameters = true, bool cloneGeometry = false) = 0;
935
940 virtual void viewParameters(OdGsView* pView) const = 0;
941
959 virtual bool exceededBounds() = 0;
960
966 virtual void enableStereo(bool enabled) = 0;
967
973 virtual bool isStereoEnabled() const = 0;
974
990 virtual void setStereoParameters(double magnitude, double parallax) = 0;
991
1007 virtual void getStereoParameters(double& magnitude, double& parallax) const = 0;
1008
1013 virtual void initLights(OdRxIterator* pLightsIterator) = 0;
1014
1021
1027 virtual double linetypeScaleMultiplier() const = 0;
1028
1037
1043 virtual double linetypeAlternateScaleMultiplier() const = 0;
1044
1051
1056 {
1057 kTransparent, // Transparent color
1058 kDeviceBackground, // Color from device background
1059 kPaletteBackground // Palette background color
1060 };
1061
1067 virtual void setClearColor(ClearColor color) = 0;
1068
1076 virtual bool pointInViewport(const OdGePoint2d& screenPoint) const = 0;
1077
1089 virtual void getNumPixelsInUnitSquare(const OdGePoint3d& point,
1090 OdGePoint2d& pixelDensity, bool bUsePerspective = true) const = 0;
1091
1099 virtual void setBackground(OdDbStub *backgroundId) = 0;
1105 virtual OdDbStub *background() const = 0;
1106
1114 virtual void setVisualStyle(OdDbStub *visualStyleId) = 0;
1120 virtual OdDbStub *visualStyle() const = 0;
1139 virtual bool visualStyle(OdGiVisualStyle &visualStyle) const = 0;
1140
1149 virtual void enableDefaultLighting(bool bEnable, DefaultLightingType lightType = kTwoLights) = 0;
1150
1159 virtual void getSnapShot(OdGiRasterImagePtr &pImage, const OdGsDCRect &region) = 0;
1160
1176 virtual void collide( OdGiPathNode const*const* pInputList, OdUInt32 nInputListSize, OdGsCollisionDetectionReactor* pReactor,
1177 OdGiPathNode const*const* pCollisionWithList = NULL, OdUInt32 nCollisionWithListSize = 0,
1178 const OdGsCollisionDetectionContext* pCtx = NULL ) = 0;
1179
1190 virtual void rayTrace(const OdGePoint3d &rayOrigin, const OdGeVector3d &rayDirection,
1191 OdGsRayTraceReactor *pReactor, bool bSortedSelection = false,
1192 OdGiPathNode const* const* pObjectList = NULL, OdUInt32 nObjectListSize = 0) = 0;
1193
1199 virtual void enableAntiAliasing(OdUInt32 nMode) = 0;
1203 virtual OdUInt32 antiAliasingMode() const = 0;
1204
1210 virtual void enableSSAO(bool bEnable) = 0;
1216 virtual bool ssaoMode() const = 0;
1217};
1218
1227{
1235
1236 long viewportId; // Returned by OdGiViewport::viewportId()
1237 long acadWindowId; // Returned by OdGiViewport::acadWindowId()
1238 OdDbStub* viewportObjectId; // Returned by OdGiViewportDraw::viewportObjectId()
1239 OdGiContextualColorsPtr contextColors; // Returned by OdGiViewport::contextualColors()
1240 OdUInt32 viewportFlags; // Optional view flags
1241
1246 : viewportId(-1)
1247 , acadWindowId(0)
1248 , viewportObjectId(NULL)
1249 , viewportFlags(0)
1250 {
1251 }
1252};
1253
1269class FIRSTDLL_EXPORT OdGsDevice : public OdRxObject
1270{
1271public:
1273
1281
1285 virtual OdGiContext* userGiContext() const = 0;
1286
1291 virtual void setUserGiContext(OdGiContext* pUserGiContext) = 0;
1292
1296 virtual void invalidate() = 0;
1297
1303 virtual void invalidate(const OdGsDCRect &screenRect) = 0;
1304
1316 virtual bool isValid() const = 0;
1317
1327 virtual void update(OdGsDCRect* pUpdatedRect = 0) = 0;
1328
1337 virtual void onSize(const OdGsDCRect& outputRect) = 0;
1338
1347 virtual void onSize(const OdGsDCRectDouble& outputRect);
1348
1354 virtual void getSize(OdGsDCRect& outputRect) const = 0;
1355
1361 virtual void getSize(OdGsDCRectDouble& outputRect) const;
1362
1368 virtual void onRealizeForegroundPalette() = 0;
1369
1376 virtual void onRealizeBackgroundPalette() = 0;
1377
1388 virtual void onDisplayChange(int bitsPerPixel, int xPixels, int yPixels) = 0;
1389
1402 const OdGsClientViewInfo* pViewInfo = 0,
1403 bool enableLayerVisibilityPerView = false) = 0;
1404
1410 virtual void addView(OdGsView* pView) = 0;
1411
1419
1435 virtual bool isModelCompatible(OdGsModel* pModel) const;
1436
1444 virtual bool saveDeviceState(OdGsFiler *pFiler) const;
1452 virtual bool loadDeviceState(OdGsFiler *pFiler);
1453
1460 virtual void insertView(int viewIndex, OdGsView* pView) = 0;
1461
1469 virtual bool eraseView(OdGsView* pView) = 0;
1470
1478 virtual bool eraseView(int viewIndex) = 0;
1479
1483 virtual void eraseAllViews() = 0;
1484
1488 virtual int numViews() const = 0;
1489
1494 virtual OdGsView* viewAt(int viewIndex) = 0;
1495
1500 virtual bool setBackgroundColor(ODCOLORREF backgroundColor) = 0;
1501
1506
1516 virtual void setLogicalPalette(const ODCOLORREF* logicalPalette, int numColors) = 0;
1517
1523 virtual const ODCOLORREF* getLogicalPalette(int &numColors) const = 0;
1524
1534 virtual void getSnapShot(OdGiRasterImagePtr &pImage, const OdGsDCRect &region) = 0;
1535
1541 virtual OdGsUpdateManagerPtr getUpdateManager( bool createIfNotExist = false );
1542
1548 virtual void setUpdateManager( OdGsUpdateManagerPtr pManager );
1549};
1550
1551class OdGsModule;
1552
1565class FIRSTDLL_EXPORT OdGsReactor : public OdRxObject
1566{
1567public:
1575 virtual void viewWasCreated(OdGsView* pView);
1576
1584 virtual void viewToBeDestroyed(OdGsView* pView);
1585
1591 virtual void viewToBeUpdated(OdGsView* pView, int flags);
1592
1598 virtual void viewWasUpdated(OdGsView* pView, int flags);
1599
1607 virtual void gsToBeUnloaded(OdGsModule* pModule);
1608};
1609
1616{
1617public:
1619
1626
1633
1638 virtual void addReactor(OdGsReactor* pReactor) = 0;
1639
1644 virtual void removeReactor(OdGsReactor* pReactor) = 0;
1645};
1646
1651
1656
1657#include "TD_PackPop.h"
1658
1659#endif // __GS_H_INCLUDED_
OdSmartPtr< OdGsDevice > OdGsDevicePtr
OdSmartPtr< OdGiRasterImage > OdGiRasterImagePtr
Definition DbLayout.h:36
scale
OdArray< OdGePoint2d, OdMemoryAllocator< OdGePoint2d > > OdGePoint2dArray
Definition GeGbl.h:45
OdSmartPtr< OdGiDrawable > OdGiDrawablePtr
OdSmartPtr< OdGiContextualColors > OdGiContextualColorsPtr
OdSmartPtr< OdGiRasterImage > OdGiRasterImagePtr
Definition Gs.h:107
OdSmartPtr< OdGsModule > OdGsModulePtr
Definition Gs.h:1650
OdSmartPtr< OdGiDrawable > OdGiDrawablePtr
Definition Gs.h:36
OdSmartPtr< OdGsDevice > OdGsDevicePtr
Definition Gs.h:86
OdSmartPtr< OdGsUpdateManager > OdGsUpdateManagerPtr
Definition Gs.h:113
const OdGsMarker kNullSubentIndex
Definition Gs.h:1655
OdArray< OdGsModel *, OdMemoryAllocator< OdGsModel * > > OdGsModelArray
Definition Gs.h:79
OdSmartPtr< OdGsView > OdGsViewPtr
Definition Gs.h:67
OdSmartPtr< OdGsModel > OdGsModelPtr
Definition Gs.h:74
OdSmartPtr< OdGsReactor > OdGsReactorPtr
Definition Gs.h:100
OdSmartPtr< OdRxDictionary > OdRxDictionaryPtr
Definition Gs.h:93
OdArray< OdGsDCPoint, OdMemoryAllocator< OdGsDCPoint > > OdGsDCPointArray
OdArray< int, OdMemoryAllocator< int > > OdIntArray
Definition IntArray.h:35
#define ODCOLORREF
ptrdiff_t OdGsMarker
unsigned int OdUInt32
unsigned short OdUInt16
unsigned char OdUInt8
#define FIRSTDLL_EXPORT
Definition RootExport.h:39
virtual void onRealizeForegroundPalette()=0
virtual void setLogicalPalette(const ODCOLORREF *logicalPalette, int numColors)=0
virtual void insertView(int viewIndex, OdGsView *pView)=0
virtual OdGsModelPtr createModel()=0
virtual bool eraseView(OdGsView *pView)=0
virtual void onSize(const OdGsDCRect &outputRect)=0
virtual void getSnapShot(OdGiRasterImagePtr &pImage, const OdGsDCRect &region)=0
virtual void invalidate()=0
virtual OdRxDictionaryPtr properties()=0
virtual bool eraseView(int viewIndex)=0
virtual void setUpdateManager(OdGsUpdateManagerPtr pManager)
virtual ODCOLORREF getBackgroundColor()=0
virtual void getSize(OdGsDCRectDouble &outputRect) const
virtual OdGsUpdateManagerPtr getUpdateManager(bool createIfNotExist=false)
virtual bool isValid() const =0
virtual void setUserGiContext(OdGiContext *pUserGiContext)=0
virtual void getSize(OdGsDCRect &outputRect) const =0
virtual void update(OdGsDCRect *pUpdatedRect=0)=0
virtual bool saveDeviceState(OdGsFiler *pFiler) const
virtual OdGsViewPtr createView(const OdGsClientViewInfo *pViewInfo=0, bool enableLayerVisibilityPerView=false)=0
virtual OdGsView * viewAt(int viewIndex)=0
virtual bool loadDeviceState(OdGsFiler *pFiler)
ODRX_DECLARE_MEMBERS(OdGsDevice)
virtual void onSize(const OdGsDCRectDouble &outputRect)
virtual void addView(OdGsView *pView)=0
virtual void onRealizeBackgroundPalette()=0
virtual void eraseAllViews()=0
virtual void onDisplayChange(int bitsPerPixel, int xPixels, int yPixels)=0
virtual bool setBackgroundColor(ODCOLORREF backgroundColor)=0
virtual bool isModelCompatible(OdGsModel *pModel) const
virtual OdGiContext * userGiContext() const =0
virtual const ODCOLORREF * getLogicalPalette(int &numColors) const =0
virtual int numViews() const =0
virtual void invalidate(const OdGsDCRect &screenRect)=0
virtual void removeReactor(OdGsReactor *pReactor)=0
ODRX_DECLARE_MEMBERS(OdGsModule)
virtual OdGsDevicePtr createBitmapDevice()
virtual void addReactor(OdGsReactor *pReactor)=0
virtual OdGsDevicePtr createDevice()=0
virtual void viewWasUpdated(OdGsView *pView, int flags)
virtual void viewToBeUpdated(OdGsView *pView, int flags)
virtual void viewWasCreated(OdGsView *pView)
virtual void viewToBeDestroyed(OdGsView *pView)
virtual void gsToBeUnloaded(OdGsModule *pModule)
Definition Gs.h:141
virtual OdGePoint3d position() const =0
virtual void setViewportClipRegion(int numContours, int const *numVertices, OdGsDCPoint const *vertices)=0
virtual void getViewportBorderProperties(ODCOLORREF &color, int &width) const =0
virtual void enableSSAO(bool bEnable)=0
virtual void getViewport(OdGsDCRectDouble &screenRect) const
virtual OdDbStub * rootDrawableIdAt(int i, OdGsModelPtr *pModelReturn=0) const =0
virtual void zoomExtents(const OdGePoint3d &minPt, const OdGePoint3d &maxPt)=0
virtual void invalidate()=0
virtual void setViewportBorderVisibility(bool visible)=0
virtual OdGsModel * getModel(const OdGiDrawable *pDrawable) const =0
virtual bool erase(OdGiDrawable *sceneGraph)=0
virtual void pan(double xPan, double yPan)=0
virtual void beginInteractivity(double frameRateInHz)=0
virtual int numRootDrawables() const =0
virtual const OdGiClipBoundary * viewport3dClipping(const OdGiAbstractClipBoundary **ppClipInfo=NULL) const
ClearColor
Definition Gs.h:1056
@ kTransparent
Definition Gs.h:1057
@ kPaletteBackground
Definition Gs.h:1059
@ kDeviceBackground
Definition Gs.h:1058
virtual void setUserGiContext(OdGiContext *pUserGiContext)=0
virtual double lineweightToDcScale() const =0
virtual OdGeMatrix3d projectionMatrix() const =0
virtual bool extentsInView(const OdGePoint3d &minPt, const OdGePoint3d &maxPt) const =0
virtual void setViewport(const OdGsDCRect &screenRect)=0
virtual bool isValid() const =0
virtual OdUInt32 antiAliasingMode() const =0
virtual OdDbStub * background() const =0
virtual void setView(const OdGePoint3d &position, const OdGePoint3d &target, const OdGeVector3d &upVector, double fieldWidth, double fieldHeight, Projection projectionType=kParallel)=0
DefaultLightingType
Definition Gs.h:189
@ kTwoLights
Definition Gs.h:191
@ kBackLight
Definition Gs.h:192
@ kOneLight
Definition Gs.h:190
virtual void viewportClipRegion(OdIntArray &counts, OdGePoint2dArray &vertices) const =0
virtual void clearFrozenLayers()=0
virtual OdGsDevice * device() const =0
virtual OdGeVector3d upVector() const =0
virtual void zoom(double zoomFactor)=0
virtual void setViewport(const OdGePoint2d &lowerLeft, const OdGePoint2d &upperRight)=0
virtual bool isStereoEnabled() const =0
virtual void select(const OdGsDCPoint *pts, int nPoints, OdGsSelectionReactor *pReactor, OdGsView::SelectionMode mode=OdGsView::kCrossing)=0
virtual OdDbStub * visualStyle() const =0
virtual void getViewport(OdGePoint2d &lowerLeft, OdGePoint2d &upperRight) const =0
virtual void viewportClipRegion(OdIntArray &counts, OdGsDCPointArray &vertices) const =0
virtual OdGeMatrix3d screenMatrix() const =0
virtual bool isInInteractivity() const =0
virtual void setLineweightToDcScale(double scale)=0
ViewUpdateFlags
Definition Gs.h:199
@ kCameraChanged
Definition Gs.h:201
void removeViewport3dClipping()
virtual bool isPerspective() const =0
virtual void invalidateCachedViewportGeometry()=0
virtual void setLineweightEnum(int numLineweights, const OdUInt8 *lineweights, const OdUInt16 *altSourceLwds=NULL)=0
virtual void setViewport(const OdGsDCRectDouble &screenRect)
virtual void setViewportBorderProperties(ODCOLORREF color, int width)=0
virtual void setVisualStyle(const OdGiVisualStyle &visualStyle)=0
virtual double fieldHeight() const =0
SelectionMode
Definition Gs.h:174
@ kCPoly
Definition Gs.h:179
@ kPoint
Definition Gs.h:181
@ kWPoly
Definition Gs.h:178
@ kWindow
Definition Gs.h:175
@ kCrossing
Definition Gs.h:176
@ kPointLast
Definition Gs.h:182
@ kFence
Definition Gs.h:177
virtual void setLensLength(double lensLength)=0
virtual void clientViewInfo(OdGsClientViewInfo &clientViewInfo) const
virtual void hide()=0
virtual void eraseAll()=0
virtual OdGiContext * userGiContext() const =0
virtual void setStereoParameters(double magnitude, double parallax)=0
virtual void getViewport(OdGsDCRect &screenRect) const =0
virtual void enableAntiAliasing(OdUInt32 nMode)=0
virtual bool add(OdGiDrawable *pSceneGraph, OdGsModel *pModel)=0
virtual void viewParameters(OdGsView *pView) const =0
virtual void getSnapShot(OdGiRasterImagePtr &pImage, const OdGsDCRect &region)=0
virtual bool isViewportBorderVisible() const =0
virtual bool ssaoMode() const =0
virtual double linetypeAlternateScaleMultiplier() const =0
virtual double linetypeScaleMultiplier() const =0
virtual void dolly(double xDolly, double yDolly, double zDolly)=0
virtual void initLights(OdRxIterator *pLightsIterator)=0
virtual void setBackClip(double backClip)=0
virtual void rayTrace(const OdGePoint3d &rayOrigin, const OdGeVector3d &rayDirection, OdGsRayTraceReactor *pReactor, bool bSortedSelection=false, OdGiPathNode const *const *pObjectList=NULL, OdUInt32 nObjectListSize=0)=0
virtual OdGsModelArray getModelList() const =0
virtual void setEnableBackClip(bool enable)=0
virtual void endInteractivity()=0
virtual RenderMode mode() const =0
RenderMode
Definition Gs.h:149
@ kBoundingBox
Definition Gs.h:150
@ kFlatShadedWithWireframe
Definition Gs.h:156
@ kNone
Definition Gs.h:158
@ kHiddenLine
Definition Gs.h:153
@ kGouraudShadedWithWireframe
Definition Gs.h:157
@ kWireframe
Definition Gs.h:152
@ kFlatShaded
Definition Gs.h:154
@ k2DOptimized
Definition Gs.h:151
@ kGouraudShaded
Definition Gs.h:155
void removeViewportClipRegion()
virtual void enableDefaultLighting(bool bEnable, DefaultLightingType lightType=kTwoLights)=0
virtual OdGeMatrix3d viewingMatrix() const =0
ODRX_DECLARE_MEMBERS(OdGsView)
virtual bool pointInViewport(const OdGePoint2d &screenPoint) const =0
virtual void setVisualStyle(OdDbStub *visualStyleId)=0
virtual void roll(double rollAngle)=0
virtual OdGeMatrix3d objectToDeviceMatrix() const =0
virtual void freezeLayer(OdDbStub *layerID)=0
virtual double backClip() const =0
virtual void setViewport3dClipping(const OdGiClipBoundary *pBoundary, const OdGiAbstractClipBoundary *pClipInfo=NULL)
virtual void enableStereo(bool enabled)=0
virtual void show()=0
virtual void flush()=0
virtual void setAlternateLinetypeScaleMultiplier(double linetypeAlternateScaleMultiplier)=0
virtual void collide(OdGiPathNode const *const *pInputList, OdUInt32 nInputListSize, OdGsCollisionDetectionReactor *pReactor, OdGiPathNode const *const *pCollisionWithList=NULL, OdUInt32 nCollisionWithListSize=0, const OdGsCollisionDetectionContext *pCtx=NULL)=0
virtual bool isFrontClipped() const =0
virtual double fieldWidth() const =0
virtual void getNumPixelsInUnitSquare(const OdGePoint3d &point, OdGePoint2d &pixelDensity, bool bUsePerspective=true) const =0
virtual void setLinetypeScaleMultiplier(double linetypeScaleMultiplier)=0
virtual void invalidate(const OdGsDCRect &screenRect)=0
virtual void getStereoParameters(double &magnitude, double &parallax) const =0
virtual void setMode(RenderMode mode)=0
virtual bool visualStyle(OdGiVisualStyle &visualStyle) const =0
virtual void setEnableFrontClip(bool enable)=0
virtual void orbit(double xOrbit, double yOrbit)=0
virtual bool pointInView(const OdGePoint3d &pt) const =0
virtual OdGiDrawablePtr rootDrawableAt(int i, OdGsModelPtr *pModelReturn=0) const =0
virtual void setClearColor(ClearColor color)=0
virtual double frontClip() const =0
virtual void setBackground(OdDbStub *backgroundId)=0
virtual OdGePoint3d target() const =0
virtual void setViewportClipRegion(int numContours, int const *numVertices, OdGePoint2d const *vertices)=0
virtual bool isBackClipped() const =0
virtual OdGeMatrix3d worldToDeviceMatrix() const =0
virtual double lensLength() const =0
virtual bool exceededBounds()=0
virtual void setFrontClip(double frontClip)=0
virtual double interactivityFrameRate() const =0
virtual void zoomWindow(const OdGePoint2d &lowerLeft, const OdGePoint2d &upperRight)=0
Projection
Definition Gs.h:165
@ kParallel
Definition Gs.h:166
@ kPerspective
Definition Gs.h:167
virtual OdGsViewPtr cloneView(bool cloneViewParameters=true, bool cloneGeometry=false)=0
virtual void thawLayer(OdDbStub *layerID)=0
virtual void dolly(const OdGeVector3d &dollyVector)=0
virtual void update()=0
virtual bool isVisible()=0
GLint GLenum GLsizei width
Definition gles2_ext.h:110
OdUInt32 viewportFlags
Definition Gs.h:1240
long acadWindowId
Definition Gs.h:1237
OdDbStub * viewportObjectId
Definition Gs.h:1238
long viewportId
Definition Gs.h:1236
OdGiContextualColorsPtr contextColors
Definition Gs.h:1239