CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
FxVectorizeDevice.h
Go to the documentation of this file.
1//
2// (C) Copyright 2005-2025 by Graebert GmbH.
3//
4// Permission to use, copy, modify, and distribute this software in
5// object code form for any purpose and without fee is hereby granted,
6// provided that the above copyright notice appears in all copies and
7// that both that copyright notice and the limited warranty and
8// restricted rights notice below appear in all supporting
9// documentation.
10//
11// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
12// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
13// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
14// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
15// UNINTERRUPTED OR ERROR FREE.
16
17#pragma once
18
19#include "FxPragmaPush.h"
20
21#include "DDKERNEL.h"
22
23#include <Gs/GsBaseVectorizer.h>
24
25#include <DbGsManager.h>
26
27class CFxView;
28class CFxDatabase;
31class CFxViewDrawInfo;
32class QImage;
33class CFxPicture;
35
42{
43 friend class CFxViewImpl;
44public:
46
49
52
56 virtual CFxViewDrawContext* CreateDrawContext( int iRenderEngine, void* pParam, int iRenderMode ) const = 0;
57
62
67 virtual double GetDeviceWidth() const = 0;
68
73 virtual double GetDeviceHeight() const = 0;
74
79 virtual bool InitializeLayout( const OdDbObjectId& idLayout ) = 0;
80
85 virtual void DestroyLayout() = 0;
86
91 virtual void Update( double width, double height, bool bAttachDatabase ) = 0;
92
96 virtual CFxDatabase* GetFxDatabase() = 0;
97
101 virtual const CFxDatabase* GetFxDatabase() const = 0;
102
106 virtual void AddDeviceReactor( CFxDeviceReactor* pReactor ) = 0;
107
111 virtual void RemoveDeviceReactor( CFxDeviceReactor* pReactor ) = 0;
112
116 virtual int GetCurrentRenderEngine() const = 0;
117
121 virtual OdDbObjectId GetLayoutId() const = 0;
122
126 virtual void SetPalette(const ODCOLORREF* pPalette) = 0;
127
131 virtual const ODCOLORREF* GetPalette() const = 0;
132
136 virtual void SetBackground(ODCOLORREF color) = 0;
137
141 virtual void SetBackground(ODCOLORREF color, bool usePlotPalette) = 0;
142
146 virtual ODCOLORREF GetBackground() const = 0;
147
151 virtual ODCOLORREF GetForeground() const = 0;
152
156 virtual CFxView* GetActiveFxView() = 0;
157
161 virtual const CFxView* GetActiveFxView() const = 0;
162
167 virtual CFxView* GetFxViewByCadWindowId( OdInt16 number ) = 0;
168
174
178 virtual CFxView* HitTest( const OdGsDCPoint& ptInput ) = 0;
179
182 virtual bool IsRegeneration() const = 0;
183
186 virtual void SetRegeneration( bool bRegen ) = 0;
187
190 virtual void InvalidateGeometry() = 0;
191
194 virtual double GetPixelPerMM() const = 0;
195
199 virtual void AdjustBeforeUpdate(CFxViewDrawContext &ctx, CFxViewDrawInfo& rDrawInfo, CFxView &view) = 0;
200
204 static void GetModelLineWeights( OdUInt8Array& lweights, double scale );
205
209 virtual bool GetPlotArea(OdGsDCRectDouble *out = 0) = 0;
210
214 virtual void SetPlotArea(const OdGsDCRectDouble& area) = 0;
215
218 virtual void SetUsePlotTransparency( bool value ) = 0;
219 virtual bool UsePlotTransparency() const = 0;
220
221protected:
222 virtual void destroyView( OdGsView* pView ) = 0;
223
224 virtual void BeginDeviceUpdate(){};
225 virtual void EndDeviceUpdate(){};
226
227 friend class CFxViewDrawInfo;
228
229public:
230 virtual bool IsInitialUpdate() const = 0;
231};
232
234
235#include "FxPragmaPop.h"
#define DDKERNEL_API
Definition DDKERNEL.h:32
scale
OdSmartPtr< CFxVectorizeDevice > CFxVectorizeDevicePtr
#define ODCOLORREF
short OdInt16
OdArray< OdUInt8, OdMemoryAllocator< OdUInt8 > > OdUInt8Array
Definition UInt8Array.h:35
virtual ODCOLORREF GetBackground() const =0
virtual const ODCOLORREF * GetPalette() const =0
virtual void SetRegeneration(bool bRegen)=0
~CFxVectorizeDevice() override
virtual const CFxDatabase * GetFxDatabase() const =0
static void GetModelLineWeights(OdUInt8Array &lweights, double scale)
virtual double GetPixelPerMM() const =0
ODRX_DECLARE_MEMBERS(CFxVectorizeDevice)
virtual void AdjustBeforeUpdate(CFxViewDrawContext &ctx, CFxViewDrawInfo &rDrawInfo, CFxView &view)=0
virtual CFxDatabase * GetFxDatabase()=0
virtual void SetUsePlotTransparency(bool value)=0
virtual void DestroyLayout()=0
virtual void Update(double width, double height, bool bAttachDatabase)=0
virtual CFxView * GetFxViewByCadWindowId(OdInt16 number)=0
virtual bool GetPlotArea(OdGsDCRectDouble *out=0)=0
virtual bool IsRegeneration() const =0
virtual void SetPalette(const ODCOLORREF *pPalette)=0
virtual void SetPlotArea(const OdGsDCRectDouble &area)=0
virtual bool InitializeLayout(const OdDbObjectId &idLayout)=0
virtual void SetBackground(ODCOLORREF color)=0
virtual void destroyView(OdGsView *pView)=0
virtual void SetBackground(ODCOLORREF color, bool usePlotPalette)=0
virtual ODCOLORREF GetForeground() const =0
virtual void InvalidateGeometry()=0
virtual bool IsInitialUpdate() const =0
virtual CFxView * HitTest(const OdGsDCPoint &ptInput)=0
virtual CFxViewDrawContext * CreateDrawContext(int iRenderEngine, void *pParam, int iRenderMode) const =0
virtual CFxView * GetPaperSpaceOverallView()=0
virtual bool UsePlotTransparency() const =0
virtual void BeginDeviceUpdate()
virtual CFxView * GetActiveFxView()=0
virtual OdDbObjectId GetLayoutId() const =0
virtual void DestroyDrawContext(CFxViewDrawContext *)
virtual double GetDeviceWidth() const =0
virtual void RemoveDeviceReactor(CFxDeviceReactor *pReactor)=0
friend class CFxViewDrawInfo
virtual void AddDeviceReactor(CFxDeviceReactor *pReactor)=0
virtual const CFxView * GetActiveFxView() const =0
virtual double GetDeviceHeight() const =0
virtual int GetCurrentRenderEngine() const =0
virtual void EndDeviceUpdate()
Definition Gs.h:141
GLint GLenum GLsizei width
Definition gles2_ext.h:110
GLint GLenum GLsizei GLsizei height
Definition gles2_ext.h:110
GLsizei const GLfloat * value
Definition gles2_ext.h:302