CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
OdModelerTools Class Referenceabstract

#include <ModelerTools.h>

Inheritance diagram for OdModelerTools:
OdRxObject

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdModelerTools)
 
virtual OdResult deleteModelerBulletins ()=0
 
virtual void beginThreadSafetyMode (unsigned nThreads, const unsigned *aThreads)=0
 
virtual void endThreadSafetyMode (unsigned nThreads, const unsigned *aThreads)=0
 
virtual bool startThread ()=0
 
virtual bool stopThread ()=0
 
virtual bool isThreadStarted () const =0
 
virtual OdResult check3dSolid (const OdDb3dSolid &, OdString &report)=0
 
virtual void executeInMainHistoryStream (MainHistStreamFunc func, void *data)=0
 
virtual OdResult createHatchFromModelerGeometry (const OdDbEntity &geom, OdDbEntityPtrArray &aHatch)=0
 
virtual bool getAdeskTrueCol (void *pEntity, unsigned long &color)=0
 
virtual bool getAdeskCol (void *pEntity, unsigned long &color)=0
 
virtual int setTestMode (int testMode)=0
 
virtual OdResult getClosestPoints (const OdModelerGeometry &obj1, const OdDbSubentId &subId1, const OdGeMatrix3d &toWc1, const OdModelerGeometry &obj2, const OdDbSubentId &subId2, const OdGeMatrix3d &toWc2, OdGePoint3d &nearestPt1, OdGePoint3d &nearestPt2)=0
 
virtual OdResult getClosestPoints (const OdModelerGeometry &obj, const OdDbSubentId &subId, const OdGeMatrix3d &toWc, const OdGeCurve3d &curve, OdGePoint3d &nearestPt1, OdGePoint3d &nearestPt2)=0
 
virtual OdResult getClosestPoints (const OdModelerGeometry &obj, const OdDbSubentId &subId, const OdGeMatrix3d &toWc, const OdGePoint3d &inPt, OdGePoint3d &nearestPt)=0
 
virtual OdResult getClosestPoints (const OdModelerGeometry &obj1, const OdDbSubentId &subId1, const OdGeMatrix3d &toWc1, const OdGePoint3dArray &pts2, const OdInt32Array &edges2, OdGePoint3d &nearestPt1, OdGePoint3d &nearestPt2)=0
 
virtual OdResult cloneAndXform (const OdModelerGeometry &srcModeler, const OdGeMatrix3d &mtx, OdModelerGeometryPtr &pCloneModeler)=0
 
virtual OdResult getMaxPoint (const OdModelerGeometry &object, const OdGeVector3d &direction, OdGePoint3d &maxPoint)=0
 
virtual OdResult getExtremePoints (const OdModelerGeometry &object, const OdGeVector3d &direction, OdGePoint3d &minPoint, OdGePoint3d &maxPoint)=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
 

Protected Member Functions

 OdModelerTools ()
 

Additional Inherited Members

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

Detailed Description

This class defines the interface for classes that provide the services for ACIS SAT and SAB data.

Corresponding C++ library: ModelerGeometry <group Other_Classes>

Definition at line 47 of file ModelerTools.h.

Constructor & Destructor Documentation

◆ OdModelerTools()

OdModelerTools::OdModelerTools ( )
inlineprotected

Definition at line 50 of file ModelerTools.h.

Member Function Documentation

◆ beginThreadSafetyMode()

virtual void OdModelerTools::beginThreadSafetyMode ( unsigned  nThreads,
const unsigned *  aThreads 
)
pure virtual

Should be called from the main stream to start ACIS thread-safety mode. Prepares separate history streams for each thread, turns the thread-safety mode on. Returns false if no modeler geometry exist.

◆ check3dSolid()

virtual OdResult OdModelerTools::check3dSolid ( const OdDb3dSolid ,
OdString report 
)
pure virtual

Checks topology and geometry correctness of given entity. Results are returned as text in parameter 'report'.

◆ cloneAndXform()

