CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
GiConveyorGeometry.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#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 };
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
335
343
350 const OdGeVector3d* fillNormal = NULL) { m_pCtx->setEffectiveTraits(traits, fillNormal); }
351
358 bool effectivelyVisible() const { return m_pCtx->effectivelyVisible(); }
359
370
381
388 const OdGiViewport* giViewport() const { return m_pCtx->giViewport(); }
389
398 const OdGsView* gsView() const { return m_pCtx->gsView(); }
399
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
479
490
498
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) && (_MSC_VER >= 1400)
560#pragma warning (push)
561#pragma warning (disable: 4481) // Non-standard extension used
562
563// The right function prototype was changed (see above). Old one left to cause compilation error
564 virtual void polylineProc(
565 OdInt32 /*numPoints*/, const OdGePoint3d* /*vertexList*/,
566 const OdGeVector3d* /*pNormal*/,
567 const OdGeVector3d* /*pExtrusion*/,
568 OdInt32 /*baseSubEntMarker*/) sealed {ODA_FAIL();}
569#pragma warning (pop)
570#endif
571
585 virtual void polygonProc(
586 OdInt32 numPoints, const OdGePoint3d* vertexList,
587 const OdGeVector3d* pNormal = 0,
588 const OdGeVector3d* pExtrusion = 0) = 0;
589
600 virtual void xlineProc(
601 const OdGePoint3d& firstPoint, const OdGePoint3d& secondPoint) = 0;
602
615 virtual void rayProc(
616 const OdGePoint3d& basePoint, const OdGePoint3d& throughPoint) = 0;
617
636 virtual void meshProc(
637 OdInt32 numRows,
638 OdInt32 numColumns,
639 const OdGePoint3d* vertexList,
640 const OdGiEdgeData* pEdgeData = 0,
641 const OdGiFaceData* pFaceData = 0,
642 const OdGiVertexData* pVertexData = 0) = 0;
643
660 virtual void shellProc(
661 OdInt32 numVertices, const OdGePoint3d* vertexList,
662 OdInt32 faceListSize, const OdInt32* faceList,
663 const OdGiEdgeData* pEdgeData = 0,
664 const OdGiFaceData* pFaceData = 0,
665 const OdGiVertexData* pVertexData = 0) = 0;
666
679 virtual void circleProc(
680 const OdGePoint3d& center,
681 double radius,
682 const OdGeVector3d& normal,
683 const OdGeVector3d* pExtrusion = 0) = 0;
684
698 virtual void circleProc2(
699 const OdGePoint3d& center,
700 double radius,
701 const OdGeVector3d& normal,
702 const OdGeVector3d& /*startVector*/,
703 const OdGeVector3d* pExtrusion = 0)
704 {
705 circleProc(center, radius, normal, pExtrusion);
706 }
707
721 virtual void circleProc(
722 const OdGePoint3d& firstPoint,
723 const OdGePoint3d& secondPoint,
724 const OdGePoint3d& thirdPoint,
725 const OdGeVector3d* pExtrusion = 0) = 0;
726
755 virtual void circularArcProc(
756 const OdGePoint3d& center,
757 double radius,
758 const OdGeVector3d& normal,
759 const OdGeVector3d& startVector,
760 double sweepAngle,
761 OdGiArcType arcType = kOdGiArcSimple, const OdGeVector3d* pExtrusion = 0) = 0;
762
778 virtual void circularArcProc(
779 const OdGePoint3d& firstPoint,
780 const OdGePoint3d& secondPoint,
781 const OdGePoint3d& thirdPoint,
782 OdGiArcType arcType = kOdGiArcSimple, const OdGeVector3d* pExtrusion = 0) = 0;
783
806 virtual void ellipArcProc(
807 const OdGeEllipArc3d& ellipArc,
808 const OdGePoint3d* endPointOverrides = 0,
809 OdGiArcType arcType = kOdGiArcSimple, const OdGeVector3d* pExtrusion = 0) = 0;
810
817 virtual void nurbsProc(
818 const OdGeNurbCurve3d& nurbsCurve) = 0;
819
837 virtual void textProc(
838 const OdGePoint3d& position,
839 const OdGeVector3d& direction,
840 const OdGeVector3d& upVector,
841 const OdChar* msg,
842 OdInt32 numBytes,
843 bool raw,
844 const OdGiTextStyle* pTextStyle,
845 const OdGeVector3d* pExtrusion = 0) = 0;
846
864 virtual void textProc2(
865 const OdGePoint3d& position,
866 const OdGeVector3d& direction,
867 const OdGeVector3d& upVector,
868 const OdChar* msg,
869 OdInt32 numBytes,
870 bool raw,
871 const OdGiTextStyle* pTextStyle,
872 const OdGeVector3d* pExtrusion = 0,
873 const OdGeExtents3d* /*extentsBox*/ = 0)
874 {
875 textProc(position, direction, upVector, msg, numBytes, raw, pTextStyle, pExtrusion);
876 }
877
891 virtual void shapeProc(
892 const OdGePoint3d& position,
893 const OdGeVector3d& direction,
894 const OdGeVector3d& upVector,
895 int shapeNumber,
896 const OdGiTextStyle* pTextStyle,
897 const OdGeVector3d* pExtrusion = 0) = 0;
898
915 virtual void rasterImageProc(
916 const OdGePoint3d& origin,
917 const OdGeVector3d& u,
918 const OdGeVector3d& v,
919 const OdGiRasterImage* pImage,
920 const OdGePoint2d* uvBoundary,
921 OdUInt32 numBoundPts,
922 bool transparency = false,
923 double brightness = 50.0,
924 double contrast = 50.0,
925 double fade = 0.0) = 0;
926
937 virtual void metafileProc(
938 const OdGePoint3d& origin,
939 const OdGeVector3d& u,
940 const OdGeVector3d& v,
941 const OdGiMetafile* pMetafile,
942 bool dcAligned = true,
943 bool allowClipping = false) = 0;
944
955 virtual void xlineProc2(const OdGePoint3d& basePoint, const OdGeVector3d& direction)
956 {
957 xlineProc(basePoint, basePoint + direction);
958 }
959
972 virtual void rayProc2(const OdGePoint3d& basePoint, const OdGeVector3d& direction)
973 {
974 rayProc(basePoint, basePoint + direction);
975 }
976
980 virtual void setExtentsProc(const OdGePoint3d * /*pPoints*/, bool /*bTransform*/ = true) { }
981
986 {
987 kTtfCharProcEnable = 1,
988 kTtfCharProcBoundBlock = 2
989 };
990
997 virtual int ttfCharProcFlags() const { return 0; }
998 virtual bool ttfCharProc(OdChar /*character*/, bool /*isGlyph*/, const OdGePoint3d& /*position*/,
999 const OdGeBoundBlock3d* /*pBoundBlock*/) { return false; }
1000
1014 virtual void ttfPolyDrawProc(
1015 OdInt32 numVertices, const OdGePoint3d* vertexList,
1016 OdInt32 faceListSize, const OdInt32* faceList,
1017 const OdUInt8* /*pBezierTypes*/, const OdGiFaceData* pFaceData = 0)
1018 {
1019 shellProc(numVertices, vertexList, faceListSize, faceList, 0, pFaceData);
1020 }
1021
1023 {
1024 kBoundaryProcXform = 1, // Non-identity Xform available at least once
1025 kBoundaryProcXformNonUni = 2, // Non-uni-scale Xform available at least once
1026 kBoundaryProcProjection = 4, // Projective Xform available at least once
1027 kBoundaryProcClip = 8, // Boundary clipped partially or completely at least once
1028 kBoundaryProcClipFull = 16 // Boundary completely clipped at least once
1031 const OdGeBoundBlock3d & /*boundBlock*/, // {I} represent block for apply check
1032 OdUInt32 & /*outputFlags*/) // {O} will represent set of EConveyorBoundaryInfoFlags flags on out
1033 {
1034 }
1035
1050 OdInt32 numPoints, const OdGePoint3d* vertexList, const OdCmEntityColor* pColors = 0,
1051 const OdCmTransparency *pTransparency = 0, const OdGeVector3d* pNormals = 0, const OdGeVector3d* pExtrusions = 0,
1052 const OdGsMarker* pSubEntMarkers = 0, OdInt32 nPointSize = 0);
1053
1061 void rowOfDotsProc2(OdInt32 numPoints, const OdGePoint3d& startPoint, const OdGeVector3d& dirToNextPoint);
1062
1074 virtual void polypointProc(
1075 OdInt32 numPoints, const OdGePoint3d* vertexList, const OdCmEntityColor* pColors,
1076 const OdCmTransparency* pTransparency = 0, const OdGeVector3d* pNormals = 0, const OdGeVector3d* pExtrusions = 0,
1077 const OdGsMarker* pSubEntMarkers = 0, OdInt32 nPointSize = 0) = 0;
1078
1094 OdUInt32 numIndices, const OdUInt32 *pNumPositions, const OdGePoint3d *pPositions,
1095 const OdUInt32 *pNumPoints, const OdGePoint3d *pPoints,
1096 const OdCmEntityColor *pOutlineColors = NULL, const OdUInt32 *pOutlinePsLinetypes = NULL,
1097 const OdCmEntityColor *pFillColors = NULL, const OdCmTransparency *pFillTransparencies = NULL);
1098
1106 virtual void rowOfDotsProc(
1107 OdInt32 numPoints, const OdGePoint3d& startPoint, const OdGeVector3d& dirToNextPoint) = 0;
1108
1109 void pointCloudProc2(OdGiConveyorContext* pContext, const OdGiPointCloud &pCloud, const OdGiPointCloudFilter *pFilter);
1110 virtual void pointCloudProc(const OdGiPointCloud &pCloud, const OdGiPointCloudFilter *pFilter = NULL) = 0;
1111
1118 virtual void edgeProc(
1119 const OdGiEdge2dArray& edges, const OdGeMatrix3d* pXform = 0) = 0;
1120};
1121
1122#endif //#ifndef __ODGICONVEYORGEOMETRY_H__
#define ODA_FAIL()
Definition: DebugStuff.h:88
#define ODGI_EXPORT
Definition: GiExport.h:35
OdGiArcType
Definition: GiGeometry.h:787
@ kOdGiArcSimple
Definition: GiGeometry.h:788
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:140
const GLfloat * v
Definition: gles2_ext.h:315