osgEarth 2.1.1
|
#include <osg/Notify>
#include <osgGA/GUIEventHandler>
#include <osgGA/StateSetManipulator>
#include <osgViewer/Viewer>
#include <osgViewer/ViewerEventHandlers>
#include <osgEarth/MapNode>
#include <osgEarthUtil/EarthManipulator>
#include <osgEarthUtil/AutoClipPlaneHandler>
#include <osgEarthUtil/Controls>
#include <osgEarthSymbology/Color>
#include <osgEarthDrivers/tms/TMSOptions>
Go to the source code of this file.
Functions | |
int | main (int argc, char **argv) |
int main | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 37 of file osgearth_map.cpp.
{ osg::ArgumentParser arguments(&argc,argv); // create the map. Map* map = new Map(); // add a TMS imager layer: TMSOptions imagery; imagery.url() = "http://readymap.org/readymap/tiles/1.0.0/7/"; map->addImageLayer( new ImageLayer("Imagery", imagery) ); // add a TMS elevation layer: TMSOptions elevation; elevation.url() = "http://readymap.org/readymap/tiles/1.0.0/9/"; map->addElevationLayer( new ElevationLayer("Elevation", elevation) ); // make the map scene graph: MapNode* node = new MapNode( map ); // initialize a viewer: osgViewer::Viewer viewer(arguments); viewer.setCameraManipulator( new EarthManipulator ); viewer.setSceneData( node ); // osgEarth benefits from pre-compilation of GL objects in the pager. In newer versions of // OSG, this activates OSG's IncrementalCompileOpeartion in order to avoid frame breaks. viewer.getDatabasePager()->setDoPreCompile( true ); // add some stock OSG handlers: viewer.addEventHandler(new osgViewer::StatsHandler()); viewer.addEventHandler(new osgViewer::WindowSizeHandler()); viewer.addEventHandler(new osgViewer::ThreadingHandler()); viewer.addEventHandler(new osgViewer::LODScaleHandler()); viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet())); viewer.addEventHandler(new osgViewer::HelpHandler(arguments.getApplicationUsage())); return viewer.run(); }