CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
CFxRVTSimplifier Class Reference

#include <FxBIMRevitVectorizer.h>

Inheritance diagram for CFxRVTSimplifier:
OdGiGeometrySimplifier OdGiConveyorGeometry CFxRVTSimplifier2D

Classes

struct  STraits
 

Public Member Functions

 CFxRVTSimplifier ()
 
 ~CFxRVTSimplifier () override
 
virtual void SetView (OdGiBaseVectorizer *)
 
virtual void SetType (CFxBIMEntityGeometry::EType type)
 
virtual void SetDatabase (OdDbDatabase *pDwgDatabase)
 
virtual void SetBimEntity (CFxBIMEntityPtr pBimE)
 
- Public Member Functions inherited from OdGiGeometrySimplifier
 OdGiGeometrySimplifier ()
 
 ~OdGiGeometrySimplifier ()
 
void setDeviation (const OdGeDoubleArray &deviations)
 
void setDeviation (const OdGiDeviation *pDeviation)
 
OdGsView::RenderMode renderMode ()
 
void setDrawContext (OdGiConveyorContext *pDrawCtx)
 
OdGiConveyorContextdrawContext ()
 
const OdGiConveyorContextdrawContext () const
 
virtual void polylineOut (OdInt32 numPoints, const OdGePoint3d *vertexList)
 
virtual void polygonOut (OdInt32 numPoints, const OdGePoint3d *vertexList, const OdGeVector3d *pNormal=0)
 
void setVertexData (OdInt32 numVertices, const OdGePoint3d *vertexList, const OdGiVertexData *pVertexData=0)
 
OdInt32 vertexDataCount () const
 
const OdGePoint3dvertexDataList () const
 
const OdGiVertexDatavertexData () const
 
OdGsMarker baseSubEntMarker () const
 
OdGiVisibility polylineOutEdgeVisibility () const
 
virtual void plineProc (const OdGiPolyline &polyline, const OdGeMatrix3d *pXfm=0, OdUInt32 fromIndex=0, OdUInt32 numSegs=0)
 
virtual void polylineProc (OdInt32 numPoints, const OdGePoint3d *vertexList, const OdGeVector3d *pNormal=0, const OdGeVector3d *pExtrusion=0, OdGsMarker baseSubEntMarker=-1)
 
virtual void polygonProc (OdInt32 numPoints, const OdGePoint3d *vertexList, const OdGeVector3d *pNormal=0, const OdGeVector3d *pExtrusion=0)
 
virtual void xlineProc (const OdGePoint3d &firstPoint, const OdGePoint3d &secondPoint)
 
virtual void rayProc (const OdGePoint3d &basePoint, const OdGePoint3d &throughPoint)
 
virtual void generateMeshWires (OdInt32 numRows, OdInt32 numColumns, const OdGiEdgeData *pEdgeData, const OdGiFaceData *pFaceData)
 
virtual void generateMeshFaces (OdInt32 numRows, OdInt32 numColumns, const OdGiFaceData *pFaceData)
 
virtual void meshFaceOut (const OdInt32 *faceList, const OdGeVector3d *pNormal)
 
virtual void filledShellProc (const OdGePoint3d *vertexList, OdInt32 faceListSize, const OdInt32 *faceList, const OdGiEdgeData *pEdgeData=0, const OdGiFaceData *pFaceData=0)
 
virtual void generateShellWires (OdInt32 faceListSize, const OdInt32 *faceList, const OdGiEdgeData *pEdgeData=0, const OdGiFaceData *pFaceData=0)
 
virtual void generateShellFaces (OdInt32 faceListSize, const OdInt32 *faceList, const OdGiEdgeData *pEdgeData=0, const OdGiFaceData *pFaceData=0)
 
virtual void shellFaceOut (OdInt32 faceListSize, const OdInt32 *faceList, const OdGeVector3d *pNormal)
 
virtual void triangleOut (const OdInt32 *vertices, const OdGeVector3d *pNormal)
 
virtual void generateShellFacets (OdInt32 faceListSize, const OdInt32 *faceList, const OdGiFaceData *pFaceData=0, OdInt32 maxFacetSize=3)
 
virtual void facetOut (const OdInt32 *faceList, const OdInt32 *edgeIndices, const OdGeVector3d *pNormal)
 
virtual void circleProc (const OdGePoint3d &center, double radius, const OdGeVector3d &normal, const OdGeVector3d *pExtrusion=0)
 
void circleProc2 (const OdGePoint3d &center, double radius, const OdGeVector3d &normal, const OdGeVector3d &startVector, const OdGeVector3d *pExtrusion=0)
 
