VisioMove SDK (iOS)  2.1.22
VgApplication::VgIManipulatorManager Class Referenceabstract

Public Member Functions

virtual ~VgIManipulatorManager ()
 
virtual bool selectManipulator (const std::string &pName)=0
 
virtual std::string getCurrentManipulator () const =0
 
virtual VgApplication::VgManipulatoreditManipulatorObject (const std::string &pManipulatorName)=0
 

Protected Member Functions

 VgIManipulatorManager ()
 

Detailed Description

The VgIManipulatorManager interface is used to choose the way the user will interact with the Open GL surface.

Supported manipulators Currently, the following manipulators are supported:

  • "2D"
  • "3D"
  • "animation"
  • "simpleGesture"
  • "simpleTrackball"

For example, the "3D" manipulator supports various user-interactions on a touch-screen :

  • move forward/backward : drag vertically with only one finger on the screen
  • look right/left : drag horizontally with only one finger on the screen
  • zoom in/out : Move two fingers in the opposite direction. Tip : on iOS Simulator, you can reproduce this by dragging while pressing "Option key" (⌥)
  • look up/down : Move vertically two fingers in the same direction. Tip: on iOS Simulator, you can reproduce the zoom by dragging while pressing "Command key" (⌘)

The below code snippets demonstrates how to select the "3D" manipulator.

bool lSuccess = mVgApp->editManipulatorManager()->selectManipulator("3D");
Version
2.1.0 updated documentation

Constructor & Destructor Documentation

VgApplication::VgIManipulatorManager::VgIManipulatorManager ( )
inlineprotected

Constructor.

virtual VgApplication::VgIManipulatorManager::~VgIManipulatorManager ( )
inlinevirtual

Member Function Documentation

virtual VgApplication::VgManipulator* VgApplication::VgIManipulatorManager::editManipulatorObject ( const std::string &  pManipulatorName)
pure virtual

Returns a VgApplication::VgManipulator instance given its name. It returns NULL if the specified manipulator has no public interface.

Parameters
pManipulatorNameName of the manipulator to retrieve.
Returns
A VgApplication::VgManipulator pointer or NULL.
Version
2.0

Referenced by ~VgIManipulatorManager().

virtual std::string VgApplication::VgIManipulatorManager::getCurrentManipulator ( ) const
pure virtual

Returns the current manipulator's name, should be called after VgEngine::VgIDatabase::selectDataset()

The default manipulator for maps is the 2D manipulator, it can be different for other datasets.

Version
2.0
2.1.3 added note on default manipulator.

Referenced by ~VgIManipulatorManager().

virtual bool VgApplication::VgIManipulatorManager::selectManipulator ( const std::string &  pName)
pure virtual

Selects the current manipulator.

Having an active manipulator is almost always desired to provide the user with a mechanism to interact with the scene. Interaction is handled intuitively for the various hardware. For touch-screen devices, the view can be manipulated by dragging a finger. For other devices, view manipulation can be detected via the keypad.

Parameters
pNameThe name of the manipulator. Supported manipulators are: "2D", "3D", "animation", "simpleGesture", "simpleTrackball"
Remarks
The default manipulator at startup depends on what is defined within the dataset configuration. For more information regarding the configuring dataset, see Data bundle configuration.

Referenced by ~VgIManipulatorManager().


The documentation for this class was generated from the following file:
VisioMove 2.1.22, Visioglobe® 2016