CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
BrepRenderer.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
25
26#ifndef _BREPRENDERER_H_
27#define _BREPRENDERER_H_
28
29#include "Wr/wrExport.h"
31#include "BrepRenderModes.h"
32
33class OdGiCommonDraw ;
35class OdBrBrep;
36class OdGeMatrix3d;
37
43namespace GeMesh { class OdGeTrMesh; }
44class OdGeExtents3d;
45class OdBrFace;
46class OdGePoint3d;
47
57{
58public:
67 virtual bool filterFace(const OdBrFace &face) = 0;
68
72 virtual ~wrRenderFilter() {}
73};
74
84{
85protected:
86 //DOM-IGNORE-BEGIN
88 //DOM-IGNORE-END
89
90public:
94 virtual ~OdBrepRenderer() {}
95
100 virtual void setBrep(const OdBrBrep& brep) = 0;
101
105 virtual void enableCaching() = 0;
106
111 virtual void disableCaching(bool clearCache = true) = 0;
112
118 virtual bool isCachingEnabled() const = 0;
119
124 virtual void setTriangulationParams(const wrTriangulationParams *pTriangulationParams) = 0;
125
131
136 {
141 };
142
167 virtual bool draw(OdGiCommonDraw * pWd, OdUInt32 geomType, const NumIsolines *pNumIsolines = 0) = 0;
168
178 virtual bool drawSilhouettes(OdGiViewportDraw* pVd) = 0;
179
185 virtual void transformBy(const OdGeMatrix3d &xfm) = 0;
186
198 virtual bool drawFace(OdGiCommonDraw * pWd, OdGsMarker iFace, const wrTriangulationParams& triangulationParams) = 0;
199
210 virtual bool getFaceMesh(GeMesh::OdGeTrMesh& mesh, OdGsMarker iFace, const wrTriangulationParams& triangulationParams) = 0;
211
221 virtual bool getExtents(OdGeExtents3d& extents, OdUInt32 nIso = 6) { return false; }
222
228 virtual void setFaceFilter(wrRenderFilter* pFaceFilter) = 0;
229
238 virtual bool getPtSurface(OdGePoint3d& pt) { return false; } // get the point for calculating deviation in perspective mode
239};
240
241#endif //_BREPRENDERER_H_
ptrdiff_t OdGsMarker
unsigned int OdUInt32
virtual void setTriangulationParams(const wrTriangulationParams *pTriangulationParams)=0
virtual void enableCaching()=0
virtual bool draw(OdGiCommonDraw *pWd, OdUInt32 geomType, const NumIsolines *pNumIsolines=0)=0
virtual bool getExtents(OdGeExtents3d &extents, OdUInt32 nIso=6)
Definition: BrepRenderer.h:221
virtual bool getPtSurface(OdGePoint3d &pt)
Definition: BrepRenderer.h:238
virtual void setFaceFilter(wrRenderFilter *pFaceFilter)=0
virtual ~OdBrepRenderer()
Definition: BrepRenderer.h:94
virtual void setBrep(const OdBrBrep &brep)=0
virtual bool isCachingEnabled() const =0
virtual void disableCaching(bool clearCache=true)=0
virtual bool getFaceMesh(GeMesh::OdGeTrMesh &mesh, OdGsMarker iFace, const wrTriangulationParams &triangulationParams)=0
virtual const wrTriangulationParams * getTriangulationParams() const =0
virtual bool drawFace(OdGiCommonDraw *pWd, OdGsMarker iFace, const wrTriangulationParams &triangulationParams)=0
virtual void transformBy(const OdGeMatrix3d &xfm)=0
virtual bool drawSilhouettes(OdGiViewportDraw *pVd)=0
virtual bool filterFace(const OdBrFace &face)=0
virtual ~wrRenderFilter()
Definition: BrepRenderer.h:72
#define RENDER_EXPORT
Definition: wrExport.h:40