virtual void circleProc (const OdGePoint3d &firstPoint, const OdGePoint3d &secondPoint, const OdGePoint3d &thirdPoint, const OdGeVector3d *pExtrusion=0)
 
virtual void circularArcProc (const OdGePoint3d &center, double radius, const OdGeVector3d &normal, const OdGeVector3d &startVector, double sweepAngle, OdGiArcType arcType=kOdGiArcSimple, const OdGeVector3d *pExtrusion=0)
 
virtual void circularArcProc (const OdGePoint3d &firstPoint, const OdGePoint3d &secondPoint, const OdGePoint3d &thirdPoint, OdGiArcType arcType=kOdGiArcSimple, const OdGeVector3d *pExtrusion=0)
 
virtual void textProc (const OdGePoint3d &position, const OdGeVector3d &u, const OdGeVector3d &v, const OdChar *msg, OdInt32 length, bool raw, const OdGiTextStyle *pTextStyle, const OdGeVector3d *pExtrusion=0)
 
virtual void textProc2 (const OdGePoint3d &position, const OdGeVector3d &u, const OdGeVector3d &v, const OdChar *msg, OdInt32 length, bool raw, const OdGiTextStyle *pTextStyle, const OdGeVector3d *pExtrusion=0, const OdGeExtents3d *extentsBox=0)
 
virtual void shapeProc (const OdGePoint3d &position, const OdGeVector3d &direction, const OdGeVector3d &upVector, int shapeNumber, const OdGiTextStyle *pTextStyle, const OdGeVector3d *pExtrusion=0)
 
virtual void nurbsProc (const OdGeNurbCurve3d &nurbsCurve)
 
virtual void ellipArcProc (const OdGeEllipArc3d &ellipArc, const OdGePoint3d *endPointOverrides=0, OdGiArcType arcType=kOdGiArcSimple, const OdGeVector3d *pExtrusion=0)
 
virtual bool ellipArcProc (const OdGeEllipArc3d &ellipArc, double width)
 
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)
 
virtual void initTexture (const OdGePoint3d &origin, const OdGeVector3d &u, const OdGeVector3d &v, const OdGiRasterImage *pImage, bool transparency, double brightness, double contrast, double fade)
 
virtual void uninitTexture ()
 
virtual void metafileProc (const OdGePoint3d &origin, const OdGeVector3d &u, const OdGeVector3d &v, const OdGiMetafile *pMetafile, bool dcAligned=true, bool allowClipping=false)
 
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)
 
virtual void rowOfDotsProc (OdInt32 numPoints, const OdGePoint3d &startPoint, const OdGeVector3d &dirToNextPoint)
 
virtual void pointCloudProc (const OdGiPointCloud &pCloud, const OdGiPointCloudFilter *pFilter=NULL)
 
virtual void edgeProc (const OdGiEdge2dArray &edges, const OdGeMatrix3d *pXform=0)
 
virtual void polylineOut (OdInt32 numPoints, const OdInt32 *vertexIndexList)
 
void convertMeshToShell (OdInt32 rows, OdInt32 columns, const OdGePoint3d *pVertexList, const OdGiEdgeData *pEdgeData, const OdGiFaceData *pFaceData, const OdGiVertexData *pVertexData)
 
virtual void ttfPolyDrawProc (OdInt32 numVertices, const OdGePoint3d *vertexList, OdInt32 faceListSize, const OdInt32 *faceList, const OdUInt8 *pBezierTypes, const OdGiFaceData *pFaceData=0)
 
void subdivideShellByVertexLimit (OdInt32 numVertices, const OdGePoint3d *vertexList, OdInt32 faceListSize, const OdInt32 *faceList, const OdGiEdgeData *pEdgeData, const OdGiFaceData *pFaceData, const OdGiVertexData *pVertexData, OdUInt32 nLimit)
 
virtual bool generateShellFill (OdGiHatchPatternPtr pHatch, OdDouble &fillDensity, const OdGePoint3d *pVertexList, OdInt32 faceListSize, const OdInt32 *pFaceList, const OdGiFaceData *pFaceData=0, OdGiMapperItemEntry *pMapper=0)
 
- Public Member Functions inherited from OdGiConveyorGeometry
virtual ~OdGiConveyorGeometry ()
 
virtual void xlineProc2 (const OdGePoint3d &basePoint, const OdGeVector3d &direction)
 
virtual void rayProc2 (const OdGePoint3d &basePoint, const OdGeVector3d &direction)
 
virtual void setExtentsProc (const OdGePoint3d *, bool=true)
 
virtual int ttfCharProcFlags () const
 
virtual bool ttfCharProc (OdChar, bool, const OdGePoint3d &, const OdGeBoundBlock3d *)
 
