CFx SDK Documentation  2023 SP0
Classes | Public Types | Public Member Functions | List of all members
OdGiOrthoClipperEx Class Referenceabstract

#include <GiOrthoClipperEx.h>

Inheritance diagram for OdGiOrthoClipperEx:
OdGiOrthoClipper OdGiConveyorNode OdRxObject

Classes

struct  ClipPlane
 
struct  PolyTolOverride
 
struct  TolOverride
 

Public Types

enum  ClipLimit { kPolyClipLimit = 0 , kNumClipLimits }
 
enum  CountsClassify {
  kCCDontClassify = 0 , kCCClassifiedByInclusion , kCCClassifiedByInteger , kCCClassifiedByOrder ,
  kCCClassifiedByNormal , kCCClassifiedByXor , kCCClassifiedBySignedXor
}
 
enum  VisibilityStatus { kStatusInvisible = -1 , kStatusClipped = 0 , kStatusVisible = 1 }
 
typedef OdArray< ClipPlane, OdMemoryAllocator< ClipPlane > > ClipPlanesArray
 

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdGiOrthoClipperEx)
 
 TD_USING (OdGiOrthoClipper::set)
 
 TD_USING (OdGiOrthoClipper::get)
 
virtual void set (bool bInverted, OdUInt32 nPoints, const OdGePoint2d *points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)=0
 
virtual void set (bool bInverted, const OdGePoint2dArray &points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)=0
 
virtual void get (bool &bInverted, OdGePoint2dArray &points, bool &bClipLowerZ, double &dLowerZ, bool &bClipUpperZ, double &dUpperZ) const =0
 
virtual void set (bool bPreprocess, OdUInt32 nCounts, const int *counts, OdUInt32 nPoints, const OdGePoint2d *points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)=0
 
virtual void set (bool bPreprocess, const OdIntArray &counts, const OdGePoint2dArray &points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)=0
 
virtual void get (OdIntArray &counts, OdGePoint2dArray &points, bool &bClipLowerZ, double &dLowerZ, bool &bClipUpperZ, double &dUpperZ) const =0
 
void set (OdUInt32 nCounts, const int *counts, OdUInt32 nPoints, const OdGePoint2d *points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)
 
void set (const OdIntArray &counts, const OdGePoint2dArray &points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)
 
virtual bool isEmpty () const =0
 
virtual bool isInverted () const =0
 
virtual bool isExtended () const =0
 
virtual bool isSingleClipStage () const =0
 
virtual bool isEmptyClipSet () const =0
 
virtual void set (OdGiClipBoundary *pBoundary, OdGiAbstractClipBoundary *pClipInfo=NULL, const OdGeMatrix3d *pXform=NULL)=0
 
virtual OdGiAbstractClipBoundary::BoundaryType getType () const =0
 
virtual void enableAnalyticCurvesClipping (bool bEnable)=0
 
virtual bool isAnalyticCurvesClippingEnabled () const =0
 
virtual void enable ()=0
 
virtual void disable ()=0
 
virtual bool enabled () const =0
 
virtual void setLimit (ClipLimit clipLimit, OdUInt32 nLimit)=0
 
virtual OdUInt32 getLimit (ClipLimit clipLimit) const =0
 
virtual void pushClipStage (OdGiClipBoundary *pBoundary, OdGiAbstractClipBoundary *pClipInfo=NULL, const OdGeMatrix3d *pXform=NULL)=0
 
virtual void pushClipStage (OdUInt32 numPlanes, const ClipPlane *pPlanes, const OdGeMatrix3d *pXform=NULL, bool bEnableSections=false)=0
 
virtual void pushClipStage (OdUInt32 nCounts, const int *counts, OdUInt32 nPoints, const OdGePoint2d *points, bool bInverted=false, CountsClassify countsClass=kCCDontClassify, const OdGeMatrix3d *pXform=NULL, OdUInt32 numPlanes=0, const ClipPlane *pPlanes=NULL, bool bEnableSections=false, PolyTolOverride *pPolyTol=NULL)=0
 
