CFx SDK Documentation  2020SP3
Public Member Functions | Protected Member Functions | List of all members
OdIfc::OdIfcModelerGeometry Class Referenceabstract

#include <IfcModelerGeometry.h>

Inheritance diagram for OdIfc::OdIfcModelerGeometry:
OdRxObject

Public Member Functions

virtual bool draw (OdGiWorldDraw *pWd) const =0
 
virtual void transform (const OdGeMatrix3d &m)=0
 
virtual OdResult getBoundingBox (OdGeExtents3d &box) const =0
 
virtual OdResult copyBody (OdIfcModelerGeometryPtr b)=0
 
virtual OdResult boolean (OdIfcHalfSpaceSolidPtr tool)=0
 
virtual OdResult boolean (OdIfcModelerGeometryPtr tool, IfcBooleanOperator op, IfcModelerKeep keep=kBoth)=0
 
virtual OdResult boolean (OdIfcModelerGeometryPtr tool, OdIfcModelerGeometryPtr blank, IfcBooleanOperator op, IfcModelerKeep keep=kBoth)=0
 
virtual OdResult extrude (OdIfcProfileDefPtr profile, OdGeVector3d dir)=0
 
virtual OdResult revolve (OdIfcProfileDefPtr profile, const OdGeVector3d &axisOfRevolution, const OdGePoint3d &axisPosition, double startAng, double endAng)=0
 
virtual OdResult createFacetedBrep (OdIfcConnectedFaceSetPtr pFaceSet)=0
 
virtual OdResult createAdvancedBrep (OdIfcAdvancedBrepPtr pBrep)=0
 
virtual OdResult box (const OdGePoint3d &ptOrigin, const OdGeVector3d &vSizes)=0
 
virtual void setDeviationParams (const OdIfcDeviationParams &params)=0
 
virtual OdIBrFile * brep () const =0
 
- Public Member Functions inherited from OdRxObject
 ODRX_HEAP_OPERATORS ()
 
 OdRxObject ()
 
virtual ~OdRxObject ()
 
virtual OdRxObjectqueryX (const OdRxClass *pClass) const
 
virtual OdRxObjectx (const OdRxClass *pClass) const
 
virtual OdRxClassisA () const
 
virtual void addRef ()=0
 
virtual void release ()=0
 
virtual long numRefs () const
 
bool isKindOf (const OdRxClass *pClass) const
 
virtual OdRxObjectPtr clone () const
 
virtual OdRx::Ordering comparedTo (const OdRxObject *pOther) const
 
virtual bool isEqualTo (const OdRxObject *pOther) const
 

Protected Member Functions

virtual voidbody ()=0
 
void copyFrom (const OdRxObject *)=0
 

Additional Inherited Members

- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 

Detailed Description

Definition at line 94 of file IfcModelerGeometry.h.

Member Function Documentation

◆ body()

virtual void* OdIfc::OdIfcModelerGeometry::body ( )
protectedpure virtual

◆ boolean() [1/3]

virtual OdResult OdIfc::OdIfcModelerGeometry::boolean ( OdIfcHalfSpaceSolidPtr  tool)
pure virtual

Creates half space solid and stores it in IfcModelerGeometry.

Parameters
tool[in] Tool operand.
Returns
Returns result code, eOk if all right, eNullEntityPointer if tool has illegal type, IfcModelerGeometry body is NULL or surface defining side of half space is NULL. Returns eGeneralModelingFailure in other cases.

◆ boolean() [2/3]

virtual OdResult OdIfc::OdIfcModelerGeometry::boolean ( OdIfcModelerGeometryPtr  tool,
IfcBooleanOperator  op,
IfcModelerKeep  keep = kBoth 
)
pure virtual

Performs boolean operation between currently stored body and tool and stores the result body in this IfcModelerGeometry instead of currently stored body.

Parameters
tool[in] Tool operand.
op[in] Boolean operation type.
keep[in] Determines which operands should stay unchanged.
Returns
Returns result code, eOk if all right, eIllegalEntityType if operands have illegal type or eGeneralModelingFailure in other cases.

◆ boolean() [3/3]

virtual OdResult OdIfc::OdIfcModelerGeometry::boolean ( OdIfcModelerGeometryPtr  tool,
OdIfcModelerGeometryPtr  blank,
IfcBooleanOperator  op,
IfcModelerKeep  keep = kBoth 
)
pure virtual

Performs boolean operation and stores it into IfcModelerGeometry.

Parameters
tool[in] Tool operand.
blank[in] Blank operand.
op[in] Boolean operation type.
keep[in] Determines which operands should stay unchanged.
Returns
Returns result code, eOk if all right, eIllegalEntityType if operands have illegal type or eGeneralModelingFailure in other cases.

◆ box()

