Fovia's C++ Client/Server API
Public Member Functions | List of all members
IFHCutAdaptor Struct Referenceabstract
Inheritance diagram for IFHCutAdaptor:
IMouseAdaptor IRoot

Public Member Functions

virtual signed int GetCutType (ENUM_FHC_MODE *pVal)=0
 
virtual signed int GetDragPoints (POINT *pValues)=0
 
virtual signed int GetNumDragPoints (unsigned int *pVal)=0
 
virtual signed int GetType (ENUM_SEGMENTATION_TYPE *pVal)=0
 
virtual signed int SetCutType (const ENUM_FHC_MODE val)=0
 
virtual signed int SetType (const ENUM_SEGMENTATION_TYPE val)=0
 
- Public Member Functions inherited from IMouseAdaptor
virtual signed int AskInterface (const BGUID *piid, IRoot **ppr)=0
 
virtual signed int DecRef ()=0
 
virtual signed int IncRef ()=0
 
virtual signed int MouseClicked (signed int x, signed int y)=0
 
virtual signed int MouseDragged (signed int x, signed int y)=0
 
virtual signed int MouseEntered (signed int x, signed int y)=0
 
virtual signed int MouseExited (signed int x, signed int y)=0
 
virtual signed int MouseManuallyMoved (signed int offsetX, signed int offsetY)=0
 
virtual signed int MouseMoved (signed int x, signed int y)=0
 
virtual signed int MousePressed (signed int x, signed int y)=0
 
virtual signed int MouseReleased (signed int x, signed int y)=0
 
virtual signed int SetRenderParamsReciever (IRenderParamsReceiver *pReceiver)=0
 
- Public Member Functions inherited from IRoot
template<class T >
signed int AskInterface (T **pp)
 

Detailed Description

Adaptor for free hand cut segmentation via mouse interaction. While the mouse is dragged, each mouse point is captured. Then, when the mouse is released, all the points are used to create a polygon that is the shape to project into the volume for the cutting operation. See IVolumeSegmentationContext::FreeHandCut() for more information about this segmentation technique. Use ILibrary::CreateObject() to create this object.

Listens to: MousePressed(), MouseDragged(), MouseReleased()

Member Function Documentation

virtual signed int IFHCutAdaptor::GetCutType ( ENUM_FHC_MODE pVal)
pure virtual

Gets the CutType field and puts it in the variable at address pVal. The default value is FHC_WHOLE_VOLUME.

Parameters
pValThe address of the variable to get the field's value.
virtual signed int IFHCutAdaptor::GetDragPoints ( POINT pValues)
pure virtual

Returns the current collection of drag points into the buffer allocated at memory adress pValues. Note that the caller of this function is expected to allocate the buffer.

Parameters
pValuesThe address of the buffer of POINTs that get the current collection of drag points.
virtual signed int IFHCutAdaptor::GetNumDragPoints ( unsigned int *  pVal)
pure virtual

Returns the current number of collected drag points into the variable at address pVal.

Parameters
pValThe address of the variable to receive the current number of collected drag points.
virtual signed int IFHCutAdaptor::GetType ( ENUM_SEGMENTATION_TYPE pVal)
pure virtual

Gets the Type field and puts it in the variable at address pVal. The default value is SEGMENTATION_TYPE_NEGATIVE.

Parameters
pValThe address of the variable to get the field's value.
virtual signed int IFHCutAdaptor::SetCutType ( const ENUM_FHC_MODE  val)
pure virtual

Sets the CutType field to val. The default value is FHC_WHOLE_VOLUME.

Parameters
valThe new CutType value.
virtual signed int IFHCutAdaptor::SetType ( const ENUM_SEGMENTATION_TYPE  val)
pure virtual

Sets the Type field to val. The default value is SEGMENTATION_TYPE_NEGATIVE.

Parameters
valThe new Type value.