virtual void pushClipStage (OdUInt32 nCounts, const int *counts, OdUInt32 nPoints, const OdGePoint3d *points, const OdGeVector3d *pNormal=NULL, bool bInverted=false, CountsClassify countsClass=kCCDontClassify, const OdGeMatrix3d *pXform=NULL, OdUInt32 numPlanes=0, const ClipPlane *pPlanes=NULL, bool bEnableSections=false, PolyTolOverride *pPolyTol=NULL)=0
 
virtual bool popClipStage ()=0
 
virtual void clearClipping (bool bClearCache=false)=0
 
virtual void clearTemporaryArrays ()=0
 
virtual OdUInt32 numClipStages () const =0
 
virtual void classifyClipStage (OdUInt32 nStage, OdUInt32 *pNPlanes, OdUInt32 *pNPolys=NULL, bool *bFirstPolyInverted=NULL) const =0
 
virtual bool isClipStageSectionable (OdUInt32 nStage) const =0
 
virtual bool getClipStage (OdUInt32 nStage, OdIntArray &counts, OdGePoint2dArray &points, OdGeVector3d *pNormal=NULL) const =0
 
virtual bool getClipStage (OdUInt32 nStage, OdIntArray &counts, OdGePoint3dArray &points, OdGeVector3d *pNormal=NULL) const =0
 
virtual bool getClipStage (OdUInt32 nStage, ClipPlanesArray &planes) const =0
 
virtual OdUInt32 clipStatus () const =0
 
virtual void clearClipStatus ()=0
 
virtual VisibilityStatus checkPointVisibility (const OdGePoint3d &pt) const =0
 
virtual VisibilityStatus checkSphereVisibility (const OdGePoint3d &origin, double radius) const =0
 
virtual VisibilityStatus checkExtentsVisibility (const OdGeExtents3d &extents) const =0
 
virtual VisibilityStatus checkBoundsVisibility (const OdGeBoundBlock3d &bb) const =0
 
virtual void enableLogging (OdStreamBuf *pStream)=0
 
virtual void disableLogging ()=0
 
virtual bool isLoggingEnabled () const =0
 
virtual OdGiConveyorOutputsectionOutput ()=0
 
virtual void flushSection (bool bFlushClosed=true, bool bFlushOpened=false, bool bReleaseData=true)=0
 
- Public Member Functions inherited from OdGiOrthoClipper
 ODRX_DECLARE_MEMBERS (OdGiOrthoClipper)
 
virtual void set (OdUInt32 nPoints, const OdGePoint2d *points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)=0
 
virtual void set (const OdGePoint2dArray &points, bool bClipLowerZ=false, double dLowerZ=0.0, bool bClipUpperZ=false, double dUpperZ=0.0)=0
 
virtual void get (OdGePoint2dArray &points, bool &bClipLowerZ, double &dLowerZ, bool &bClipUpperZ, double &dUpperZ) const =0
 
virtual void setDeviation (const OdGeDoubleArray &deviations)=0
 
virtual void setDeviation (const OdGiDeviation *pDeviation)=0
 
virtual void setDrawContext (OdGiConveyorContext *pDrawCtx)=0
 
- Public Member Functions inherited from OdGiConveyorNode
 ODRX_DECLARE_MEMBERS (OdGiConveyorNode)
 
virtual OdGiConveyorInputinput ()=0
 
virtual OdGiConveyorOutputoutput ()=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
 

Additional Inherited Members

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

Detailed Description

This class implements a geometry clipper, used for clipping objects. {group:OdGi_Classes}

Definition at line 40 of file GiOrthoClipperEx.h.

Member Typedef Documentation

◆ ClipPlanesArray

Defines the type of array of clipping planes.

Definition at line 360 of file GiOrthoClipperEx.h.

Member Enumeration Documentation

◆ ClipLimit

Represents a memory limit (in bytes) used by clipping engine during clipping a set of polygons.

Enumerator
kPolyClipLimit 

Memory limit (in bytes) which limits internal clipping structures number.

kNumClipLimits 

Count of limits available at the current moment.

Definition at line 264 of file GiOrthoClipperEx.h.

◆ CountsClassify

Represents a classification of clipping contours in a clipping boundary.

Enumerator
kCCDontClassify 

Classification is not used.

kCCClassifiedByInclusion 

Classification by contours inclusion.

kCCClassifiedByInteger 

Classification by positive/negative counts number.