virtual void conveyorBoundaryInfoProc (const OdGeBoundBlock3d &, OdUInt32 &)
 
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 rowOfDotsProc2 (OdInt32 numPoints, const OdGePoint3d &startPoint, const OdGeVector3d &dirToNextPoint)
 
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)
 
void pointCloudProc2 (OdGiConveyorContext *pContext, const OdGiPointCloud &pCloud, const OdGiPointCloudFilter *pFilter)
 

Protected Member Functions

virtual FxBIM::Geo::BodyDataGetBody ()
 
void meshProc (OdInt32 rows, OdInt32 columns, const OdGePoint3d *pVertexList, const OdGiEdgeData *pEdgeData=0, const OdGiFaceData *pFaceData=0, const OdGiVertexData *pVertexData=0) override
 
void shellProc (OdInt32 nbVertex, const OdGePoint3d *pVertexList, OdInt32 faceListSize, const OdInt32 *pFaceList, const OdGiEdgeData *pEdgeData=0, const OdGiFaceData *pFaceData=0, const OdGiVertexData *pVertexData=0) override
 
virtual STraits Traits ()
 
- Protected Member Functions inherited from OdGiGeometrySimplifier
void drawTypedArc (OdGiArcType arcType, const OdGePoint3d &center, OdGePoint3dArray &points, const OdGeVector3d *pNormal, const OdGeVector3d *pExtrusion)
 
double deviation (const OdGiDeviationType deviationType, const OdGePoint3d &pointOnCurve) const
 
bool fillMode ()
 
bool fillMode (bool &drawEdges)
 
bool fillMode (bool &drawEdges, bool &secColor)
 
bool circleArcFillMode ()
 
bool shmFillMode (bool &drawEdges)
 
bool shmFillMode (bool &drawEdges, bool &secColor)
 
bool processingText () const
 
bool silhouettesProcessingInEyeSpace () const
 
void enableSilhouettesProcessingInEyeSpace (bool bEnable)
 
OdGiContextgiCtx () const
 
virtual bool plineArcSegmentsAsArcProc (OdUInt32 drawContextFlags) const
 
bool jointLineWithArc (const OdGiPolyline &lwBuf, OdInt32 LineSegNo, OdInt32 ArcSegNo, OdGePoint3dArray &points)
 
bool jointLineWithLine (const OdGiPolyline &lwBuf, OdInt32 LineSegNo1, OdInt32 LineSegNo2, OdGePoint3dArray &points)
 
bool jointArcWithLine (const OdGiPolyline &lwBuf, OdGeCircArc2d &arc, OdInt32 arcSegNo, OdInt32 lineSegNo, OdGePoint3d &point1, OdGePoint3d &point2)
 
bool isMeshRequireVertexNormals (const OdGiVertexData *pVertexData)
 
void generateMeshVertexNormals (OdInt32 numRows, OdInt32 numCols, const OdGePoint3d *pVertexList, const OdGiVertexData *pVertexData, OdGiVertexData &vertexData, OdGeVector3dArray &normals)
 
void polylineOut (OdInt32 numPoints, const OdInt32 *vertexIndexList, const OdGiEdgeData *pEdgeData, OdInt32 nEdgeIndex)
 
OdGeLineSeg2dtmpLineSeg2d ()
 
OdGeLineSeg2dtmpLineSeg2dEx (int n)
 
OdGeLine2dtmpLine2dEx (int n)
 
OdGeCircArc2dtmpCircArc2d ()
 
OdGeCircArc3dtmpCircArc3d ()
 
OdGeEllipArc3dtmpEllipArc3d ()
 
OdGePoint3dArraytmpPoints3d (int nLevel)
 

Protected Attributes

std::unique_ptr< Impl > m_pImpl
 
- Protected Attributes inherited from OdGiGeometrySimplifier
OdGiConveyorContextm_pDrawCtx
 
OdGiSubEntityTraitsm_pTraits
 
OdGsMarker m_baseSubEntMarker
 
OdUInt32 m_simplFlags
 
const OdGiDeviationm_pDeviation
 
OdGeDoubleArray m_deviations
 
OdGsView::RenderMode m_renderMode
 
OdGeLineSeg2dm_pLineSeg2d
 
OdGeLineSeg2dm_pLineSeg2dEx [2]
 
OdGeLine2dm_pLine2dEx [4]
 
OdGeCircArc2dm_pCircArc2d
 
OdGeCircArc3dm_pCircArc3d
 
OdGeEllipArc3dm_pEllipArc3d
 

Additional Inherited Members

