CFx SDK Documentation  2020SP3
GiEmptyGeometry.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 
25 
26 
27 #ifndef __ODGIEMPTYGEOMETRY_H__
28 #define __ODGIEMPTYGEOMETRY_H__
29 
30 
31 #include "Gi/GiExport.h"
32 #include "Gi/GiConveyorGeometry.h"
33 
34 #include "TD_PackPush.h"
35 
42 {
43 public:
45 
49  void plineProc(const OdGiPolyline& polyline,
50  const OdGeMatrix3d* xfm = 0,
51  OdUInt32 fromIndex = 0,
52  OdUInt32 numSegs = 0);
53 
57  void circleProc(
58  const OdGePoint3d& center, double radius,
59  const OdGeVector3d& normal,
60  const OdGeVector3d* pExtrusion = 0);
61 
62  void circleProc(
63  const OdGePoint3d& firstPoint, const OdGePoint3d& secondPoint, const OdGePoint3d& thirdPoint,
64  const OdGeVector3d* pExtrusion = 0);
65 
70  const OdGePoint3d& center,
71  double radius,
72  const OdGeVector3d& normal,
73  const OdGeVector3d& startVector,
74  double sweepAngle,
75  OdGiArcType arcType = kOdGiArcSimple,
76  const OdGeVector3d* pExtrusion = 0);
77 
79  const OdGePoint3d& firstPoint,
80  const OdGePoint3d& secondPoint,
81  const OdGePoint3d& thirdPoint,
82  OdGiArcType arcType = kOdGiArcSimple,
83  const OdGeVector3d* pExtrusion = 0);
84 
89  OdInt32 numPoints, const OdGePoint3d* vertexList,
90  const OdGeVector3d* pNormal = 0,
91  const OdGeVector3d* pExtrusion = 0, OdGsMarker baseSubEntMarker = -1);
92 
97  OdInt32 numPoints, const OdGePoint3d* vertexList,
98  const OdGeVector3d* pNormal = 0, const OdGeVector3d* pExtrusion = 0);
99 
103  void meshProc(
104  OdInt32 rows,
105  OdInt32 columns,
106  const OdGePoint3d* vertexList,
107  const OdGiEdgeData* pEdgeData = 0,
108  const OdGiFaceData* pFaceData = 0,
109  const OdGiVertexData* pVertexData = 0);
110 
114  void shellProc(
115  OdInt32 numVertices,
116  const OdGePoint3d* vertexList,
117  OdInt32 faceListSize,
118  const OdInt32* faceList,
119  const OdGiEdgeData* pEdgeData = 0,
120  const OdGiFaceData* pFaceData = 0,
121  const OdGiVertexData* pVertexData = 0);
122 
126  void textProc(
127  const OdGePoint3d& position,
128  const OdGeVector3d& direction, const OdGeVector3d& upVector,
129  const OdChar* msg, OdInt32 numChars, bool raw, const OdGiTextStyle* pTextStyle,
130  const OdGeVector3d* pExtrusion = 0);
131 
135  void shapeProc(
136  const OdGePoint3d& position,
137  const OdGeVector3d& direction, const OdGeVector3d& upVector,
138  int shapeNumber, const OdGiTextStyle* pTextStyle,
139  const OdGeVector3d* pExtrusion = 0);
140 
144  void xlineProc(
145  const OdGePoint3d& firstPoint, const OdGePoint3d& secondPoint);
146 
150  void rayProc( const OdGePoint3d& basePoint, const OdGePoint3d& throughPoint);
151 
155  void nurbsProc( const OdGeNurbCurve3d& nurbsCurve);
156 
161  const OdGeEllipArc3d& ellipArc,
162  const OdGePoint3d* endPointsOverrides = 0,
163  OdGiArcType arcType = kOdGiArcSimple, const OdGeVector3d* pExtrusion = 0);
164 
169  const OdGePoint3d& origin,
170  const OdGeVector3d& u,
171  const OdGeVector3d& v,
172  const OdGiRasterImage* pImage,
173  const OdGePoint2d* uvBoundary,
174  OdUInt32 numBoundPts,
175  bool transparency = false,
176  double brightness = 50.0,
177  double contrast = 50.0,
178  double fade = 0.0);
179 
184  const OdGePoint3d& origin,
185  const OdGeVector3d& u,
186  const OdGeVector3d& v,
187  const OdGiMetafile* pMetafile,
188  bool dcAligned = true,
189  bool allowClipping = false);
190 
195  OdInt32 numPoints,
196  const OdGePoint3d* vertexList,
197  const OdCmEntityColor* pColors,
198  const OdCmTransparency* pTransparency = 0,
199  const OdGeVector3d* pNormals = 0,
200  const OdGeVector3d* pExtrusions = 0,
201  const OdGsMarker* pSubEntMarkers = 0,
202  OdInt32 nPointSize = 0);
203 
207  void rowOfDotsProc(OdInt32 numPoints, const OdGePoint3d& startPoint, const OdGeVector3d& dirToNextPoint);
208 
212  void edgeProc(const OdGiEdge2dArray& edges, const OdGeMatrix3d* pXform = 0);
213 };
214 
215 #include "TD_PackPop.h"
216 
217 #endif //#ifndef __ODGIEMPTYGEOMETRY_H__
OdCmEntityColor
Definition: CmColorBase.h:68
OdGiEmptyGeometry
Definition: GiEmptyGeometry.h:42
OdGeVector3d
Definition: GeVector3d.h:54
kOdGiArcSimple
@ kOdGiArcSimple
Definition: GiGeometry.h:684
OdCmTransparency
Definition: CmColorBase.h:1617
OdGiEmptyGeometry::rayProc
void rayProc(const OdGePoint3d &basePoint, const OdGePoint3d &throughPoint)
OdGiVertexData
Definition: GiGeometry.h:549
OdGiEmptyGeometry::nurbsProc
void nurbsProc(const OdGeNurbCurve3d &nurbsCurve)
OdGiEmptyGeometry::kVoid
static ODGI_EXPORT_STATIC OdGiConveyorGeometry & kVoid
Definition: GiEmptyGeometry.h:44
OdGiEmptyGeometry::meshProc
void meshProc(OdInt32 rows, OdInt32 columns, const OdGePoint3d *vertexList, const OdGiEdgeData *pEdgeData=0, const OdGiFaceData *pFaceData=0, const OdGiVertexData *pVertexData=0)
OdGiPolyline
Definition: GiPolyline.h:49
OdArray
Definition: OdArray.h:591
TD_PackPop.h
OdGiEmptyGeometry::plineProc
void plineProc(const OdGiPolyline &polyline, const OdGeMatrix3d *xfm=0, OdUInt32 fromIndex=0, OdUInt32 numSegs=0)
OdGsMarker
ptrdiff_t OdGsMarker
Definition: OdPlatformSettings.h:889
OdUInt32
unsigned int OdUInt32
Definition: OdPlatformSettings.h:783
OdGeMatrix3d
Definition: GeMatrix3d.h:73
ODGI_EXPORT
#define ODGI_EXPORT
Definition: GiExport.h:35
OdGiEmptyGeometry::circularArcProc
void circularArcProc(const OdGePoint3d &firstPoint, const OdGePoint3d &secondPoint, const OdGePoint3d &thirdPoint, OdGiArcType arcType=kOdGiArcSimple, const OdGeVector3d *pExtrusion=0)
OdGiConveyorGeometry
Definition: GiConveyorGeometry.h:270
OdGiFaceData
Definition: GiGeometry.h:245
OdGiTextStyle
Definition: GiTextStyle.h:52
OdGeEllipArc3d
Definition: GeEllipArc3d.h:60
OdGePoint3d
Definition: GePoint3d.h:55
OdInt32
int OdInt32
Definition: OdPlatformSettings.h:782
OdGiEmptyGeometry::metafileProc
void metafileProc(const OdGePoint3d &origin, const OdGeVector3d &u, const OdGeVector3d &v, const OdGiMetafile *pMetafile, bool dcAligned=true, bool allowClipping=false)
GiConveyorGeometry.h
OdGiEmptyGeometry::circleProc
void circleProc(const OdGePoint3d &firstPoint, const OdGePoint3d &secondPoint, const OdGePoint3d &thirdPoint, const OdGeVector3d *pExtrusion=0)
OdGiArcType
OdGiArcType
Definition: GiGeometry.h:683
OdChar
wchar_t OdChar
Definition: OdPlatformSettings.h:745
ODGI_EXPORT_STATIC
#define ODGI_EXPORT_STATIC
Definition: GiExport.h:36
OdGiEmptyGeometry::shapeProc
void shapeProc(const OdGePoint3d &position, const OdGeVector3d &direction, const OdGeVector3d &upVector, int shapeNumber, const OdGiTextStyle *pTextStyle, const OdGeVector3d *pExtrusion=0)
v
const GLfloat * v
Definition: gles2_ext.h:315
OdGiEdgeData
Definition: GiGeometry.h:67
OdGiEmptyGeometry::circularArcProc
void circularArcProc(const OdGePoint3d &center, double radius, const OdGeVector3d &normal, const OdGeVector3d &startVector, double sweepAngle, OdGiArcType arcType=kOdGiArcSimple, const OdGeVector3d *pExtrusion=0)
OdGiEmptyGeometry::ellipArcProc
void ellipArcProc(const OdGeEllipArc3d &ellipArc, const OdGePoint3d *endPointsOverrides=0, OdGiArcType arcType=kOdGiArcSimple, const OdGeVector3d *pExtrusion=0)
TD_PackPush.h
OdGeNurbCurve3d
Definition: GeNurbCurve3d.h:49
OdGiEmptyGeometry::circleProc
void circleProc(const OdGePoint3d &center, double radius, const OdGeVector3d &normal, const OdGeVector3d *pExtrusion=0)
OdGiEmptyGeometry::rowOfDotsProc
void rowOfDotsProc(OdInt32 numPoints, const OdGePoint3d &startPoint, const OdGeVector3d &dirToNextPoint)
OdGiMetafile
Definition: GiMetafile.h:40
OdGiEmptyGeometry::xlineProc
void xlineProc(const OdGePoint3d &firstPoint, const OdGePoint3d &secondPoint)
OdGiEmptyGeometry::polypointProc
void polypointProc(OdInt32 numPoints, const OdGePoint3d *vertexList, const OdCmEntityColor *pColors, const OdCmTransparency *pTransparency=0, const OdGeVector3d *pNormals=0, const OdGeVector3d *pExtrusions=0, const OdGsMarker *pSubEntMarkers=0, OdInt32 nPointSize=0)
GiExport.h
OdGiEmptyGeometry::polygonProc
void polygonProc(OdInt32 numPoints, const OdGePoint3d *vertexList, const OdGeVector3d *pNormal=0, const OdGeVector3d *pExtrusion=0)
OdGiEmptyGeometry::textProc
void textProc(const OdGePoint3d &position, const OdGeVector3d &direction, const OdGeVector3d &upVector, const OdChar *msg, OdInt32 numChars, bool raw, const OdGiTextStyle *pTextStyle, const OdGeVector3d *pExtrusion=0)
OdGiEmptyGeometry::polylineProc
void polylineProc(OdInt32 numPoints, const OdGePoint3d *vertexList, const OdGeVector3d *pNormal=0, const OdGeVector3d *pExtrusion=0, OdGsMarker baseSubEntMarker=-1)
OdGiRasterImage
Definition: GiRasterImage.h:37
OdGiEmptyGeometry::edgeProc
void edgeProc(const OdGiEdge2dArray &edges, const OdGeMatrix3d *pXform=0)
OdGiEmptyGeometry::rasterImageProc
void rasterImageProc(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)
OdGiEmptyGeometry::shellProc
void shellProc(OdInt32 numVertices, const OdGePoint3d *vertexList, OdInt32 faceListSize, const OdInt32 *faceList, const OdGiEdgeData *pEdgeData=0, const OdGiFaceData *pFaceData=0, const OdGiVertexData *pVertexData=0)
OdGePoint2d
Definition: GePoint2d.h:60