kCCClassifiedByOrder 

Classification by clockwise/counterclockwise ordering.

kCCClassifiedByNormal 

Classification by positive/negative normal.

kCCClassifiedByXor 

Classification by Xor operation (intersection).

kCCClassifiedBySignedXor 

Classification by set of Union/Subtract operations.

Definition at line 365 of file GiOrthoClipperEx.h.

◆ VisibilityStatus

Represents a visibility status of clipped objects.

Enumerator
kStatusInvisible 

Invisible.

kStatusClipped 

Clipped.

kStatusVisible 

Visible.

Definition at line 544 of file GiOrthoClipperEx.h.

Member Function Documentation

◆ checkBoundsVisibility()

virtual VisibilityStatus OdGiOrthoClipperEx::checkBoundsVisibility ( const OdGeBoundBlock3d bb) const
pure virtual

Returns the visible status of the bounding block.

Parameters
bb[in] Bounding block.

◆ checkExtentsVisibility()

virtual VisibilityStatus OdGiOrthoClipperEx::checkExtentsVisibility ( const OdGeExtents3d extents) const
pure virtual

Returns the visible status of extents.

Parameters
extents[in] Extents.

◆ checkPointVisibility()

virtual VisibilityStatus OdGiOrthoClipperEx::checkPointVisibility ( const OdGePoint3d pt) const
pure virtual

Returns the visible status of the 3D point.

Parameters
pt[in] 3D point.

◆ checkSphereVisibility()

virtual VisibilityStatus OdGiOrthoClipperEx::checkSphereVisibility ( const OdGePoint3d origin,
double  radius 
) const
pure virtual

Returns the sphere's visible status.

Parameters
origin[in] Sphere's origin point.
radius[in] Sphere's radius.

◆ classifyClipStage()

virtual void OdGiOrthoClipperEx::classifyClipStage ( OdUInt32  nStage,
OdUInt32 pNPlanes,
OdUInt32 pNPolys = NULL,
bool *  bFirstPolyInverted = NULL 
) const
pure virtual

Classifies the clipping stage.

Parameters
nStage[in] Clipping stage's index.
pNPlanes[in/out] Count of planes in the clipping stage.
pNPolys[in/out] Count of polygons in the clipping stage.
bFirstPolyInverted[in/out] Flag which indicates that the first polygon is inverted.

◆ clearClipping()

virtual void OdGiOrthoClipperEx::clearClipping ( bool  bClearCache = false)
pure virtual

Clears all clipping stages.

Parameters
bClearCache[in] Flag which indicates that caches should be cleared.

◆ clearClipStatus()

virtual void OdGiOrthoClipperEx::clearClipStatus ( )
pure virtual

Clears the clipping status:

◆ clearTemporaryArrays()

virtual void OdGiOrthoClipperEx::clearTemporaryArrays ( )
pure virtual

Clears all temporarily allocated arrays and caches.

◆ clipStatus()

virtual OdUInt32 OdGiOrthoClipperEx::clipStatus ( ) const
pure virtual

Returns the clipping status:

value Description 0 Clipping does not occur. 8 The object clipped partially or completely at least once. 16 The object completely clipped at least once.

◆ disable()

virtual void OdGiOrthoClipperEx::disable ( )
pure virtual

Disables clipping.

◆ disableLogging()

virtual void OdGiOrthoClipperEx::disableLogging ( )
pure virtual

Disable clipping engine debugging.

◆ enable()

virtual void OdGiOrthoClipperEx::enable ( )
pure virtual

Enables clipping.

◆ enableAnalyticCurvesClipping()

virtual void OdGiOrthoClipperEx::enableAnalyticCurvesClipping ( bool  bEnable)
pure virtual

Enables an analytic curves clipping.

Parameters
bEnable[in] Boolean flag which indicates that analytic curves clipping is enabled (true value) or disabled (false value).

◆ enabled()

virtual bool OdGiOrthoClipperEx::enabled ( ) const
pure virtual

Returns true if clipping is enabled or returns false in the other case.

◆ enableLogging()

virtual void OdGiOrthoClipperEx::enableLogging ( OdStreamBuf pStream)
pure virtual

Enables clipping engine debugging.

