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

#include <GiSelectProc.h>

Inheritance diagram for OdGiSelectProc:
OdGiConveyorNode OdRxObject

Public Types

enum  { kCheckMarkerOnChange = 1 , kCheckMarkerOnViewModeChange = 2 , kCheckMarkerFinish = 0x80000000 }
 

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdGiSelectProc)
 
virtual void set (const OdGePoint2d *pPoints, OdUInt32 nPoints, OdGsView::SelectionMode mode, OdGsSelectionReactor *pReactor)=0
 
virtual void get (OdGePoint2dArray &points, OdGsView::SelectionMode &mode)=0
 
virtual void check_n_fire_selected (OdUInt32 flags=0)=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
 

Static Public Member Functions

static bool supportsSubentitySelection (const OdGiViewport *pView, OdGsView::SelectionMode mode, OdGsSelectionReactor *pReactor)
 
- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 

Additional Inherited Members

- Protected Member Functions inherited from OdGiConveyorNode
 OdGiConveyorNode ()
 

Detailed Description

<group OdGi_Classes> This class implements conveyor nodes performing selections.

Remarks

Behavior of this node depends on the selection mode.
If the mode is "fence", the points specify polyline vertices. If the mode is "crossing" or "window", the points specify polygon vertices. If exactly two points are specified, the polygon is rectangle, with the points opposite vertices.

For any input primitive, this node performs the following actions:

  1. It checks for primitive intersections with the polygon border.
  2. If intersections are found, the node MARKS current drawable, and stops to handle the primitive.
  3. If the mode is mode is "crossing", and the primitive is inside the polygon, the node node MARKS the current drawable and stops to handle the primitive.
  4. If the mode is "window", and primitive is outside the polygon, the node MARKS the current drawable and stops to handle the primitive.

To MARK the current drawable is means to currentDrawableDesc()->markBySelection(true). If the drawable is neither a compound object nor uses nesting, means currentDrawableDesc()->markToSkip(true)

This conveyor node is used for implementation OdGsBaseVectorizeView::select() and does not produce any output.

Definition at line 67 of file GiSelectProc.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
kCheckMarkerOnChange 
kCheckMarkerOnViewModeChange 
kCheckMarkerFinish 

Definition at line 70 of file GiSelectProc.h.

Member Function Documentation

◆ check_n_fire_selected()

virtual void OdGiSelectProc::check_n_fire_selected ( OdUInt32  flags = 0)
pure virtual

◆ get()

virtual void OdGiSelectProc::get ( OdGePoint2dArray points,
OdGsView::SelectionMode mode 
)
pure virtual

◆ ODRX_DECLARE_MEMBERS()

OdGiSelectProc::ODRX_DECLARE_MEMBERS ( OdGiSelectProc  )

◆ set()

virtual void OdGiSelectProc::set ( const OdGePoint2d pPoints,
OdUInt32  nPoints,
OdGsView::SelectionMode  mode,
OdGsSelectionReactor pReactor 
)
pure virtual

◆ setDeviation() [1/2]

virtual void OdGiSelectProc::setDeviation ( const OdGeDoubleArray deviations)
pure virtual

Sets max deviation for curve tesselation.

◆ setDeviation() [2/2]

virtual void OdGiSelectProc::setDeviation ( const OdGiDeviation pDeviation)
pure virtual

Sets deviation object to obtain max deviation for curve tesselation.

◆ setDrawContext()

virtual void OdGiSelectProc::setDrawContext ( OdGiConveyorContext pDrawCtx)
pure virtual

Sets the draw context object (to access to traits, etc).

◆ supportsSubentitySelection()

static bool OdGiSelectProc::supportsSubentitySelection ( const OdGiViewport pView,
OdGsView::SelectionMode  mode,
OdGsSelectionReactor pReactor 
)
static

Checks is selection reactor and selection mode supports subentity selection.


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