CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
OdDbSectionHLRHelper Class Referenceabstract

#include <DbSectionHLRHelper.h>

Inheritance diagram for OdDbSectionHLRHelper:
OdRxObject

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdDbSectionHLRHelper)
 
virtual OdDbDatabasedatabase () const =0
 
virtual OdResult setProjectionPlane (const OdGePoint3d &ptBase, const OdGeVector3d &vrDir, const OdGeVector3d &vrUp)=0
 
virtual OdGePoint3d projectionBase () const =0
 
virtual OdGeVector3d projectionDirection () const =0
 
virtual OdGeVector3d projectionUp () const =0
 
virtual bool includeTangentalEdgesFlag () const =0
 
virtual void setIncludeTangentalEdgesFlag (bool bSet)=0
 
virtual void setTangentalEdgesAngle (double dAngle)=0
 
virtual OdResult setEntities (const OdDbObjectIdArray &arr3dObjects)=0
 
virtual const OdArray< OdDbObjectId > & getEntities () const =0
 
virtual OdGeExtents3d getExtents () const =0
 
virtual OdResult createSectionHLR (bool bCreateSection, bool bCreateHiddenLines)=0
 
virtual bool getSectionHatches (OdRxObjectPtrArray &arrHatches) const =0
 
virtual bool getHiddenLines (OdRxObjectPtrArray &arrHiddenLines) const =0
 
virtual bool getVisibleLines (OdRxObjectPtrArray &arrVisibleLines) 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 void copyFrom (const OdRxObject *pSource)
 
virtual OdRx::Ordering comparedTo (const OdRxObject *pOther) const
 
virtual bool isEqualTo (const OdRxObject *pOther) const
 

Static Public Member Functions

static bool isEntitySupported (const OdDbEntity *pEntity)
 
static OdDbSectionHLRHelperPtr createObject (OdDbDatabase *pDb)
 
static double getDefaultTangentAngle ()
 
- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 
static void rxInit ()
 
static void rxUninit ()
 

Detailed Description

This class implements kernel of helper to create flatterned and section geometry by hidden line remover and section modeller.

<group OdDb_Classes>

Definition at line 44 of file DbSectionHLRHelper.h.

Member Function Documentation

◆ createObject()

static OdDbSectionHLRHelperPtr OdDbSectionHLRHelper::createObject ( OdDbDatabase * pDb)
static

Create instance of section and hidden line remover helper.

Parameters
pDb[in] database to initialize defaults for section and flattened view geometry.

◆ createSectionHLR()

virtual OdResult OdDbSectionHLRHelper::createSectionHLR ( bool bCreateSection,
bool bCreateHiddenLines )
pure virtual

Calculate flattened views and section geometry.

Parameters
bCreateSection[in] Use section plane to cut 3d objects and create section hatches.
bCreateHiddenLines[in] Create hidden line geometry.
Remarks
Returns eNotInitializedYet if no one entity was set to helper. Otherwise returns eOk.

◆ database()

virtual OdDbDatabase * OdDbSectionHLRHelper::database ( ) const
pure virtual

Returns database to initialize flattened and section geometry after creation.

◆ getDefaultTangentAngle()

static double OdDbSectionHLRHelper::getDefaultTangentAngle ( )
static

Returns the default tangential angle.

Returns
default tangential angle.

◆ getEntities()

virtual const OdArray< OdDbObjectId > & OdDbSectionHLRHelper::getEntities ( ) const
pure virtual

Returns array of entity ids to create flattened views and section geometry.

◆ getExtents()

virtual OdGeExtents3d OdDbSectionHLRHelper::getExtents ( ) const
pure virtual

Returns 3d object extents of supported entity ids.

◆ getHiddenLines()

virtual bool OdDbSectionHLRHelper::getHiddenLines ( OdRxObjectPtrArray & arrHiddenLines) const
pure virtual

Returns non-dbro hidden line geometry of created by createSectionHLR method flattened view geometry.

Parameters
arrHiddenLines[out] result entities.
Remarks
Returns false if flattened view geometry was not created.

◆ getSectionHatches()

virtual bool OdDbSectionHLRHelper::getSectionHatches ( OdRxObjectPtrArray & arrHatches) const
pure virtual

Returns non-dbro hatches of created by createSectionHLR method section.

Parameters
arrHatches[out] result entities.
Remarks
Returns false if section geometry was not created.

◆ getVisibleLines()

virtual bool OdDbSectionHLRHelper::getVisibleLines ( OdRxObjectPtrArray & arrVisibleLines) const
pure virtual

Returns non-dbro visible line geometry of created by createSectionHLR method flattened view geometry.

Parameters
arrVisibleLines[out] result entities.
Remarks
Returns false if flattened view geometry was not created.

◆ includeTangentalEdgesFlag()

virtual bool OdDbSectionHLRHelper::includeTangentalEdgesFlag ( ) const
pure virtual

Returns include tangental edges flag.

◆ isEntitySupported()

static bool OdDbSectionHLRHelper::isEntitySupported ( const OdDbEntity * pEntity)
static

Returns is entity class is supported by section modeler and hidden line remover.

Remarks
At the moment supported OdDb3dSolid, OdDbSurtface, OdDbSubDMesh, OdDbRegion and OdDbBody classes.

◆ ODRX_DECLARE_MEMBERS()

OdDbSectionHLRHelper::ODRX_DECLARE_MEMBERS ( OdDbSectionHLRHelper )

◆ projectionBase()

virtual OdGePoint3d OdDbSectionHLRHelper::projectionBase ( ) const
pure virtual

Returns base point to define section plane.

◆ projectionDirection()

virtual OdGeVector3d OdDbSectionHLRHelper::projectionDirection ( ) const
pure virtual

Returns normal vector of section plane and direction for flattened view and section creation.

◆ projectionUp()

virtual OdGeVector3d OdDbSectionHLRHelper::projectionUp ( ) const
pure virtual

Returns up vector direction for flattened view and section creation.

◆ setEntities()

virtual OdResult OdDbSectionHLRHelper::setEntities ( const OdDbObjectIdArray & arr3dObjects)
pure virtual

Set entities to create flattened and section geometry.

Parameters
arr3dObjects[in] Array of object ids to be used in construction flattened view or section geometry.
Remarks
Returns eInvalidInput if no one entity from array is supported. Otherwise returns eOk. Method skip all non-supported entities.

◆ setIncludeTangentalEdgesFlag()

virtual void OdDbSectionHLRHelper::setIncludeTangentalEdgesFlag ( bool bSet)
pure virtual

Set include tangental edges flag.

◆ setProjectionPlane()

virtual OdResult OdDbSectionHLRHelper::setProjectionPlane ( const OdGePoint3d & ptBase,
const OdGeVector3d & vrDir,
const OdGeVector3d & vrUp )
pure virtual

Set projection direction and section plane to create flattened and section geometry.

Parameters
ptBase[in] Base point to define section plane.
vrDir[in] Normal vector of section plane and direction for flattened view and section creation.
vrUp[in] Up vector direction for flattened view and section creation.
Remarks
Returns eInvalidInput if direction vector is zero length or up vector is not perpendicular to direction vector. Otherwise returns eOk.

◆ setTangentalEdgesAngle()

virtual void OdDbSectionHLRHelper::setTangentalEdgesAngle ( double dAngle)
pure virtual

Set tangential edges angle.

Parameters
dAngle[in] The specified angle.

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