MapLink Pro 11.1.1.0.
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
Loading...
Searching...
No Matches
TSL3DInteractionCameraManager Class Referenceabstract
Inheritance diagram for TSL3DInteractionCameraManager:

Detailed Description

This helper class is used to allow the interaction modes to work in either in terms of lat/long/elevation of a look-at position or distance to a look-at position and elevation and rotation relative to the earth surface.

Typically, the mode sets the lat/long/elevation or elevation/rotation/range parameters and then calls the 'setCamera' method. This updates the camera orientation of the drawing surface. The 'getCamera' method may be called to force the camera manager to refresh its internal attributes based upon the current camera parameters of the drawing surface.

Deprecated
Deprecated as of MapLink 11.1. Advised to use MapLink Earth SDK instead.

Public Member Functions

virtual ~TSL3DInteractionCameraManager ()
 
void setCamera ()
 
bool zoom (double percent, bool zoom_in)
 
void altitude (double alt)
 
double altitude ()
 
void getCamera ()
 
double arcElevation () const
 
void arcElevation (double value)
 
double arcRotation () const
 
void arcRotation (double value)
 
TSL3DDrawingSurfacedrawingSurface ()
 
double latitude () const
 
void latitude (double value)
 
double longitude () const
 
void longitude (double value)
 
double range () const
 
void range (double value)
 

Protected Member Functions

 TSL3DInteractionCameraManager (TSL3DDrawingSurface *ds, TSL3DInteractionModeManager *manager)
 
virtual bool getDUExtent (int *x1, int *y1, int *x2, int *y2)=0
 

Protected Attributes

double m_arcElevation
 
double m_arcRotation
 
double m_range
 
double m_latitude
 
double m_longitude
 
double m_altitude
 
TSL3DInteractionModeManagerm_manager
 

Constructor & Destructor Documentation

◆ ~TSL3DInteractionCameraManager()

virtual TSL3DInteractionCameraManager::~TSL3DInteractionCameraManager ( )
virtual

Destructor for camera manager

◆ TSL3DInteractionCameraManager()

TSL3DInteractionCameraManager::TSL3DInteractionCameraManager ( TSL3DDrawingSurface * ds,
TSL3DInteractionModeManager * manager )
protected

Internal only methods - provided by derive class

Member Function Documentation

◆ altitude() [1/2]

double TSL3DInteractionCameraManager::altitude ( )

Get the altitude of the look-at position.

◆ altitude() [2/2]

void TSL3DInteractionCameraManager::altitude ( double alt)

Set the altitude of the look-at position.

◆ arcElevation() [1/2]

double TSL3DInteractionCameraManager::arcElevation ( ) const
inline

Query elevation of the camera in degrees, relative to the horizontal horizon, +ve is up.

◆ arcElevation() [2/2]

void TSL3DInteractionCameraManager::arcElevation ( double value)
inline

Set elevation of the camera in degrees, relative to the horizontal horizon, +ve is up.

◆ arcRotation() [1/2]

double TSL3DInteractionCameraManager::arcRotation ( ) const
inline

Query rotation of the camera in degrees, relative to north, +ve is clockwise.

◆ arcRotation() [2/2]

void TSL3DInteractionCameraManager::arcRotation ( double value)
inline

Set rotation of the camera in degrees, relative to north, +ve is clockwise.

◆ drawingSurface()

TSL3DDrawingSurface * TSL3DInteractionCameraManager::drawingSurface ( )
inline

Query the drawing surface associated with the camera manager.

◆ getCamera()

void TSL3DInteractionCameraManager::getCamera ( )

◆ getDUExtent()

virtual bool TSL3DInteractionCameraManager::getDUExtent ( int * x1,
int * y1,
int * x2,
int * y2 )
protectedpure virtual

◆ latitude() [1/2]

double TSL3DInteractionCameraManager::latitude ( ) const
inline

Query latitude of the look-at position in degrees.

◆ latitude() [2/2]

void TSL3DInteractionCameraManager::latitude ( double value)
inline

Set latitude of the look-at position in degrees.

◆ longitude() [1/2]

double TSL3DInteractionCameraManager::longitude ( ) const
inline

Query longitude of the look-at position in degrees.

◆ longitude() [2/2]

void TSL3DInteractionCameraManager::longitude ( double value)
inline

Set longitude of the look-at position in degrees.

◆ range() [1/2]

double TSL3DInteractionCameraManager::range ( ) const
inline

Query range to the look-at position in metres.

◆ range() [2/2]

void TSL3DInteractionCameraManager::range ( double value)
inline

Query range to the look-at position in metres.

◆ setCamera()

void TSL3DInteractionCameraManager::setCamera ( )

Triggers the Camera Manager to apply the current properties to the associated drawing surface.

◆ zoom()

bool TSL3DInteractionCameraManager::zoom ( double percent,
bool zoom_in )

Zoom the current view in or out, adjusting the range to the look-at position.

Parameters
percentPercentage of current range to zoom
zoom_inTrue if zoom in, false if zoom out.
Returns
true if range successfully changed.

Member Data Documentation

◆ m_altitude

double TSL3DInteractionCameraManager::m_altitude
protected

◆ m_arcElevation

double TSL3DInteractionCameraManager::m_arcElevation
protected

Internal storage for the elevation of the camera orientation. 0 is horizontal relative to the earth's surface at the camera position, +ve up.

◆ m_arcRotation

double TSL3DInteractionCameraManager::m_arcRotation
protected

Internal storage for the rotation of the camera orientation. 0 is horizontal relative pointing North, +ve is clockwise. It is a bearing.

◆ m_latitude

double TSL3DInteractionCameraManager::m_latitude
protected

Internal storage for the latitude of the look-at position.

◆ m_longitude

double TSL3DInteractionCameraManager::m_longitude
protected

Internal storage for the latitude of the look-at position.

◆ m_manager

TSL3DInteractionModeManager* TSL3DInteractionCameraManager::m_manager
protected

◆ m_range

double TSL3DInteractionCameraManager::m_range
protected

Internal storage for the range to the look-at point, in metres.