Parameters
pStream[out] Stream to which the debugging information is to be written.

◆ flushSection()

virtual void OdGiOrthoClipperEx::flushSection ( bool  bFlushClosed = true,
bool  bFlushOpened = false,
bool  bReleaseData = true 
)
pure virtual

Sends accumulated geometry sections into conveyor output.

Parameters
bFlushClosed[in] Send accumulated closed sections as shell geometry primitive.
bFlushOpened[in] Send accumulated opened sections as polyline geometry primitive.
bReleaseData[in] Delete accumulated sections data after flushing.

◆ get() [1/2]

virtual void OdGiOrthoClipperEx::get ( bool &  bInverted,
OdGePoint2dArray points,
bool &  bClipLowerZ,
double &  dLowerZ,
bool &  bClipUpperZ,
double &  dUpperZ 
) const
pure virtual

Returns a clipping stage.

Parameters
bInverted[out] Specifies the Inverted (if true) or the Normal (if false) type of polygonal clipping boundary.
points[out] Array of 2D points defining sides of clipping prism perpendicular to XY.
bClipLowerZ[out] Flag which indicates that there is a lower clipping plane.
dLowerZ[out] Z-coordinate of the lower clipping plane.
bClipUpperZ[out] Flag which indicates that there is an upper clipping plane.
dUpperZ[out] Z-coordinate of the upper clipping plane.

◆ get() [2/2]

virtual void OdGiOrthoClipperEx::get ( OdIntArray counts,
OdGePoint2dArray points,
bool &  bClipLowerZ,
double &  dLowerZ,
bool &  bClipUpperZ,
double &  dUpperZ 
) const
pure virtual

Returns a clipping stage.

Parameters
counts[out] Array of points count of each polygon.
points[out] Array of 2D points defining polygons.
bClipLowerZ[out] Flag which indicates that there is a lower clipping plane.
dLowerZ[out] Z-coordinate of the lower clipping plane.
bClipUpperZ[out] Flag which indicates that there is an upper clipping plane.
dUpperZ[out] Z-coordinate of the upper clipping plane.

◆ getClipStage() [1/3]

virtual bool OdGiOrthoClipperEx::getClipStage ( OdUInt32  nStage,
ClipPlanesArray planes 
) const
pure virtual

Returns the clipping stage when the clipping boundary defined by infinite planes.

Parameters
nStage[in] Clipping stage's index.
planes[out] Array of infinite planes in the clipping stage.
Returns
Returns true if the clipping stage is not empty or returns false in the other case.

◆ getClipStage() [2/3]

virtual bool OdGiOrthoClipperEx::getClipStage ( OdUInt32  nStage,
OdIntArray counts,
OdGePoint2dArray points,
OdGeVector3d pNormal = NULL 
) const
pure virtual

Returns the clipping stage.

Parameters
nStage[in] Clipping stage's index.
counts[out] Array of points count of each polygon in the clipping stage.
points[out] Array of 2D points defining a clipping boundary.
pNormal[in/out] Normal.
Returns
Returns true if the clipping stage is not empty or returns false in the other case.

◆ getClipStage() [3/3]

virtual bool OdGiOrthoClipperEx::getClipStage ( OdUInt32  nStage,
OdIntArray counts,
OdGePoint3dArray points,
OdGeVector3d pNormal = NULL 
) const
pure virtual

Returns the clipping stage.

Parameters
nStage[in] Clipping stage's index.
counts[out] Array of points count of each polygon in the clipping stage.
points[out] Array of 3D points defining a clipping boundary.
pNormal[in/out] Normal.
Returns
Returns true if the clipping stage is not empty or returns false in the other case.

◆ getLimit()

virtual OdUInt32 OdGiOrthoClipperEx::getLimit ( ClipLimit  clipLimit) const
pure virtual

Returns a memory limit (in bytes) used by clipping engine during clipping a set of polygons.

Parameters
clipLimit[in] Memory limit (in bytes) which limits internal clipping structures number.

◆ getType()

virtual OdGiAbstractClipBoundary::BoundaryType OdGiOrthoClipperEx::getType ( ) const
pure virtual

Returns the type of clipping boundary.

See also
<link OdGiAbstractClipBoundary::BoundaryType, BoundaryType enumeration.>

