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

Public Member Functions

virtual signed int GetCenterView (signed int *pVal)=0
 
virtual signed int GetSensitivity (double *pVal)=0
 
virtual signed int SetCenterView (const signed int val)=0
 
virtual signed int SetSensitivity (const double 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 rotating around an isosurface in the volume via mouse interaction. When the mouse is pressed, a ray is cast into the volume to find the first visible point in the volume from that mouse location. That point is used as a center of rotation. This adaptor does not allow you to rotate beyond 90 degrees off the axis of first rotation so that you do not fly into the dataset by mistake. If you do not want this limitation, use ICPRotateAdaptor and call ICPRotateAdaptor::SetCenterPoint() with the result of an IRenderEngineContext::ShootRayFast() to free up this rotation limitation. Use ILibrary::CreateObject() to create this object.

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

Member Function Documentation

virtual signed int IOrbitAdaptor::GetCenterView ( signed int *  pVal)
pure virtual

Gets the CenterView field and puts it in the variable at address pVal. The default value is H_FALSE. If H_TRUE, the adaptor will pan the point the mouse was pressed to the center of the screen at the start of interaction. Otherwise, no pan will occur.

Parameters
pValThe address of the variable to get the field's value.
virtual signed int IOrbitAdaptor::GetSensitivity ( double *  pVal)
pure virtual

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

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

Sets the CenterView field to val. The default value is H_FALSE. If H_TRUE, the adaptor will pan the point the mouse was pressed to the center of the screen at the start of interaction. Otherwise, no pan will occur.

Parameters
valThe new CenterView value.
virtual signed int IOrbitAdaptor::SetSensitivity ( const double  val)
pure virtual

Sets the Sensitivity field to val. The default value is 0.01.

Parameters
valThe new Sensitivity value.