- Public Types inherited from OdGiConveyorGeometry
enum  ETtfCharProcFlags { kTtfCharProcEnable = 1 , kTtfCharProcBoundBlock = 2 }
 
enum  EConveyorBoundaryInfoFlags {
  kBoundaryProcXform = 1 , kBoundaryProcXformNonUni = 2 , kBoundaryProcProjection = 4 , kBoundaryProcClip = 8 ,
  kBoundaryProcClipFull = 16
}
 
- Protected Types inherited from OdGiGeometrySimplifier
enum  SimplifierFlags {
  kSimplProcessingText = (1 << 0) , kSimplFillModeDisabled = (1 << 1) , kSimplEyeSpaceSilhs = (1 << 2) , kSimplEdgeVisible = (1 << 3) ,
  kSimplEdgeSilhouette = (1 << 4) , kSimplEdgeJoint = (1 << 5) , kSimplNoFaceNormals = (1 << 6) , kSimplGenTrgNormals = (1 << 7) ,
  kSimplLastFlag = kSimplGenTrgNormals , kZInverted = (1 << 30) , kDiscardBackFaces = (1 << 31)
}
 

Detailed Description

Definition at line 32 of file FxBIMRevitVectorizer.h.

Constructor & Destructor Documentation

◆ CFxRVTSimplifier()

CFxRVTSimplifier::CFxRVTSimplifier ( )

◆ ~CFxRVTSimplifier()

CFxRVTSimplifier::~CFxRVTSimplifier ( )
override

Member Function Documentation

◆ GetBody()

virtual FxBIM::Geo::BodyData & CFxRVTSimplifier::GetBody ( )
protectedvirtual

◆ meshProc()

void CFxRVTSimplifier::meshProc ( OdInt32 numRows,
OdInt32 numColumns,
const OdGePoint3d * vertexList,
const OdGiEdgeData * pEdgeData = 0,
const OdGiFaceData * pFaceData = 0,
const OdGiVertexData * pVertexData = 0 )
overrideprotectedvirtual

Processes meshes.

Parameters
numRows[in] Number of rows.
numColumns[in] Number of columns.
vertexList[in] Array of vertices.
pEdgeData[in] Pointer to additional edge data.
pFaceData[in] Pointer to additional face data.
pVertexData[in] Pointer to additional vertex data.
Remarks
Client applications have the option of overriding this function to process the mesh data themselves. If the function is not overridden, the default implementation of this function processes the mesh into a set of facets. More specifically, the default meshProc function calls setVertexData, and the calls either generateMeshFaces for filled facets, or generateMeshWires for a wireframe.
See also
<link tv_geometry_meshes, Work with Meshes>

Reimplemented from OdGiGeometrySimplifier.

◆ SetBimEntity()

virtual void CFxRVTSimplifier::SetBimEntity ( CFxBIMEntityPtr pBimE)
virtual

◆ SetDatabase()

virtual void CFxRVTSimplifier::SetDatabase ( OdDbDatabase * pDwgDatabase)
virtual

◆ SetType()

virtual void CFxRVTSimplifier::SetType ( CFxBIMEntityGeometry::EType type)
virtual

◆ SetView()

virtual void CFxRVTSimplifier::SetView ( OdGiBaseVectorizer * )
virtual

◆ shellProc()

void CFxRVTSimplifier::shellProc ( OdInt32 numVertices,
const OdGePoint3d * vertexList,
OdInt32 faceListSize,
const OdInt32 * faceList,
const OdGiEdgeData * pEdgeData = 0,
const OdGiFaceData * pFaceData = 0,
const OdGiVertexData * pVertexData = 0 )
overrideprotectedvirtual

Processes shells.

Parameters
numVertices[in] Number of vertices.
vertexList[in] Array of vertices.
faceListSize[in] Number of entries in faceList.
faceList[in] Array of numbers that define the faces.
pEdgeData[in] Pointer to additional edge data.
pFaceData[in] Pointer to additional face data.
pVertexData[in] Pointer to additional vertex data.
Remarks
Client applications have the option of overriding this function to process the shell data themselves. If the function is not overridden, the default implementation of this function processes the shell into a set of facets. More specifically, the default shellProc function calls setVertexData, and the calls either generateShellFaces for filled facets, or generateShellWires for a wireframe.
See also
<link tv_geometry_shells, Work with Shells>

Reimplemented from OdGiGeometrySimplifier.

◆ Traits()

virtual STraits CFxRVTSimplifier::Traits ( )
protectedvirtual

Member Data Documentation

◆ m_pImpl

std::unique_ptr< Impl > CFxRVTSimplifier::m_pImpl
protected

Definition at line 64 of file FxBIMRevitVectorizer.h.


The documentation for this class was generated from the following file: