VisioDevKit  v2.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Properties Friends Pages
VgEAGLBaseView Class Reference

This class serves as a base class for VgEAGLView and VgEAGLView2. More...

Inheritance diagram for VgEAGLBaseView:
Inheritance graph

Instance Methods

(void) - startAnimation
 Responsible for creating the VisioDevKit application. More...
 
(UIImage *) - captureToImage
 
(void) - notifyDidReceiveMemoryWarning
 Notifies the view when the application receives a memory warning from the system. More...
 
(BOOL) - multisample
 Tells the application if multisample is enabled or not. More...
 
(void) - setMultisample:
 enables/disabling multisampling (to reduce anti-aliasing) More...
 
(BOOL) - preserveBackbuffer
 Tells the application if preserveBackbuffer is enabled or not. More...
 
(void) - setPreserveBackbuffer:
 enables/disabling preserveBackbuffer (to be able to use captureToImage) More...
 
(void) - setRenderOnDemand:
 enables/disabling renderOnDemand. More...
 
(BOOL) - renderOnDemand
 Tells the application if renderOnDemand is enabled or not. More...
 

Properties

BOOL mRenderOnDemand
 
BOOL mRenderSuspended
 A Boolean indicating whether the EAGL View is rendered. More...
 
BOOL mUpdateSuspended
 A Boolean indicating whether the EAGL View is updated, this is different from rendering. More...
 
UIInterfaceOrientation mInterfaceOrientation
 The current orientation of the VgEAGLView. More...
 
VgApplication::VgIApplicationmApp
 The entry point to the VisioDevKit. More...
 

Detailed Description

This class serves as a base class for VgEAGLView and VgEAGLView2.

The developer should never subclass this class or allocate this class directly.

Method Documentation

- (UIImage*) captureToImage
- (BOOL) multisample

Tells the application if multisample is enabled or not.

Multisample is available for iOS 4.0 onward. On a VgEAGLView it will be enabled by default on all devices It disabled by default on the simulator due to performance reasons

Returns
YES if multisample is active.
- (void) notifyDidReceiveMemoryWarning

Notifies the view when the application receives a memory warning from the system.

It should be called in the parent UIViewController::didReceiveMemoryWarning

The Apple documentation mentions, "It is strongly recommended that you implement this method. If your application does not release enough memory during low-memory conditions, the system may terminate it outright."

Calling this in your viewController implementation will allow the 3D view to adjust the balance between display-quality and memory consumption.

- (BOOL) preserveBackbuffer

Tells the application if preserveBackbuffer is enabled or not.

Multisample is available for iOS 4.0 onward. On a VgEAGLView it will be enabled by default on all devices It disabled by default on the simulator due to performance reasons

Returns
YES if multisample is active.
- (BOOL) renderOnDemand

Tells the application if renderOnDemand is enabled or not.

Returns
YES if renderOnDemand is active.
Version
2.0.9075
- (void) setMultisample: (BOOL)  pFlag

enables/disabling multisampling (to reduce anti-aliasing)

Remarks
Multisample carries very little performance penanty on devices. On the simulator, there is a small performance penalty. It works on the simulator and gives better results at a slower framerate. You can enable it at any time by doing mapview.multisample = YES
you can activate/deactivate at any time.
on iOS 3 devices, this call does nothing.
Parameters
pFlagYES to enable multisampling.
- (void) setPreserveBackbuffer: (BOOL)  pFlag

enables/disabling preserveBackbuffer (to be able to use captureToImage)

Remarks
this reduces the performance of the VgEAGLView.
Parameters
pFlagYES to preserveBackbuffer.
- (void) setRenderOnDemand: (BOOL)  pFlag

enables/disabling renderOnDemand.

if set to false, the render will be done as fast as possible, possibly consumming too much energy. this function must be called before startAnimation, otherwise it will not have any effect.

Parameters
pFlagYES to enable render on demand.
Version
2.0.9075
- (void) startAnimation

Responsible for creating the VisioDevKit application.

This means it will call VgApplication::VgIApplication::createApplication on your behalf as well as initiating the animation timer responsible for invoking the render scene.

Implemented in VgEAGLView, and VgEAGLView2.

Property Documentation

- VgApplication:
readnonatomicassign

The entry point to the VisioDevKit.

- (UIInterfaceOrientation) mInterfaceOrientation
readwritenonatomicassign

The current orientation of the VgEAGLView.

It is necessary to set this property manually for the VgEAGLView. Whenever this value is updated, the aspect ratio of the VgEAGLView is updated to match the new orientation.

Note
currently landspace view is not fully supported.
- (BOOL) mRenderOnDemand
readwritenonatomicassign
- (BOOL) mRenderSuspended
readwritenonatomicassign

A Boolean indicating whether the EAGL View is rendered.

If NO, the the manipulator will be reset and the EAGL View is rendered. If YES, the EAGL View will not be rendered. By default value is NO.

Remarks
It's important to use the getter/setter interface method (i.e. [myVgEAGLView setRenderSuspended:NO]) for this property to ensure the manipulator is reset.
- (BOOL) mUpdateSuspended
readwritenonatomicassign

A Boolean indicating whether the EAGL View is updated, this is different from rendering.

If NO, view will not be updated (no animation, interpretation of zoom, no loading of new tiles if position changes). View will not be rendered. By default value is NO.

Remarks
It's important to use the getter/setter interface method (i.e. [myVgEAGLView setUpdateSuspended:NO])

The documentation for this class was generated from the following file:
VisioDevKit 2.0, Visioglobe® 2013