◆ isAnalyticCurvesClippingEnabled()

virtual bool OdGiOrthoClipperEx::isAnalyticCurvesClippingEnabled ( ) const
pure virtual

Returns true if the analytic curves clipping is enabled or returns false in the other case.

◆ isClipStageSectionable()

virtual bool OdGiOrthoClipperEx::isClipStageSectionable ( OdUInt32  nStage) const
pure virtual

Returns true if sectioning enabled for specified clipping stage.

Parameters
nStage[in] Clipping stage's index.

◆ isEmpty()

virtual bool OdGiOrthoClipperEx::isEmpty ( ) const
pure virtual

Returns true if the top clipping stage is empty or returns false in the other case.

◆ isEmptyClipSet()

virtual bool OdGiOrthoClipperEx::isEmptyClipSet ( ) const
pure virtual

Returns true if the set of clipping stages is empty or returns false in the other case.

◆ isExtended()

virtual bool OdGiOrthoClipperEx::isExtended ( ) const
pure virtual

Returns true if the top clipping stage is extended or returns false in the other case.

◆ isInverted()

virtual bool OdGiOrthoClipperEx::isInverted ( ) const
pure virtual

Returns true if the top clipping stage is inverted or returns false in the other case.

◆ isLoggingEnabled()

virtual bool OdGiOrthoClipperEx::isLoggingEnabled ( ) const
pure virtual

Returns boolean value true if the clipping engine debugging enabled. If the clipping engine debugging disabled returns false.

◆ isSingleClipStage()

virtual bool OdGiOrthoClipperEx::isSingleClipStage ( ) const
pure virtual

Returns true if there is only one clipping stage or returns false if there is not.

◆ numClipStages()

virtual OdUInt32 OdGiOrthoClipperEx::numClipStages ( ) const
pure virtual

Returns the count of clipping stages.

◆ ODRX_DECLARE_MEMBERS()

OdGiOrthoClipperEx::ODRX_DECLARE_MEMBERS ( OdGiOrthoClipperEx  )

◆ popClipStage()

virtual bool OdGiOrthoClipperEx::popClipStage ( )
pure virtual

Removes a clipping stage.

Returns
Returns true if the clipping stage was successfully removed or returns false in the other case.

◆ pushClipStage() [1/4]

virtual void OdGiOrthoClipperEx::pushClipStage ( OdGiClipBoundary pBoundary,
OdGiAbstractClipBoundary pClipInfo = NULL,
const OdGeMatrix3d pXform = NULL 
)
pure virtual

Creates a clipping boundary.

Parameters
pBoundary[in] Clipping boundary.
pClipInfo[in] Additional clipping boundary information.
pXform[in] Optional boundary transform matrix.

◆ pushClipStage() [2/4]

virtual void OdGiOrthoClipperEx::pushClipStage ( OdUInt32  nCounts,
const int *  counts,
OdUInt32  nPoints,
const OdGePoint2d points,
bool  bInverted = false,
CountsClassify  countsClass = kCCDontClassify,
const OdGeMatrix3d pXform = NULL,
OdUInt32  numPlanes = 0,
const ClipPlane pPlanes = NULL,
bool  bEnableSections = false,
PolyTolOverride pPolyTol = NULL 
)
pure virtual

Creates a clipping boundary.

Parameters
nCounts[in] Count of polygons which define the clipping boundary.
counts[in] Array of points count of each polygon.
nPoints[in] Count of vertices which define the clipping boundary.
points[in] Array of points defining a clipping boundary.
bInverted[in] Specifies the Inverted (if true) or the Normal (if false) type of polygonal clipping boundary.
countsClass[in] Clipping contours classification mode.
pXform[in] Optional boundary transform matrix.
numPlanes[in] Count of planes.
pPlanes[in] Planes for defining a clipping boundary.
bEnableSections[in] Mark that the clipping stage can generate section geometry.
pPolyTol[in] Optional polygon tolerance overrides.

◆ pushClipStage() [3/4]