virtual OdResult OdModelerTools::cloneAndXform ( const OdModelerGeometry srcModeler,
const OdGeMatrix3d mtx,
OdModelerGeometryPtr pCloneModeler 
)
pure virtual

Copies given modeler geometry object and transform copy by passed matrix.

Parameters
srcModeler[in] The modeler geometry object.
mtx[in] Additional transformation.
pCloneModeler[out] Cloned and transformed modeler geometry object.
Returns
eOk if successful, or an appropriate error code if not.

◆ createHatchFromModelerGeometry()

virtual OdResult OdModelerTools::createHatchFromModelerGeometry ( const OdDbEntity geom,
OdDbEntityPtrArray aHatch 
)
pure virtual

Creates OdDbHatch entities from OdDbRegion or OdDbSurface (planar).

Parameters
geom[in] The source entities.
aHatch[out] Receives a result hateches.
Returns
eOk if successful, or an appropriate error code if not.
Remarks
The newly created hatches are non- database -resident. It is up to the caller to either add them to an OdDbDatabase or to delete them.

◆ deleteModelerBulletins()

virtual OdResult OdModelerTools::deleteModelerBulletins ( )
pure virtual

Delete the modeler bulletins.

◆ endThreadSafetyMode()

virtual void OdModelerTools::endThreadSafetyMode ( unsigned  nThreads,
const unsigned *  aThreads 
)
pure virtual

Should be called from the main stream to end ACIS thread-safety mode. Merges separate history streams into the main history, turns the thread-safety mode off.

◆ executeInMainHistoryStream()

virtual void OdModelerTools::executeInMainHistoryStream ( MainHistStreamFunc  func,
void data 
)
pure virtual

Executes given function when history stream is set to a main one

◆ getAdeskCol()

virtual bool OdModelerTools::getAdeskCol ( void pEntity,
unsigned long &  color 
)
pure virtual

◆ getAdeskTrueCol()

virtual bool OdModelerTools::getAdeskTrueCol ( void pEntity,
unsigned long &  color 
)
pure virtual

◆ getClosestPoints() [1/4]

virtual OdResult OdModelerTools::getClosestPoints ( const OdModelerGeometry obj,
const OdDbSubentId subId,
const OdGeMatrix3d toWc,
const OdGeCurve3d curve,
OdGePoint3d nearestPt1,
OdGePoint3d nearestPt2 
)
pure virtual

Calculates closest points on the given modeler geometry object (or its subentity) and the given curve. Matrix toWc defines transformations applied to modeler geometry object before calculations.

Parameters
obj[in] The modeler geometry object.
subId[in] The Object subentity (may be null).
toWc[in] Transformation from ECS of the modeler geometry object to WCS.
curve[in] The curve (defined in WCS).
nearestPt1[out] Receives a closest point on first object in WCS.
nearestPt2[out] Receives a closest point on second object in WCS.
Returns
eOk if successful, or an appropriate error code if not.

◆ getClosestPoints() [2/4]

virtual OdResult OdModelerTools::getClosestPoints ( const OdModelerGeometry obj,
const OdDbSubentId subId,
const OdGeMatrix3d toWc,
const OdGePoint3d inPt,
OdGePoint3d nearestPt 
)
pure virtual

Calculates point on the given modeler geometry object (or its subentity) closest to the given point. Matrix toWc defines transformations applied to the modeler geometry object before calculations.

Parameters
obj[in] The modeler geometry object.
subId[in] The object subentity (may be null).
toWc[in] Transformation from ECS of the modeler geometry object to WCS.
ptWc[in] Input point (defined in WCS).
nearestPt[out] Receives a closest point on the object in WCS.
Returns
eOk if successful, or an appropriate error code if not.

◆ getClosestPoints() [3/4]

virtual OdResult OdModelerTools::getClosestPoints ( const OdModelerGeometry obj1,
const OdDbSubentId subId1,
const OdGeMatrix3d toWc1,
const OdGePoint3dArray pts2,
const OdInt32Array edges2,
OdGePoint3d nearestPt1,
OdGePoint3d nearestPt2 
)
pure virtual