virtual OdResult OdIfc::OdIfcModelerGeometry::box ( const OdGePoint3d ptOrigin,
const OdGeVector3d vSizes 
)
pure virtual

Creates box body in IfcModelerGeometry.

Parameters
ptOrigin[in] Position of box.
vSizes[in] Three box sizes.
Returns
Returns result code, eOk if all right.

◆ brep()

virtual OdIBrFile* OdIfc::OdIfcModelerGeometry::brep ( ) const
pure virtual

Gets OdBrFile interface from IfcModelerGeometry.

Returns
Returns OdIBrFile interface.

◆ copyBody()

virtual OdResult OdIfc::OdIfcModelerGeometry::copyBody ( OdIfcModelerGeometryPtr  b)
pure virtual

Copies body and stores it in IfcModelerGeometry.

Parameters
b[in] Source IfcModelerGeometry.
Returns
Returns result code, eOk if all right, eNullEntityPointer if source is NULL or eIllegalEntityType if source is not kind of IfcModelerGeometry

◆ copyFrom()

void OdIfc::OdIfcModelerGeometry::copyFrom ( const OdRxObject pSource)
protectedpure virtual

details Copies the contents of the specified object into this object.

Parameters
pSource[in] Pointer to the source object.
Remarks
The default implementation of this function does nothing but throw an eNotApplicable exception.

Throws: eNotApplicable Exception

Reimplemented from OdRxObject.

◆ createAdvancedBrep()

virtual OdResult OdIfc::OdIfcModelerGeometry::createAdvancedBrep ( OdIfcAdvancedBrepPtr  pBrep)
pure virtual

Creates OdBrFile from IfcAdvnacedBrep and stores it into IfcModelerGeometry.

Parameters
pBrep[in] IfcAdvancedBrep entity.
Returns
Returns result code:
  • eOk if all right;
  • eWrongObjectType if getting attribute is faidled;
  • eNullObjectPointer if IfcAdvancedBrep or sub entity has unsupported type;
  • eEmptySet if IfcAdvancedBrep or sub entity has empty set;
  • eGeneralModelingFailure in other cases.

◆ createFacetedBrep()

virtual OdResult OdIfc::OdIfcModelerGeometry::createFacetedBrep ( OdIfcConnectedFaceSetPtr  pFaceSet)
pure virtual

Creates faceted body and stores it in IfcModelerGeometry.

Parameters
pFaceSet[in] Set of faces for body.
Returns
Returns result code, eOk if all right, eInvalidInput in other cases.

◆ draw()

virtual bool OdIfc::OdIfcModelerGeometry::draw ( OdGiWorldDraw pWd) const
pure virtual

Draws body to OdGiWorldDraw.

Parameters
pWd[in] Object for entity-level vectorization.

◆ extrude()

virtual OdResult OdIfc::OdIfcModelerGeometry::extrude ( OdIfcProfileDefPtr  profile,
OdGeVector3d  dir 
)
pure virtual

Creates extrusion body and stores it in IfcModelerGeometry.

Parameters
profile[in] Base profile for extrusion.
dir[in] Length and direction of extrusion.
Returns
Returns result code, eOk if all right, eNullEntityPointer if profile is NULL, eEmptySet if profile has no contours or eGeneralModelingFailure in other cases.

◆ getBoundingBox()

virtual OdResult OdIfc::OdIfcModelerGeometry::getBoundingBox ( OdGeExtents3d box) const
pure virtual

Calculates extents of body in IfcModelerGeometry.

Parameters
box[out] Body extents.
Returns
Returns result code, eOk if all right, eNullExtents if body is NULL.

◆ revolve()

virtual OdResult OdIfc::OdIfcModelerGeometry::revolve ( OdIfcProfileDefPtr  profile,
const OdGeVector3d axisOfRevolution,
const OdGePoint3d axisPosition,
double  startAng,
double  endAng 
)
pure virtual

Creates revolution body and stores it in IfcModelerGeometry.

Parameters
profile[in] Base profile for revolution.
axisOfRevolution[in] Axis of revolution, which is used by base profile for create revolution body.
axisPosition[in] Position of revolution axis.
startAng[in] Start angle of revolution.
endAng[in] End angle of revolution.
Returns
Returns result code, eOk if all right, eNullEntityPointer if profile is NULL or eGeneralModelingFailure in other cases.

◆ setDeviationParams()

virtual void OdIfc::OdIfcModelerGeometry::setDeviationParams ( const OdIfcDeviationParams params)
pure virtual

Assigns deviation params to IfcModelerGeometry.

Parameters
params[in] Set of deviation parameters.

◆ transform()

virtual void OdIfc::OdIfcModelerGeometry::transform ( const OdGeMatrix3d m)
pure virtual

Transforms body in IfcModelerGeometry.

Parameters
m[in] Transformation matrix.

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