virtual void OdGiOrthoClipperEx::pushClipStage ( OdUInt32  nCounts,
const int *  counts,
OdUInt32  nPoints,
const OdGePoint3d points,
const OdGeVector3d pNormal = NULL,
bool  bInverted = false,
CountsClassify  countsClass = kCCDontClassify,
const OdGeMatrix3d pXform = NULL,
OdUInt32  numPlanes = 0,
const ClipPlane pPlanes = NULL,
bool  bEnableSections = false,
PolyTolOverride pPolyTol = NULL 
)
pure virtual

Creates a clipping boundary.

Parameters
nCounts[in] Count of polygons which define the clipping boundary.
counts[in] Array of points count of each polygon.
nPoints[in] Count of vertices which define the clipping boundary.
points[in] Array of points defining a clipping boundary.
pNormal[in] Normal.
bInverted[in] Specifies the Inverted (if true) or the Normal (if false) type of polygonal clipping boundary.
countsClass[in] Clipping contours classification mode.
pXform[in] Optional boundary transform matrix.
numPlanes[in] Count of planes.
pPlanes[in] Planes for defining a clipping boundary.
bEnableSections[in] Mark that the clipping stage can generate section geometry.
pPolyTol[in] Optional polygon tolerance overrides.

◆ pushClipStage() [4/4]

virtual void OdGiOrthoClipperEx::pushClipStage ( OdUInt32  numPlanes,
const ClipPlane pPlanes,
const OdGeMatrix3d pXform = NULL,
bool  bEnableSections = false 
)
pure virtual

Creates a clipping boundary from infinite planes defined in a space.

Parameters
numPlanes[in] Count of planes.
pPlanes[in] Planes for defining a clipping boundary.
pXform[in] Optional boundary transform matrix.
bEnableSections[in] Mark that the clipping stage can generate section geometry.

◆ sectionOutput()

virtual OdGiConveyorOutput& OdGiOrthoClipperEx::sectionOutput ( )
pure virtual

Output for optional section geometry.

◆ set() [1/7]

virtual void OdGiOrthoClipperEx::set ( bool  bInverted,
const OdGePoint2dArray points,
bool  bClipLowerZ = false,
double  dLowerZ = 0.0,
bool  bClipUpperZ = false,
double  dUpperZ = 0.0 
)
pure virtual

Creates a clipping stage.

Parameters
bInverted[in] Specifies the Inverted (if true) or the Normal (if false) type of polygonal clipping boundary.
points[in] Array of 2D points defining sides of clipping prism perpendicular to XY.
bClipLowerZ[in] Flag which indicates that there is a lower clipping plane.
dLowerZ[in] Z-coordinate of the lower clipping plane.
bClipUpperZ[in] Flag which indicates that there is an upper clipping plane.
dUpperZ[in] Z-coordinate of the upper clipping plane.

◆ set() [2/7]

virtual void OdGiOrthoClipperEx::set ( bool  bInverted,
OdUInt32  nPoints,
const OdGePoint2d points,
bool  bClipLowerZ = false,
double  dLowerZ = 0.0,
bool  bClipUpperZ = false,
double  dUpperZ = 0.0 
)
pure virtual

Creates a clipping stage.

Parameters
bInverted[in] Specifies the Inverted (if true) or the Normal (if false) type of polygonal clipping boundary.
nPoints[in] Count of points.
points[in] Points defining sides of clipping prism perpendicular to XY.
bClipLowerZ[in] Flag which indicates that there is a lower clipping plane.
dLowerZ[in] Z-coordinate of the lower clipping plane.
bClipUpperZ[in] Flag which indicates that there is an upper clipping plane
dUpperZ[in] Z-coordinate of the upper clipping plane.
Remarks
If nPoints is 0 - XY clip is disabled. If nPoints is 2 - defines a rectangle clipping boundary.

◆ set() [3/7]

virtual void OdGiOrthoClipperEx::set ( bool  bPreprocess,
const OdIntArray counts,
const OdGePoint2dArray points,
bool  bClipLowerZ = false,
double  dLowerZ = 0.0,
bool  bClipUpperZ = false,
double  dUpperZ = 0.0 
)
pure virtual

Creates a clipping stage with extended or complex clipping boundary.