Calculates closest points on the given modeler geometry object (or its subentity) and the given wireframe (set of straight line segments). Wireframe is defined as set of points and array of pairs {(s0, e0),...,(sn, en)}, where si - index of start point of i-th wireframe edge, ei - index of end point of i-th wireframe edge. Matrix toWc defines transformations applied to the modeler geometry object before calculations.

Parameters
obj[in] The modeler geometry object.
subId[in] The object subentity (may be null).
toWc[in] Transformation from ECS of the modeler geometry object to WCS.
pts2[in] Vertices of input wireframe (defined in WCS).
edges2[in] Edges of input wireframe.
nearestPt1[out] Receives a closest point on first object in WCS.
nearestPt2[out] Receives a closest point on second object in WCS.
Returns
eOk if successful, or an appropriate error code if not.

◆ getClosestPoints() [4/4]

virtual OdResult OdModelerTools::getClosestPoints ( const OdModelerGeometry obj1,
const OdDbSubentId subId1,
const OdGeMatrix3d toWc1,
const OdModelerGeometry obj2,
const OdDbSubentId subId2,
const OdGeMatrix3d toWc2,
OdGePoint3d nearestPt1,
OdGePoint3d nearestPt2 
)
pure virtual

Calculates closest points on the given modeler geometry objects or their subentities. Matrices toWc1, toWc2 define transformations applied to given objects before calculations.

Parameters
obj1[in] The first modeler geometry object.
subId1[in] The first object subentity (may be null).
toWc1[in] Transformation from ECS of the first object to WCS.
obj2[in] The second modeler geometry object.
subId2[in] The second object subentity (may be null).
toWc2[in] Transformation from ECS of the second object to WCS.
nearestPt1[out] Closest point on first object in WCS.
nearestPt2[out] Closest point on second object in WCS.
Returns
eOk if successful, or an appropriate error code if not.

◆ getExtremePoints()

virtual OdResult OdModelerTools::getExtremePoints ( const OdModelerGeometry object,
const OdGeVector3d direction,
OdGePoint3d minPoint,
OdGePoint3d maxPoint 
)
pure virtual

Calculates the extreme points on the given modeler geometry object along a certain direction.

Parameters
object[in] The modeler geometry object.
direction[in] The direction along which the extreme points are to be calculated.
minPoint[out] Receives an extreme point on object along the direction in opposite sense in WCS.
maxPoint[out] Receives an extreme point on object along the direction in WCS.
Returns
eOk if successful, or an appropriate error code if not.

◆ getMaxPoint()

virtual OdResult OdModelerTools::getMaxPoint ( const OdModelerGeometry object,
const OdGeVector3d direction,
OdGePoint3d maxPoint 
)
pure virtual

Calculates the maximum point on the given modeler geometry object along a certain direction.

Parameters
object[in] The modeler geometry object.
direction[in] The direction along which the extreme point is to be calculated.
maxPoint[out] Receives an extreme point on object along the direction in WCS.
Returns
eOk if successful, or an appropriate error code if not.

◆ isThreadStarted()

virtual bool OdModelerTools::isThreadStarted ( ) const
pure virtual

Checks if the modeler is started in this particular thread.

◆ ODRX_DECLARE_MEMBERS()

OdModelerTools::ODRX_DECLARE_MEMBERS ( OdModelerTools  )

◆ setTestMode()

virtual int OdModelerTools::setTestMode ( int  testMode)
pure virtual

◆ startThread()

virtual bool OdModelerTools::startThread ( )
pure virtual

Should be called from a thread function to start modeler in this particular thread. Substitutes default history stream by unique one for the given thread.

◆ stopThread()

virtual bool OdModelerTools::stopThread ( )
pure virtual

Should be called from a thread function to stop modeler in this particular thread. Restores default history stream for the given thread.


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