CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
GiConveyorGeometry.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, 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-2024 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 __ODGICONVEYORGEOMETRY_H__
25#define __ODGICONVEYORGEOMETRY_H__
26
27#include "Gi/GiGeometry.h"
28#include "Gi/GiCommonDraw.h"
31
32class OdGiRasterImage;
33class OdGiMetafile;
34class OdGiViewport;
36class OdGsView;
37class OdGiCommonDraw;
38class OdGiDeviation;
39class OdGeExtents3d;
41
55{
56public:
61
68 virtual OdGiContext& giContext() const = 0;
69
81
88 virtual const OdGiSubEntityTraitsData& effectiveTraits() const = 0;
89
95 virtual void setEffectiveTraits(const OdGiSubEntityTraitsData& traits,
96 const OdGeVector3d* fillNormal = NULL) = 0;
97
104 virtual bool effectivelyVisible() const { return effectiveTraits().visibility(); }
105
115 virtual const OdGiDrawableDesc* currentDrawableDesc() const = 0;
116
126 virtual const OdGiDrawable* currentDrawable() const = 0;
127
134 virtual const OdGiViewport* giViewport() const = 0;
135
144 virtual const OdGsView* gsView() const = 0;
145
156 virtual void onTraitsModified() = 0;
157
165 virtual void onTextProcessing(const OdGePoint3d& /*position*/,
166 const OdGeVector3d& /*direction*/,
167 const OdGeVector3d& /*upVector*/) { }
168
175 virtual bool regenAbort() const = 0;
176
183 virtual const OdGiPathNode* currentGiPath() const = 0;
184
191 virtual const OdGiDeviation& worldDeviation() const = 0;
198 virtual const OdGiDeviation& modelDeviation() const = 0;
205 virtual const OdGiDeviation& eyeDeviation() const = 0;
206
220
231
238 virtual const OdGiLineweightOverride *currentLineweightOverride() const { return NULL; }
239
244 {
245 // Spatial filter as simplifier
246 kSpatialFilterSimplPline = 1, // Simplify plineProc() by spatial filter
247 kSpatialFilterSimplNurbs = 2, // Simplify nurbsProc() by spatial filter
248 kSpatialFilterSimplText = 4, // Simplify textProc () by spatial filter
249 kSpatialFilterSimplShape = 8, // Simplify shapeProc() by spatial filter
251 kSpatialFilterSimplText | kSpatialFilterSimplShape), // All spatial filter options
252 // Conveyor embranchment as simplifier
253 kEmbranchmentSimplText = 16, // Simplify textProc () by conveyor embranchment
254 kEmbranchmentSimplNurbs = 32, // Simplify nurbsProc() by conveyor embranchment
255 kEmbranchmentSimplAll = (kEmbranchmentSimplText | kEmbranchmentSimplNurbs), // All conveyor embranchment options
257 // Pline subentity markers
258 kPlineMarkers = 64, // Enable subentity markers set per pline() call
259 kForceMarkersOnModified = 128, // Force onTraitsModified call for each subentity marker change
260 // Polyline subentity markers
261 kPolylineMarkers = 256, // Enable subentity markers set per polyline() call
262 // Pline geometry
263 kPlineAllowArcProc = 512, // Vectorizer will draw arc segments of polyline as arcs (otherwise as sample points)
264 // Enable test-specific functionality
265 kTestMode = 1024, // Enable test mode
266 // Specific vectorization mode
267 kLineTyperAfterMetafile = 2048 // Specific mode (for example in GDI device) when the Line type node are follows by the metafile
268 };
269
275 virtual OdUInt32 drawContextFlags() const { return 0; }
276
283 virtual double annotationScale() const { return 1.0; }
284};
285
293{
294protected:
296public:
304
311
317 explicit OdGiConveyorContextWrapper(OdGiConveyorContext *pCtx = NULL) : m_pCtx(pCtx) { }
318
319
326 OdGiContext& giContext() const { return m_pCtx->giContext(); }
327
334 OdGiSubEntityTraits& subEntityTraits() const { return m_pCtx->subEntityTraits(); }
335
342 const OdGiSubEntityTraitsData& effectiveTraits() const { return m_pCtx->effectiveTraits(); }
343
350 const OdGeVector3d* fillNormal = NULL) { m_pCtx->setEffectiveTraits(traits, fillNormal); }
351
358 bool effectivelyVisible() const { return m_pCtx->effectivelyVisible(); }
359
369 const OdGiDrawableDesc* currentDrawableDesc() const { return m_pCtx->currentDrawableDesc(); }
370
380 const OdGiDrawable* currentDrawable() const { return m_pCtx->currentDrawable(); }
381
388 const OdGiViewport* giViewport() const { return m_pCtx->giViewport(); }
389
398 const OdGsView* gsView() const { return m_pCtx->gsView(); }
399
410 void onTraitsModified() { m_pCtx->onTraitsModified(); }
411
423 void onTextProcessing(const OdGePoint3d& position, const OdGeVector3d& direction, const OdGeVector3d& upVector)
424 { m_pCtx->onTextProcessing(position, direction, upVector); }
425
432 bool regenAbort() const { return m_pCtx->regenAbort(); }
433
440 const OdGiPathNode* currentGiPath() const { return m_pCtx->currentGiPath(); }
441
448 const OdGiDeviation& worldDeviation() const { return m_pCtx->worldDeviation(); }
449
456 const OdGiDeviation& modelDeviation() const { return m_pCtx->modelDeviation(); }
457
464 const OdGiDeviation& eyeDeviation() const { return m_pCtx->eyeDeviation(); }
465
478 OdGeMatrix3d getModelToWorldTransform() const { return m_pCtx->getModelToWorldTransform(); }
479
489 OdGeMatrix3d getWorldToModelTransform() const { return m_pCtx->getWorldToModelTransform(); }
490
497 const OdGiLineweightOverride *currentLineweightOverride() const { return m_pCtx->currentLineweightOverride(); }
498
505 OdUInt32 drawContextFlags() const { return m_pCtx->drawContextFlags(); }
506};
507
515{
516public:
521
534 virtual void plineProc(const OdGiPolyline& polyline,
535 const OdGeMatrix3d* pXfm = 0,
536 OdUInt32 fromIndex = 0,
537 OdUInt32 numSegs = 0) = 0;
538
552 virtual void polylineProc(
553 OdInt32 numPoints, const OdGePoint3d* vertexList,
554 const OdGeVector3d* pNormal = 0,
555 const OdGeVector3d* pExtrusion = 0,
556 OdGsMarker baseSubEntMarker = -1) = 0;
557
558
559#if defined(_MSC_VER)
560
561// The right function prototype was changed (see above). Old one left to cause compilation error
562 virtual void polylineProc(
563 OdInt32 /*numPoints*/, const OdGePoint3d* /*vertexList*/,
564 const OdGeVector3d* /*pNormal*/,
565 const OdGeVector3d* /*pExtrusion*/,
566 OdInt32 /*baseSubEntMarker*/) final {ODA_FAIL();}
567#endif
568
582 virtual void polygonProc(
583 OdInt32 numPoints, const OdGePoint3d* vertexList,
584 const OdGeVector3d* pNormal = 0,
585 const OdGeVector3d* pExtrusion = 0) = 0;
586
597 virtual void xlineProc(
598 const OdGePoint3d& firstPoint, const OdGePoint3d& secondPoint) = 0;
599
612 virtual void rayProc(
613 const OdGePoint3d& basePoint, const OdGePoint3d& throughPoint) = 0;
614
633 virtual void meshProc(
634 OdInt32 numRows,
635 OdInt32 numColumns,
636 const OdGePoint3d* vertexList,
637 const OdGiEdgeData* pEdgeData = 0,
638 const OdGiFaceData* pFaceData = 0,
639 const OdGiVertexData* pVertexData = 0) = 0;
640
657 virtual void shellProc(
658 OdInt32 numVertices, const OdGePoint3d* vertexList,
659 OdInt32 faceListSize, const OdInt32* faceList,
660 const OdGiEdgeData* pEdgeData = 0,
661 const OdGiFaceData* pFaceData = 0,
662 const OdGiVertexData* pVertexData = 0) = 0;
663
676 virtual void circleProc(
677 const OdGePoint3d& center,
678 double radius,
679 const OdGeVector3d& normal,
680 const OdGeVector3d* pExtrusion = 0) = 0;
681
695 virtual void circleProc2(
696 const OdGePoint3d& center,
697 double radius,
698 const OdGeVector3d& normal,
699 const OdGeVector3d& /*startVector*/,
700 const OdGeVector3d* pExtrusion = 0)
701 {
702 circleProc(center, radius, normal, pExtrusion);
703 }
704
718 virtual void circleProc(
719 const OdGePoint3d& firstPoint,
720 const OdGePoint3d& secondPoint,
721 const OdGePoint3d& thirdPoint,
722 const OdGeVector3d* pExtrusion = 0) = 0;
723
752 virtual void circularArcProc(
753 const OdGePoint3d& center,
754 double radius,
755 const OdGeVector3d& normal,
756 const OdGeVector3d& startVector,
757 double sweepAngle,
758 OdGiArcType arcType = kOdGiArcSimple, const OdGeVector3d* pExtrusion = 0) = 0;
759
775 virtual void circularArcProc(
776 const OdGePoint3d& firstPoint,
777 const OdGePoint3d& secondPoint,
778 const OdGePoint3d& thirdPoint,
779 OdGiArcType arcType = kOdGiArcSimple, const OdGeVector3d* pExtrusion = 0) = 0;
780
803 virtual void ellipArcProc(
804 const OdGeEllipArc3d& ellipArc,
805 const OdGePoint3d* endPointOverrides = 0,
806 OdGiArcType arcType = kOdGiArcSimple, const OdGeVector3d* pExtrusion = 0) = 0;
807
814 virtual void nurbsProc(
815 const OdGeNurbCurve3d& nurbsCurve) = 0;
816
834 virtual void textProc(
835 const OdGePoint3d& position,
836 const OdGeVector3d& direction,
837 const OdGeVector3d& upVector,
838 const OdChar* msg,
839 OdInt32 numBytes,
840 bool raw,
841 const OdGiTextStyle* pTextStyle,
842 const OdGeVector3d* pExtrusion = 0) = 0;
843
861 virtual void textProc2(
862 const OdGePoint3d& position,
863 const OdGeVector3d& direction,
864 const OdGeVector3d& upVector,
865 const OdChar* msg,
866 OdInt32 numBytes,
867 bool raw,
868 const OdGiTextStyle* pTextStyle,
869 const OdGeVector3d* pExtrusion = 0,
870 const OdGeExtents3d* /*extentsBox*/ = 0)
871 {
872 textProc(position, direction, upVector, msg, numBytes, raw, pTextStyle, pExtrusion);
873 }
874
888 virtual void shapeProc(
889 const OdGePoint3d& position,
890 const OdGeVector3d& direction,
891 const OdGeVector3d& upVector,
892 int shapeNumber,
893 const OdGiTextStyle* pTextStyle,
894 const OdGeVector3d* pExtrusion = 0) = 0;
895
912 virtual void rasterImageProc(
913 const OdGePoint3d& origin,
914 const OdGeVector3d& u,
915 const OdGeVector3d& v,
916 const OdGiRasterImage* pImage,
917 const OdGePoint2d* uvBoundary,
918 OdUInt32 numBoundPts,
919 bool transparency = false,
920 double brightness = 50.0,
921 double contrast = 50.0,
922 double fade = 0.0) = 0;
923
934 virtual void metafileProc(
935 const OdGePoint3d& origin,
936 const OdGeVector3d& u,
937 const OdGeVector3d& v,
938 const OdGiMetafile* pMetafile,
939 bool dcAligned = true,
940 bool allowClipping = false) = 0;
941
952 virtual void xlineProc2(const OdGePoint3d& basePoint, const OdGeVector3d& direction)
953 {
954 xlineProc(basePoint, basePoint + direction);
955 }
956
969 virtual void rayProc2(const OdGePoint3d& basePoint, const OdGeVector3d& direction)
970 {
971 rayProc(basePoint, basePoint + direction);
972 }
973
977 virtual void setExtentsProc(const OdGePoint3d * /*pPoints*/, bool /*bTransform*/ = true) { }
978
987
994 virtual int ttfCharProcFlags() const { return 0; }
995 virtual bool ttfCharProc(OdChar /*character*/, bool /*isGlyph*/, const OdGePoint3d& /*position*/,
996 const OdGeBoundBlock3d* /*pBoundBlock*/) { return false; }
997
1011 virtual void ttfPolyDrawProc(
1012 OdInt32 numVertices, const OdGePoint3d* vertexList,
1013 OdInt32 faceListSize, const OdInt32* faceList,
1014 const OdUInt8* /*pBezierTypes*/, const OdGiFaceData* pFaceData = 0)
1015 {
1016 shellProc(numVertices, vertexList, faceListSize, faceList, 0, pFaceData);
1017 }
1018
1020 {
1021 kBoundaryProcXform = 1, // Non-identity Xform available at least once
1022 kBoundaryProcXformNonUni = 2, // Non-uni-scale Xform available at least once
1023 kBoundaryProcProjection = 4, // Projective Xform available at least once
1024 kBoundaryProcClip = 8, // Boundary clipped partially or completely at least once
1025 kBoundaryProcClipFull = 16 // Boundary completely clipped at least once
1026 };
1028 const OdGeBoundBlock3d & /*boundBlock*/, // {I} represent block for apply check
1029 OdUInt32 & /*outputFlags*/) // {O} will represent set of EConveyorBoundaryInfoFlags flags on out
1030 {
1031 }
1032
1047 OdInt32 numPoints, const OdGePoint3d* vertexList, const OdCmEntityColor* pColors = 0,
1048 const OdCmTransparency *pTransparency = 0, const OdGeVector3d* pNormals = 0, const OdGeVector3d* pExtrusions = 0,
1049 const OdGsMarker* pSubEntMarkers = 0, OdInt32 nPointSize = 0);
1050
1058 void rowOfDotsProc2(OdInt32 numPoints, const OdGePoint3d& startPoint, const OdGeVector3d& dirToNextPoint);
1059
1071 virtual void polypointProc(
1072 OdInt32 numPoints, const OdGePoint3d* vertexList, const OdCmEntityColor* pColors,
1073 const OdCmTransparency* pTransparency = 0, const OdGeVector3d* pNormals = 0, const OdGeVector3d* pExtrusions = 0,
1074 const OdGsMarker* pSubEntMarkers = 0, OdInt32 nPointSize = 0) = 0;
1075
1091 OdUInt32 numIndices, const OdUInt32 *pNumPositions, const OdGePoint3d *pPositions,
1092 const OdUInt32 *pNumPoints, const OdGePoint3d *pPoints,
1093 const OdCmEntityColor *pOutlineColors = NULL, const OdUInt32 *pOutlinePsLinetypes = NULL,
1094 const OdCmEntityColor *pFillColors = NULL, const OdCmTransparency *pFillTransparencies = NULL);
1095
1103 virtual void rowOfDotsProc(
1104 OdInt32 numPoints, const OdGePoint3d& startPoint, const OdGeVector3d& dirToNextPoint) = 0;
1105
1106 void pointCloudProc2(OdGiConveyorContext* pContext, const OdGiPointCloud &pCloud, const OdGiPointCloudFilter *pFilter);
1107 virtual void pointCloudProc(const OdGiPointCloud &pCloud, const OdGiPointCloudFilter *pFilter = NULL) = 0;
1108
1115 virtual void edgeProc(
1116 const OdGiEdge2dArray& edges, const OdGeMatrix3d* pXform = 0) = 0;
1117};
1118
1119#endif //#ifndef __ODGICONVEYORGEOMETRY_H__
#define ODA_FAIL()
Definition DebugStuff.h:88
#define ODGI_EXPORT
Definition GiExport.h:35
OdGiArcType
Definition GiGeometry.h:877
@ kOdGiArcSimple
Definition GiGeometry.h:878
OdArray< OdGeCurve2d *, OdMemoryAllocator< OdGeCurve2d * > > OdGiEdge2dArray
Definition GiGeometry.h:51
ptrdiff_t OdGsMarker
unsigned int OdUInt32
int OdInt32
unsigned char OdUInt8
wchar_t OdChar
virtual const OdGsView * gsView() const =0
virtual const OdGiDrawableDesc * currentDrawableDesc() const =0
virtual OdGiContext & giContext() const =0
virtual const OdGiDeviation & worldDeviation() const =0
virtual void onTextProcessing(const OdGePoint3d &, const OdGeVector3d &, const OdGeVector3d &)
virtual OdUInt32 drawContextFlags() const
virtual OdGeMatrix3d getWorldToModelTransform() const =0
virtual const OdGiSubEntityTraitsData & effectiveTraits() const =0
virtual const OdGiDeviation & modelDeviation() const =0
virtual void setEffectiveTraits(const OdGiSubEntityTraitsData &traits, const OdGeVector3d *fillNormal=NULL)=0
virtual bool effectivelyVisible() const
virtual const OdGiPathNode * currentGiPath() const =0
virtual const OdGiDrawable * currentDrawable() const =0
virtual OdGiSubEntityTraits & subEntityTraits() const =0
virtual const OdGiDeviation & eyeDeviation() const =0
virtual bool regenAbort() const =0
virtual void onTraitsModified()=0
virtual const OdGiLineweightOverride * currentLineweightOverride() const
virtual OdGeMatrix3d getModelToWorldTransform() const =0
virtual double annotationScale() const
virtual const OdGiViewport * giViewport() const =0
void onTextProcessing(const OdGePoint3d &position, const OdGeVector3d &direction, const OdGeVector3d &upVector)
void setEffectiveTraits(const OdGiSubEntityTraitsData &traits, const OdGeVector3d *fillNormal=NULL)
const OdGiLineweightOverride * currentLineweightOverride() const
const OdGiPathNode * currentGiPath() const
OdGeMatrix3d getModelToWorldTransform() const
OdGeMatrix3d getWorldToModelTransform() const
void setOriginalContext(OdGiConveyorContext *pCtx)
const OdGsView * gsView() const
const OdGiSubEntityTraitsData & effectiveTraits() const
OdGiSubEntityTraits & subEntityTraits() const
OdGiConveyorContextWrapper(OdGiConveyorContext *pCtx=NULL)
OdGiContext & giContext() const
const OdGiViewport * giViewport() const
const OdGiDeviation & eyeDeviation() const
OdGiConveyorContext * getOriginalContext() const
const OdGiDrawableDesc * currentDrawableDesc() const
const OdGiDeviation & worldDeviation() const
const OdGiDrawable * currentDrawable() const
const OdGiDeviation & modelDeviation() const
OdGiConveyorContext * m_pCtx
virtual void circularArcProc(const OdGePoint3d &firstPoint, const OdGePoint3d &secondPoint, const OdGePoint3d &thirdPoint, OdGiArcType arcType=kOdGiArcSimple, const OdGeVector3d *pExtrusion=0)=0
void polyPolygonProc2(OdGiConveyorContext *pContext, OdUInt32 numIndices, const OdUInt32 *pNumPositions, const OdGePoint3d *pPositions, const OdUInt32 *pNumPoints, const OdGePoint3d *pPoints, const OdCmEntityColor *pOutlineColors=NULL, const OdUInt32 *pOutlinePsLinetypes=NULL, const OdCmEntityColor *pFillColors=NULL, const OdCmTransparency *pFillTransparencies=NULL)
virtual void plineProc(const OdGiPolyline &polyline, const OdGeMatrix3d *pXfm=0, OdUInt32 fromIndex=0, OdUInt32 numSegs=0)=0
virtual void shellProc(OdInt32 numVertices, const OdGePoint3d *vertexList, OdInt32 faceListSize, const OdInt32 *faceList, const OdGiEdgeData *pEdgeData=0, const OdGiFaceData *pFaceData=0, const OdGiVertexData *pVertexData=0)=0
virtual 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)=0
virtual void edgeProc(const OdGiEdge2dArray &edges, const OdGeMatrix3d *pXform=0)=0
virtual void xlineProc(const OdGePoint3d &firstPoint, const OdGePoint3d &secondPoint)=0
virtual void ellipArcProc(const OdGeEllipArc3d &ellipArc, const OdGePoint3d *endPointOverrides=0, OdGiArcType arcType=kOdGiArcSimple, const OdGeVector3d *pExtrusion=0)=0
virtual void polylineProc(OdInt32 numPoints, const OdGePoint3d *vertexList, const OdGeVector3d *pNormal=0, const OdGeVector3d *pExtrusion=0, OdGsMarker baseSubEntMarker=-1)=0
virtual void shapeProc(const OdGePoint3d &position, const OdGeVector3d &direction, const OdGeVector3d &upVector, int shapeNumber, const OdGiTextStyle *pTextStyle, const OdGeVector3d *pExtrusion=0)=0
virtual 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)=0
virtual void rayProc(const OdGePoint3d &basePoint, const OdGePoint3d &throughPoint)=0
virtual void circleProc(const OdGePoint3d &firstPoint, const OdGePoint3d &secondPoint, const OdGePoint3d &thirdPoint, const OdGeVector3d *pExtrusion=0)=0
virtual void xlineProc2(const OdGePoint3d &basePoint, const OdGeVector3d &direction)
virtual bool ttfCharProc(OdChar, bool, const OdGePoint3d &, const OdGeBoundBlock3d *)
virtual void ttfPolyDrawProc(OdInt32 numVertices, const OdGePoint3d *vertexList, OdInt32 faceListSize, const OdInt32 *faceList, const OdUInt8 *, const OdGiFaceData *pFaceData=0)
virtual void textProc2(const OdGePoint3d &position, const OdGeVector3d &direction, const OdGeVector3d &upVector, const OdChar *msg, OdInt32 numBytes, bool raw, const OdGiTextStyle *pTextStyle, const OdGeVector3d *pExtrusion=0, const OdGeExtents3d *=0)
virtual void rowOfDotsProc(OdInt32 numPoints, const OdGePoint3d &startPoint, const OdGeVector3d &dirToNextPoint)=0
virtual void circularArcProc(const OdGePoint3d &center, double radius, const OdGeVector3d &normal, const OdGeVector3d &startVector, double sweepAngle, OdGiArcType arcType=kOdGiArcSimple, const OdGeVector3d *pExtrusion=0)=0
virtual void conveyorBoundaryInfoProc(const OdGeBoundBlock3d &, OdUInt32 &)
virtual void circleProc(const OdGePoint3d &center, double radius, const OdGeVector3d &normal, const OdGeVector3d *pExtrusion=0)=0
virtual void circleProc2(const OdGePoint3d &center, double radius, const OdGeVector3d &normal, const OdGeVector3d &, const OdGeVector3d *pExtrusion=0)
virtual void polygonProc(OdInt32 numPoints, const OdGePoint3d *vertexList, const OdGeVector3d *pNormal=0, const OdGeVector3d *pExtrusion=0)=0
void polypointProc2(OdGiConveyorContext *pContext, OdInt32 numPoints, const OdGePoint3d *vertexList, const OdCmEntityColor *pColors=0, const OdCmTransparency *pTransparency=0, const OdGeVector3d *pNormals=0, const OdGeVector3d *pExtrusions=0, const OdGsMarker *pSubEntMarkers=0, OdInt32 nPointSize=0)
void pointCloudProc2(OdGiConveyorContext *pContext, const OdGiPointCloud &pCloud, const OdGiPointCloudFilter *pFilter)
virtual int ttfCharProcFlags() const
virtual void nurbsProc(const OdGeNurbCurve3d &nurbsCurve)=0
virtual void metafileProc(const OdGePoint3d &origin, const OdGeVector3d &u, const OdGeVector3d &v, const OdGiMetafile *pMetafile, bool dcAligned=true, bool allowClipping=false)=0
virtual void rayProc2(const OdGePoint3d &basePoint, const OdGeVector3d &direction)
virtual void textProc(const OdGePoint3d &position, const OdGeVector3d &direction, const OdGeVector3d &upVector, const OdChar *msg, OdInt32 numBytes, bool raw, const OdGiTextStyle *pTextStyle, const OdGeVector3d *pExtrusion=0)=0
virtual void meshProc(OdInt32 numRows, OdInt32 numColumns, const OdGePoint3d *vertexList, const OdGiEdgeData *pEdgeData=0, const OdGiFaceData *pFaceData=0, const OdGiVertexData *pVertexData=0)=0
virtual void pointCloudProc(const OdGiPointCloud &pCloud, const OdGiPointCloudFilter *pFilter=NULL)=0
virtual void setExtentsProc(const OdGePoint3d *, bool=true)
void rowOfDotsProc2(OdInt32 numPoints, const OdGePoint3d &startPoint, const OdGeVector3d &dirToNextPoint)
Definition Gs.h:141
const GLfloat * v
Definition gles2_ext.h:315