Parameters
bPreprocess[in] Specifies the Complex (if true) or the Extended (if false) type of polygonal clipping boundary.
counts[in] Array of points count of each polygon.
points[in] Array of 2D Points defining polygons.
bClipLowerZ[in] Flag which indicates that there is a lower clipping plane.
dLowerZ[in] Z-coordinate of the lower clipping plane.
bClipUpperZ[in] Flag which indicates that there is an upper clipping plane.
dUpperZ[in] Z-coordinate of the upper clipping plane.

◆ set() [4/7]

virtual void OdGiOrthoClipperEx::set ( bool  bPreprocess,
OdUInt32  nCounts,
const int *  counts,
OdUInt32  nPoints,
const OdGePoint2d points,
bool  bClipLowerZ = false,
double  dLowerZ = 0.0,
bool  bClipUpperZ = false,
double  dUpperZ = 0.0 
)
pure virtual

Creates a clipping stage with extended or complex clipping boundary.

Parameters
bPreprocess[in] Specifies the Complex (if true) or the Extended (if false) type of polygonal clipping boundary.
nCounts[in] Count of polygons which define the clipping boundary.
counts[in] Array of points count of each polygon.
nPoints[in] Count of points.
points[in] Points defining sides of clipping prism perpendicular to XY.
bClipLowerZ[in] Flag which indicates that there is a lower clipping plane.
dLowerZ[in] Z-coordinate of the lower clipping plane.
bClipUpperZ[in] Flag which indicates that there is an upper clipping plane.
dUpperZ[in] Z-coordinate of the upper clipping plane.

◆ set() [5/7]

void OdGiOrthoClipperEx::set ( const OdIntArray counts,
const OdGePoint2dArray points,
bool  bClipLowerZ = false,
double  dLowerZ = 0.0,
bool  bClipUpperZ = false,
double  dUpperZ = 0.0 
)
inline

Creates a clipping stage with extended clipping boundary.

Parameters
counts[in] Array of points count of each polygon.
points[in] Array of 2D points defining polygons.
bClipLowerZ[in] Flag which indicates that there is a lower clipping plane.
dLowerZ[in] Z-coordinate of the lower clipping plane.
bClipUpperZ[in] Flag which indicates that there is an upper clipping plane.
dUpperZ[in] Z-coordinate of the upper clipping plane.

Definition at line 180 of file GiOrthoClipperEx.h.

◆ set() [6/7]

virtual void OdGiOrthoClipperEx::set ( OdGiClipBoundary pBoundary,
OdGiAbstractClipBoundary pClipInfo = NULL,
const OdGeMatrix3d pXform = NULL 
)
pure virtual

Creates a clipping boundary.

Parameters
pBoundary[in] Clipping boundary.
pClipInfo[in] Additional clipping boundary information.
pXform[in] Optional boundary transform matrix.

◆ set() [7/7]

void OdGiOrthoClipperEx::set ( OdUInt32  nCounts,
const int *  counts,
OdUInt32  nPoints,
const OdGePoint2d points,
bool  bClipLowerZ = false,
double  dLowerZ = 0.0,
bool  bClipUpperZ = false,
double  dUpperZ = 0.0 
)
inline

Creates a clipping stage with extended clipping boundary.

Parameters
nCounts[in] Count of polygons which define the clipping boundary.
counts[in] Array of points count of each polygon.
nPoints[in] Count of points.
points[in] Points defining sides of clipping prism perpendicular to XY.
bClipLowerZ[in] Flag which indicates that there is a lower clipping plane.
dLowerZ[in] Z-coordinate of the lower clipping plane.
bClipUpperZ[in] Flag which indicates that there is an upper clipping plane.
dUpperZ[in] Z-coordinate of the upper clipping plane.

Definition at line 164 of file GiOrthoClipperEx.h.

◆ setLimit()

virtual void OdGiOrthoClipperEx::setLimit ( ClipLimit  clipLimit,
OdUInt32  nLimit 
)
pure virtual

Sets a memory limit (in bytes) used by clipping engine during clipping a set of polygons.

Parameters
clipLimit[in] Memory limit (in bytes) which limits internal clipping structures number..
nLimit[in] Count of limits.

◆ TD_USING() [1/2]

OdGiOrthoClipperEx::TD_USING ( OdGiOrthoClipper::get  )

◆ TD_USING() [2/2]

OdGiOrthoClipperEx::TD_USING ( OdGiOrthoClipper::set  )

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