CFx SDK Documentation  2023 SP0
Static Public Member Functions | List of all members
AECGe::MeshTools Class Reference

DOM. More...

#include <AECMeshTools.h>

Static Public Member Functions

static void CreateBox (const OdGePoint3d &ptMin, const OdGePoint3d &ptMax, Mesh &mResult, bool bVerify=false)
 
static void CreatePyramid (const FacetModeler::Contour3D &rBase, const OdGePoint3d &ptTop, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void CreateExtrude (const FacetModeler::Contour3D &rBase, const OdGeVector3d &vDirection, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void CreateExtrude (const FacetModeler::Profile3D &rBase, const OdGeVector3d &vDirection, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void CreateExtrudeEx (const FacetModeler::Profile3D &rBase, const FacetModeler::Contour3D &rPath, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void CreateExtrudeEx (const FacetModeler::Profile2D &rBase, const OdGePoint3dArray &aPath, const OdGeVector3d &vNormal, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void CreateRevolution (const FacetModeler::Profile2D &rBase, double dRadius, double dHeight, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void CreateByProfile (const FacetModeler::Profile2D &rProfile, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void CreateByTwoContours (const FacetModeler::Contour3D &rContour1, const FacetModeler::Contour3D &rContour2, Mesh &mResult, bool bVerify=false)
 
static void CutWithInfExtrude (const Mesh &mSource, const FacetModeler::Profile3D &rBase, bool bInside, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void CutWithExtrude (const Mesh &mSource, const FacetModeler::Profile3D &rBase, bool bInside, double dExtrudeDepth, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void Cut (const Mesh &mSource, const OdGePlane &pPlane, FacetModeler::Profile3D &rResult, bool bIncludeBoundary=true)
 
static void Cut (const Mesh &mSource, const FacetModeler::Contour2D &cCutLine, const OdGePlane &pProjectOn, FacetModeler::Profile3D &rResult, bool bIncludeBoundary=true)
 DOM. More...
 
static void CutWithPlane (const Mesh &mSource, const OdGePlane &pPlane, Mesh *pOutside=0, Mesh *pInside=0)
 
static void GetInsideFrame (const FacetModeler::Contour3D &rContour, double dFrameWidth, double dFrameDepth, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void GetInsideFrame (const FacetModeler::Profile3D &rProfile, double dFrameWidth, double dFrameDepth, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void GetInsideBody (const FacetModeler::Contour3D &rContour, double dFrameDepth, double dFrameOrigin, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void GetInsideBody (const FacetModeler::Profile3D &rProfile, double dFrameDepth, double dFrameOrigin, Mesh &mResult, const FacetModeler::DeviationParams &devDeviation=FacetModeler::FMGeGbl::gDefDev)
 
static void ConvertFromObject (const OdDbObjectId &idEntity, Mesh &mResult)
 
static void AffectVisibilities (const std::vector< OdGeLineSeg3d > &aInvisibleSegments, Mesh &mMesh)
 
static void GetVisibleSilhouettes (const Mesh &mBody, const OdGeVector3d &vViewDirection, std::vector< OdUInt32 > &aVisible)
 

Detailed Description

DOM.

Definition at line 54 of file AECMeshTools.h.

Member Function Documentation

◆ AffectVisibilities()

static void AECGe::MeshTools::AffectVisibilities ( const std::vector< OdGeLineSeg3d > &  aInvisibleSegments,
Mesh mMesh 
)
static

Method makes mesh edges that lie on specified 3D segments invisible.

Parameters
aInvisibleSegments[in] Array of 3D segments.
mMesh[in] Mesh to affect.

◆ ConvertFromObject()

static void AECGe::MeshTools::ConvertFromObject ( const OdDbObjectId idEntity,
Mesh mResult 
)
static

Tries to create a mesh from standard ACAD object's geometry.

Parameters
idEntity[in] Object ID of ACAD entity to convert geometry from.
mResult[out] Result.
Remarks
Currently works for the following entities: OdDb3dSolid

◆ CreateBox()

static void AECGe::MeshTools::CreateBox ( const OdGePoint3d ptMin,
const OdGePoint3d ptMax,
Mesh mResult,
bool  bVerify = false 
)
static

Creates a box.

Parameters
ptMin[in] The lower boundary of the box.
ptMax[in] The upper boundary of the box.
mResult[out] Result.
bVerify[in] If true forces the result to be inverted if its volume is negative.

◆ CreateByProfile()

static void AECGe::MeshTools::CreateByProfile ( const FacetModeler::Profile2D rProfile,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Creates mesh by profile.

Parameters
rProfile[in] Profile.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ CreateByTwoContours()

static void AECGe::MeshTools::CreateByTwoContours ( const FacetModeler::Contour3D rContour1,
const FacetModeler::Contour3D rContour2,
Mesh mResult,
bool  bVerify = false 
)
static

Creates mesh by two contours with same topology.

Parameters
cContour1[in] Start boundary.
cContour2[in] End boundary.
mResult[out] Result.
bVerify[in] If true forces the result to be inverted if its volume is negative. More stable variant but slows down the performance.
Remarks
Arc segments are considered as linear.

By default this method doesn't preserve mesh volume to be positive.

◆ CreateExtrude() [1/2]

static void AECGe::MeshTools::CreateExtrude ( const FacetModeler::Contour3D rBase,
const OdGeVector3d vDirection,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Creates an extrude.

Parameters
rBase[in] Extrude base.
vDirection[in] Extrude direction.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ CreateExtrude() [2/2]

static void AECGe::MeshTools::CreateExtrude ( const FacetModeler::Profile3D rBase,
const OdGeVector3d vDirection,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Creates an extrude.

Parameters
rBase[in] Extrude base.
vDirection[in] Extrude direction.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ CreateExtrudeEx() [1/2]

static void AECGe::MeshTools::CreateExtrudeEx ( const FacetModeler::Profile2D rBase,
const OdGePoint3dArray aPath,
const OdGeVector3d vNormal,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Creates extrude along 3D path.

Parameters
rBase[in] Extrude base.
aPath[in] Extrude path.
vNormal[in] The vector to aling Y axis of the base profile with.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ CreateExtrudeEx() [2/2]

static void AECGe::MeshTools::CreateExtrudeEx ( const FacetModeler::Profile3D rBase,
const FacetModeler::Contour3D rPath,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Creates extrude along 2D path.

Parameters
rBase[in] Extrude base.
rPath[in] Extrude path.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ CreatePyramid()

static void AECGe::MeshTools::CreatePyramid ( const FacetModeler::Contour3D rBase,
const OdGePoint3d ptTop,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Creates a pyramid.

Parameters
rBase[in] Pyramid base.
ptTop[in] Top point of the pyramid.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ CreateRevolution()

static void AECGe::MeshTools::CreateRevolution ( const FacetModeler::Profile2D rBase,
double  dRadius,
double  dHeight,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Creates revolution.

Parameters
rBase[in] Base.
dRadius[in] Radius of revolution path.
dHeight[in] Height.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ Cut() [1/2]

static void AECGe::MeshTools::Cut ( const Mesh mSource,
const FacetModeler::Contour2D cCutLine,
const OdGePlane pProjectOn,
FacetModeler::Profile3D rResult,
bool  bIncludeBoundary = true 
)
static

DOM.

◆ Cut() [2/2]

static void AECGe::MeshTools::Cut ( const Mesh mSource,
const OdGePlane pPlane,
FacetModeler::Profile3D rResult,
bool  bIncludeBoundary = true 
)
static

Cuts mesh with a plane.

Parameters
mSource[in] Mesh to be cut.
pPlane[in] Cutting plane.
cProfile[out] Result.

◆ CutWithExtrude()

static void AECGe::MeshTools::CutWithExtrude ( const Mesh mSource,
const FacetModeler::Profile3D rBase,
bool  bInside,
double  dExtrudeDepth,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Cuts mesh with extrude of specified depth.

Parameters
mSource[in] Mesh to be cut.
rBase[in] Cutting profile.
bInside[in] If true the inside part of mesh is considered as result.
dExtrudeDepth[in] The depth of extrusion. Extrusion is centered in the plane defined by rBase.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ CutWithInfExtrude()

static void AECGe::MeshTools::CutWithInfExtrude ( const Mesh mSource,
const FacetModeler::Profile3D rBase,
bool  bInside,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Cuts mesh with infinite extrude.

Parameters
mSource[in] Mesh to be cut.
rBase[in] Cutting profile.
bInside[in] If true the inside part of mesh is considered as result.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ CutWithPlane()

static void AECGe::MeshTools::CutWithPlane ( const Mesh mSource,
const OdGePlane pPlane,
Mesh pOutside = 0,
Mesh pInside = 0 
)
static

Cuts mesh with a plane.

Parameters
mSource[in] Mesh to cut.
pPlane[in] Cutting plane.
pOutside[out] Pointer to outside mesh.
pInside[out] Pointer to inside mesh.

◆ GetInsideBody() [1/2]

static void AECGe::MeshTools::GetInsideBody ( const FacetModeler::Contour3D rContour,
double  dFrameDepth,
double  dFrameOrigin,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Returns body with specified depth and origin measured along z axis.

Parameters
rContour[in] Base contour.
dFrameDepth[in] Body depth.
dFrameOrigin[in] Origin on Z axis.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ GetInsideBody() [2/2]

static void AECGe::MeshTools::GetInsideBody ( const FacetModeler::Profile3D rProfile,
double  dFrameDepth,
double  dFrameOrigin,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Returns body with specified depth and origin measured along z axis.

Parameters
rProfile[in] Base profile.
dFrameDepth[in] Body depth.
dFrameOrigin[in] Origin on Z axis.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ GetInsideFrame() [1/2]

static void AECGe::MeshTools::GetInsideFrame ( const FacetModeler::Contour3D rContour,
double  dFrameWidth,
double  dFrameDepth,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Returns frame with specified boundary width and depth.

Parameters
rContour[in] Base contour.
dFrameWidth[in] Frame width.
dFrameDepth[in] Frame depth.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ GetInsideFrame() [2/2]

static void AECGe::MeshTools::GetInsideFrame ( const FacetModeler::Profile3D rProfile,
double  dFrameWidth,
double  dFrameDepth,
Mesh mResult,
const FacetModeler::DeviationParams devDeviation = FacetModeler::FMGeGbl::gDefDev 
)
static

Returns frame with specified boundary width and depth.

Parameters
rProfile[in] Base profile.
dFrameWidth[in] Frame width.
dFrameDepth[in] Frame depth.
mResult[out] Result.
devDeviation[in] Deviation parameters.

◆ GetVisibleSilhouettes()

static void AECGe::MeshTools::GetVisibleSilhouettes ( const Mesh mBody,
const OdGeVector3d vViewDirection,
std::vector< OdUInt32 > &  aVisible 
)
static

Returns visible silhouette edges.


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