CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
Gs.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2022, 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-2022 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
60
61class OdGsView;
62
67
68class OdGsModel;
69
74
79
80class OdGsDevice;
81
86
87class OdRxDictionary;
88
93
94class OdGsReactor;
95
100
101class OdGiRasterImage;
102
107
113
114#include "GsDefs.h"
115
116class OdGiContext;
117struct OdGsClientViewInfo;
118class OdGsFiler;
119
122class OdGiPathNode;
123
125
140{
141public:
143
148 {
149 kBoundingBox = -1, // Bounding box. For internal use only.
150 k2DOptimized = 0, // Standard *display*. Optimized for 2D.
151 kWireframe = 1, // Standard *display*. Uses 3D pipeline.
152 kHiddenLine = 2, // Wireframe *display*. Hidden lines removed.
153 kFlatShaded = 3, // Faceted *display*. One *color* per face.
154 kGouraudShaded = 4, // Smooth shaded *display*. Colors interpolated between *vertices*.
155 kFlatShadedWithWireframe = 5, // Faceted *display* with wireframe overlay.
156 kGouraudShadedWithWireframe = 6, // Smooth shaded *display* with wireframe overlay.
157 kNone
158 };
159
164 {
165 kParallel = 0, // Orthogonal projection.
166 kPerspective = 1 // Perspective projection.
167 };
168
173 {
174 kWindow = 0, // Selection by two points (represents rectangle). Select only objects which is entirely inside selection area.
175 kCrossing = 1, // Selection by two points (represents rectangle). Select objects which is entirely inside or intersects selection area.
176 kFence = 2, // Selection by two or more points (represents polyline). Select object which is intersects selection polyline.
177 kWPoly = 3, // Selection by three or more points (represents polygon). Select only objects which is entirely inside selection area.
178 kCPoly = 4, // Selection by three or more points (represents polygon). Select objects which is entirely inside or intersects selection area.
179
180 kPoint = 16 // Same as kCrossing, but returns only single selected object: top for 3D render modes or first for 2D render mode.
181 };
182
187 {
188 kOneLight = 0, // Single front light.
189 kTwoLights, // Front and back lights.
190 kBackLight // Single back light.
191 };
192
197 {
198 kCameraChanged = 1
199 };
200
206 virtual OdGsDevice* device() const = 0;
207
211 virtual OdGiContext* userGiContext() const = 0;
212
217 virtual void setUserGiContext(OdGiContext* pUserGiContext) = 0;
218
224 virtual double lineweightToDcScale() const = 0;
231 virtual void setLineweightToDcScale(double scale) = 0;
232
240 virtual void setLineweightEnum(int numLineweights, const OdUInt8* lineweights) = 0;
241
251 virtual void setViewport(const OdGePoint2d& lowerLeft, const OdGePoint2d& upperRight) = 0;
252
262 virtual void setViewport(const OdGsDCRect& screenRect) = 0;
263
272 virtual void setViewport(const OdGsDCRectDouble& screenRect);
273
285 virtual void getViewport(OdGePoint2d& lowerLeft, OdGePoint2d& upperRight) const = 0;
286
297 virtual void getViewport(OdGsDCRect& screenRect) const = 0;
298
306 virtual void getViewport(OdGsDCRectDouble& screenRect) const;
307
315 virtual void setViewportClipRegion(int numContours, int const* numVertices, OdGsDCPoint const* vertices) = 0;
316
324 virtual void setViewportClipRegion(int numContours, int const* numVertices, OdGePoint2d const* vertices) = 0;
325
332 virtual void viewportClipRegion(OdIntArray& counts, OdGsDCPointArray& vertices) const = 0;
333
340 virtual void viewportClipRegion(OdIntArray& counts, OdGePoint2dArray& vertices) const = 0;
341
346
353 virtual void setViewport3dClipping(const OdGiClipBoundary* pBoundary, const OdGiAbstractClipBoundary* pClipInfo = NULL);
354
363 virtual const OdGiClipBoundary *viewport3dClipping(const OdGiAbstractClipBoundary** ppClipInfo = NULL) const;
364
369
375 virtual void setViewportBorderProperties(ODCOLORREF color, int width) = 0;
376
382 virtual void getViewportBorderProperties(ODCOLORREF& color, int& width) const = 0;
383
388 virtual void setViewportBorderVisibility(bool visible) = 0;
389
395 virtual bool isViewportBorderVisible() const = 0;
396
417 virtual void setView(
418 const OdGePoint3d& position,
419 const OdGePoint3d& target,
420 const OdGeVector3d& upVector,
421 double fieldWidth,
422 double fieldHeight,
423 Projection projectionType = kParallel) = 0;
424
428 virtual OdGePoint3d position() const = 0;
429
433 virtual OdGePoint3d target() const = 0;
434
438 virtual OdGeVector3d upVector() const = 0;
439
443 virtual double lensLength() const = 0;
444
449 virtual void setLensLength(double lensLength) = 0;
450
456 virtual bool isPerspective() const = 0;
457
461 virtual double fieldWidth() const = 0;
465 virtual double fieldHeight() const = 0;
466
471 virtual void setEnableFrontClip(bool enable) = 0;
472
478 virtual bool isFrontClipped() const = 0;
479
484 virtual void setFrontClip(double frontClip) = 0;
485
489 virtual double frontClip() const = 0;
490
495 virtual void setEnableBackClip(bool enable) = 0;
496
502 virtual bool isBackClipped() const = 0;
503
508 virtual void setBackClip(double backClip) = 0;
512 virtual double backClip() const = 0;
513
520 virtual OdGeMatrix3d viewingMatrix() const = 0;
521
528 virtual OdGeMatrix3d projectionMatrix() const = 0;
529
536 virtual OdGeMatrix3d screenMatrix() const = 0;
537
549
557
578 virtual void setMode(RenderMode mode) = 0;
579
598 virtual RenderMode mode() const = 0;
599
615 virtual bool add(OdGiDrawable* pSceneGraph, OdGsModel* pModel) = 0;
616
620 virtual int numRootDrawables() const = 0;
621
627 virtual OdDbStub* rootDrawableIdAt(int i, OdGsModelPtr* pModelReturn = 0) const = 0;
628
629 virtual OdGiDrawablePtr rootDrawableAt(int i, OdGsModelPtr* pModelReturn = 0) const = 0;
630
638 virtual bool erase(OdGiDrawable* sceneGraph) = 0;
644 virtual void eraseAll() = 0;
645
651 virtual OdGsModel *getModel(const OdGiDrawable *pDrawable) const = 0;
655 virtual OdGsModelArray getModelList() const = 0;
656
660 virtual void invalidate() = 0;
661
667 virtual void invalidate(const OdGsDCRect &screenRect) = 0;
668
680 virtual bool isValid() const = 0;
681
688 virtual void update() = 0;
689
700 virtual void beginInteractivity(double frameRateInHz) = 0;
708 virtual bool isInInteractivity() const = 0;
714 virtual double interactivityFrameRate() const = 0;
720 virtual void endInteractivity() = 0;
727 virtual void flush() = 0;
728
732 virtual void hide() = 0;
733
737 virtual void show() = 0;
738
744 virtual bool isVisible() = 0;
745
754 virtual void freezeLayer(OdDbStub* layerID) = 0;
755
764 virtual void thawLayer(OdDbStub* layerID) = 0;
765
773 virtual void clearFrozenLayers() = 0;
774
779
790 virtual void select(const OdGsDCPoint* pts, int nPoints,
791 OdGsSelectionReactor* pReactor,
793
804 virtual void dolly(const OdGeVector3d& dollyVector) = 0;
805
818 virtual void dolly(double xDolly, double yDolly, double zDolly) = 0;
819
834 virtual void roll(double rollAngle) = 0;
835
852 virtual void orbit(double xOrbit, double yOrbit) = 0;
853
859 virtual void zoom(double zoomFactor) = 0;
860
877 virtual void pan(double xPan, double yPan) = 0;
878
885 virtual void zoomExtents(const OdGePoint3d &minPt, const OdGePoint3d &maxPt) = 0;
886
893 virtual void zoomWindow(const OdGePoint2d &lowerLeft, const OdGePoint2d &upperRight) = 0;
894
902 virtual bool pointInView(const OdGePoint3d &pt) const = 0;
903
912 virtual bool extentsInView(const OdGePoint3d &minPt, const OdGePoint3d &maxPt) const = 0;
913
922 virtual OdGsViewPtr cloneView(bool cloneViewParameters = true, bool cloneGeometry = false) = 0;
923
928 virtual void viewParameters(OdGsView* pView) const = 0;
929
947 virtual bool exceededBounds() = 0;
948
954 virtual void enableStereo(bool enabled) = 0;
955
961 virtual bool isStereoEnabled() const = 0;
962
978 virtual void setStereoParameters(double magnitude, double parallax) = 0;
979
995 virtual void getStereoParameters(double& magnitude, double& parallax) const = 0;
996
1001 virtual void initLights(OdRxIterator* pLightsIterator) = 0;
1002
1008 virtual void setLinetypeScaleMultiplier(double linetypeScaleMultiplier) = 0;
1009
1015 virtual double linetypeScaleMultiplier() const = 0;
1016
1024 virtual void setAlternateLinetypeScaleMultiplier(double linetypeAlternateScaleMultiplier) = 0;
1025
1031 virtual double linetypeAlternateScaleMultiplier() const = 0;
1032
1038 virtual void clientViewInfo(OdGsClientViewInfo& clientViewInfo) const;
1039
1044 {
1045 kTransparent, // Transparent color
1046 kDeviceBackground, // Color from device background
1047 kPaletteBackground // Palette background color
1049
1055 virtual void setClearColor(ClearColor color) = 0;
1056
1064 virtual bool pointInViewport(const OdGePoint2d& screenPoint) const = 0;
1065
1077 virtual void getNumPixelsInUnitSquare(const OdGePoint3d& point,
1078 OdGePoint2d& pixelDensity, bool bUsePerspective = true) const = 0;
1079
1087 virtual void setBackground(OdDbStub *backgroundId) = 0;
1093 virtual OdDbStub *background() const = 0;
1094
1102 virtual void setVisualStyle(OdDbStub *visualStyleId) = 0;
1108 virtual OdDbStub *visualStyle() const = 0;
1116 virtual void setVisualStyle(const OdGiVisualStyle &visualStyle) = 0;
1127 virtual bool visualStyle(OdGiVisualStyle &visualStyle) const = 0;
1128
1137 virtual void enableDefaultLighting(bool bEnable, DefaultLightingType lightType = kTwoLights) = 0;
1138
1147 virtual void getSnapShot(OdGiRasterImagePtr &pImage, const OdGsDCRect &region) = 0;
1148
1164 virtual void collide( OdGiPathNode const*const* pInputList, OdUInt32 nInputListSize, OdGsCollisionDetectionReactor* pReactor,
1165 OdGiPathNode const*const* pCollisionWithList = NULL, OdUInt32 nCollisionWithListSize = 0,
1166 const OdGsCollisionDetectionContext* pCtx = NULL ) = 0;
1167
1173 virtual void enableAntiAliasing(OdUInt32 nMode) = 0;
1177 virtual OdUInt32 antiAliasingMode() const = 0;
1178
1184 virtual void enableSSAO(bool bEnable) = 0;
1190 virtual bool ssaoMode() const = 0;
1191};
1192
1201{
1203 {
1207 kSetViewportId = 8
1209
1210 long viewportId; // Returned by OdGiViewport::viewportId()
1211 long acadWindowId; // Returned by OdGiViewport::acadWindowId()
1212 OdDbStub* viewportObjectId; // Returned by OdGiViewportDraw::viewportObjectId()
1213 OdGiContextualColorsPtr contextColors; // Returned by OdGiViewport::contextualColors()
1214 OdUInt32 viewportFlags; // Optional view flags
1215
1217 : viewportId(-1)
1218 , acadWindowId(0)
1219 , viewportObjectId(NULL)
1220 , viewportFlags(0)
1221 {
1222 }
1223};
1224
1237{
1238public:
1239 enum
1240 {
1241 kNotImplemented = 0x80000000,
1243 kBreak = 1
1254 virtual OdUInt32 collisionDetected(const OdGiPathNode* /*pPathNode1*/, const OdGiPathNode* /*pPathNode2*/)
1255 {
1256 return OdUInt32(kNotImplemented);
1257 }
1258
1269 virtual OdUInt32 collisionDetected( const OdGiPathNode* pPathNode1, const OdGiPathNode* pPathNode2, double dDistance )
1270 {
1271 return collisionDetected( pPathNode1, pPathNode2 );
1272 }
1273};
1274
1284{
1285//DOM-IGNORE-BEGIN
1286protected:
1290 {
1297 kCheckAll = 1 << 6,
1298 kProcessSingleList = 1 << 7
1301//DOM-IGNORE-END
1302public:
1307
1312 void setIntersectionOnly( bool bSet ) { SETBIT( m_flags, kIntersectionOnly, bSet ); }
1313
1320
1326
1333
1339
1361 {
1363 m_tolerance = tol;
1364 }
1374 const OdGeTol& toleranceOverride() const { return m_tolerance; }
1389 void setCheckAll( bool bSet ) { SETBIT( m_flags, kCheckAll, bSet ); }
1394 bool getCheckAll() const { return GETBIT( m_flags, kCheckAll ); }
1399 void setClearance( double c ) { m_clearance = c; }
1404 double getClearance() const { return m_clearance; }
1417
1418};
1419
1420class OdGiContext;
1421
1438{
1439public:
1441
1449
1453 virtual OdGiContext* userGiContext() const = 0;
1454
1459 virtual void setUserGiContext(OdGiContext* pUserGiContext) = 0;
1460
1464 virtual void invalidate() = 0;
1465
1471 virtual void invalidate(const OdGsDCRect &screenRect) = 0;
1472
1484 virtual bool isValid() const = 0;
1485
1495 virtual void update(OdGsDCRect* pUpdatedRect = 0) = 0;
1496
1505 virtual void onSize(const OdGsDCRect& outputRect) = 0;
1506
1515 virtual void onSize(const OdGsDCRectDouble& outputRect);
1516
1522 virtual void getSize(OdGsDCRect& outputRect) const = 0;
1523
1529 virtual void getSize(OdGsDCRectDouble& outputRect) const;
1530
1536 virtual void onRealizeForegroundPalette() = 0;
1537
1544 virtual void onRealizeBackgroundPalette() = 0;
1545
1556 virtual void onDisplayChange(int bitsPerPixel, int xPixels, int yPixels) = 0;
1557
1570 const OdGsClientViewInfo* pViewInfo = 0,
1571 bool enableLayerVisibilityPerView = false) = 0;
1572
1578 virtual void addView(OdGsView* pView) = 0;
1579
1587
1603 virtual bool isModelCompatible(OdGsModel* pModel) const;
1604
1612 virtual bool saveDeviceState(OdGsFiler *pFiler) const;
1620 virtual bool loadDeviceState(OdGsFiler *pFiler);
1621
1628 virtual void insertView(int viewIndex, OdGsView* pView) = 0;
1629
1637 virtual bool eraseView(OdGsView* pView) = 0;
1638
1646 virtual bool eraseView(int viewIndex) = 0;
1647
1651 virtual void eraseAllViews() = 0;
1652
1656 virtual int numViews() const = 0;
1657
1662 virtual OdGsView* viewAt(int viewIndex) = 0;
1663
1668 virtual bool setBackgroundColor(ODCOLORREF backgroundColor) = 0;
1669
1674
1684 virtual void setLogicalPalette(const ODCOLORREF* logicalPalette, int numColors) = 0;
1685
1691 virtual const ODCOLORREF* getLogicalPalette(int &numColors) const = 0;
1692
1702 virtual void getSnapShot(OdGiRasterImagePtr &pImage, const OdGsDCRect &region) = 0;
1703
1709 virtual OdGsUpdateManagerPtr getUpdateManager( bool createIfNotExist = false );
1710
1716 virtual void setUpdateManager( OdGsUpdateManagerPtr pManager );
1717};
1718
1719class OdGsModule;
1720
1734{
1735public:
1743 virtual void viewWasCreated(OdGsView* pView);
1744
1752 virtual void viewToBeDestroyed(OdGsView* pView);
1753
1759 virtual void viewToBeUpdated(OdGsView* pView, int flags);
1760
1766 virtual void viewWasUpdated(OdGsView* pView, int flags);
1767
1775 virtual void gsToBeUnloaded(OdGsModule* pModule);
1776};
1777
1784{
1785public:
1787
1794
1801
1806 virtual void addReactor(OdGsReactor* pReactor) = 0;
1807
1812 virtual void removeReactor(OdGsReactor* pReactor) = 0;
1813};
1814
1819
1824
1825#include "TD_PackPop.h"
1826
1827#endif // __GS_H_INCLUDED_
tol
Definition: DimVarDefs.h:2287
scale
Definition: DimVarDefs.h:1684
OdSmartPtr< OdGiRasterImage > OdGiRasterImagePtr
Definition: Gs.h:106
OdSmartPtr< OdGsModule > OdGsModulePtr
Definition: Gs.h:1818
OdSmartPtr< OdGiDrawable > OdGiDrawablePtr
Definition: Gs.h:36
OdSmartPtr< OdGsDevice > OdGsDevicePtr
Definition: Gs.h:85
OdSmartPtr< OdGsUpdateManager > OdGsUpdateManagerPtr
Definition: Gs.h:112
const OdGsMarker kNullSubentIndex
Definition: Gs.h:1823
OdArray< OdGsModel *, OdMemoryAllocator< OdGsModel * > > OdGsModelArray
Definition: Gs.h:78
OdSmartPtr< OdGsView > OdGsViewPtr
Definition: Gs.h:66
OdSmartPtr< OdGsModel > OdGsModelPtr
Definition: Gs.h:73
OdSmartPtr< OdGsReactor > OdGsReactorPtr
Definition: Gs.h:99
OdSmartPtr< OdRxDictionary > OdRxDictionaryPtr
Definition: Gs.h:92
#define ODCOLORREF
Definition: OdPlatform.h:933
ptrdiff_t OdGsMarker
unsigned int OdUInt32
unsigned char OdUInt8
#define SETBIT(flags, bit, value)
Definition: OdaDefs.h:516
#define GETBIT(flags, bit)
Definition: OdaDefs.h:517
#define SETBIT_1(flags, bit)
Definition: OdaDefs.h:520
#define FIRSTDLL_EXPORT
Definition: RootExport.h:39
Definition: GeTol.h:49
void setCombineSubEntities(bool bSet)
Definition: Gs.h:1350
void setIgnoreViewExtents(bool bSet)
Definition: Gs.h:1338
void setCalculateDistance(bool bSet)
Definition: Gs.h:1379
void setIntersectionOnly(bool bSet)
Definition: Gs.h:1312
bool intersectionWithModel() const
Definition: Gs.h:1332
bool isToleranceOverride() const
Definition: Gs.h:1369
bool ignoreViewExtents() const
Definition: Gs.h:1345
void setToleranceOverride(const OdGeTol &tol)
Definition: Gs.h:1360
void setProcessSignleList(bool bSet)
Definition: Gs.h:1410
bool getProcessSignleList() const
Definition: Gs.h:1416
bool combineSubEntities() const
Definition: Gs.h:1355
bool getCalculateDistance() const
Definition: Gs.h:1384
void setIntersectionWithModel(bool bSet)
Definition: Gs.h:1325
const OdGeTol & toleranceOverride() const
Definition: Gs.h:1374
bool getCheckAll() const
Definition: Gs.h:1394
double getClearance() const
Definition: Gs.h:1404
void setCheckAll(bool bSet)
Definition: Gs.h:1389
bool intersectionOnly() const
Definition: Gs.h:1319
void setClearance(double c)
Definition: Gs.h:1399
virtual OdUInt32 collisionDetected(const OdGiPathNode *pPathNode1, const OdGiPathNode *pPathNode2, double dDistance)
Definition: Gs.h:1269
virtual OdUInt32 collisionDetected(const OdGiPathNode *, const OdGiPathNode *)
Definition: Gs.h:1254
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:140
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:1044
@ kTransparent
Definition: Gs.h:1045
@ kDeviceBackground
Definition: Gs.h:1046
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:187
@ kTwoLights
Definition: Gs.h:189
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:197
void removeViewport3dClipping()
virtual bool isPerspective() const =0
virtual void invalidateCachedViewportGeometry()=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:173
@ kCrossing
Definition: Gs.h:175
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 setLineweightEnum(int numLineweights, const OdUInt8 *lineweights)=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 OdGsModelArray getModelList() const =0
virtual void setEnableBackClip(bool enable)=0
virtual void endInteractivity()=0
virtual RenderMode mode() const =0
RenderMode
Definition: Gs.h:148
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:164
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:1214
OdGsClientViewInfo()
Definition: Gs.h:1216
@ kDependentViewport
Definition: Gs.h:1204
@ kDependentGeometry
Definition: Gs.h:1205
long acadWindowId
Definition: Gs.h:1211
OdDbStub * viewportObjectId
Definition: Gs.h:1212
long viewportId
Definition: Gs.h:1210
OdGiContextualColorsPtr contextColors
Definition: Gs.h:1213