CFx SDK Documentation  2023 SP0
GiViewportGeometry.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_GIVIEWPORT_GEOMETRY_H_
25 #define _OD_GIVIEWPORT_GEOMETRY_H_
26 
27 #include "Gi/Gi.h"
28 #include "Gi/GiGeometry.h"
29 
30 class OdGePoint3d;
31 class OdGeVector3d;
32 class OdGeMatrix2d;
33 class OdGiRasterImage;
34 class OdGiMetafile;
35 class OdGiCommonDraw;
36 class OdGsDCRect;
37 
38 #include "TD_PackPush.h"
39 
45 {
46 public:
48 
57  virtual bool draw(const OdGiCommonDraw& drawObj,
58  void* hdc,
59  const OdGsDCRect& screenRect) const = 0;
60 };
61 
67 {
68 public:
70 
71  // return false to create HDC and draw via OdGiSelfGdiDrawable interface
83  virtual bool draw(OdRxObject* pRxObject,
84  class OdGiConveyorGeometry* pDestGeom,
85  const OdGePoint3d& origin,
86  const OdGeVector3d& u, const OdGeVector3d& v,
87  const OdGsDCRect& screenRect,
88  bool isExport = false) const = 0;
89 };
90 
117 {
118 public:
120 
133  virtual void polylineEye(
134  OdUInt32 numVertices,
135  const OdGePoint3d* vertexList) = 0;
136 
146  virtual void polygonEye(
147  OdUInt32 numVertices,
148  const OdGePoint3d* vertexList) = 0;
149 
162  virtual void polylineDc(
163  OdUInt32 numVertices,
164  const OdGePoint3d* vertexList) = 0;
165 
175  virtual void polygonDc(
176  OdUInt32 numVertices,
177  const OdGePoint3d* vertexList) = 0;
178 
196  virtual void rasterImageDc(
197  const OdGePoint3d& origin,
198  const OdGeVector3d& u,
199  const OdGeVector3d& v,
200  const OdGiRasterImage* pImage,
201  const OdGePoint2d* uvBoundary,
202  OdUInt32 numBoundPts,
203  bool transparency = false,
204  double brightness = 50.0,
205  double contrast = 50.0,
206  double fade = 0.0) = 0;
207 
221  virtual void metafileDc(
222  const OdGePoint3d& origin,
223  const OdGeVector3d& u,
224  const OdGeVector3d& v,
225  const OdGiMetafile* pMetafile,
226  bool dcAligned = true,
227  bool allowClipping = false) = 0;
228 
250  virtual void ownerDrawDc(
251  const OdGePoint3d& origin,
252  const OdGeVector3d& u,
253  const OdGeVector3d& v,
254  const OdGiSelfGdiDrawable* pDrawable,
255  bool dcAligned = true,
256  bool allowClipping = false);
257 };
258 
259 #include "TD_PackPop.h"
260 
261 #endif
unsigned int OdUInt32
#define FIRSTDLL_EXPORT
Definition: RootExport.h:39
ODRX_DECLARE_MEMBERS(OdGiSelfGdiDrawable)
virtual bool draw(const OdGiCommonDraw &drawObj, void *hdc, const OdGsDCRect &screenRect) const =0
virtual bool draw(OdRxObject *pRxObject, class OdGiConveyorGeometry *pDestGeom, const OdGePoint3d &origin, const OdGeVector3d &u, const OdGeVector3d &v, const OdGsDCRect &screenRect, bool isExport=false) const =0
ODRX_DECLARE_MEMBERS(OdGiSelfGiDrawablePE)
virtual void metafileDc(const OdGePoint3d &origin, const OdGeVector3d &u, const OdGeVector3d &v, const OdGiMetafile *pMetafile, bool dcAligned=true, bool allowClipping=false)=0
virtual void polylineDc(OdUInt32 numVertices, const OdGePoint3d *vertexList)=0
virtual void polylineEye(OdUInt32 numVertices, const OdGePoint3d *vertexList)=0
virtual void polygonDc(OdUInt32 numVertices, const OdGePoint3d *vertexList)=0
virtual void polygonEye(OdUInt32 numVertices, const OdGePoint3d *vertexList)=0
virtual void ownerDrawDc(const OdGePoint3d &origin, const OdGeVector3d &u, const OdGeVector3d &v, const OdGiSelfGdiDrawable *pDrawable, bool dcAligned=true, bool allowClipping=false)
ODRX_DECLARE_MEMBERS(OdGiViewportGeometry)
virtual void rasterImageDc(const OdGePoint3d &origin, const OdGeVector3d &u, const OdGeVector3d &v, const OdGiRasterImage *pImage, const OdGePoint2d *uvBoundary, OdUInt32 numBoundPts, bool transparency=false, double brightness=50.0, double contrast=50.0, double fade=0.0)=0
const GLfloat * v
Definition: gles2_ext.h:315