Changeset 6488 for geovis


Ignore:
Timestamp:
Aug 17, 2016 9:00:52 PM (8 years ago)
Author:
ldelgass
Message:

Add verticalDatum override option to addElevationLayer, prep for adding to
protocol.

Location:
geovis/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • geovis/trunk/Renderer.cpp

    r6485 r6488  
    14791479                                 bool enableCache,
    14801480                                 bool visible,
     1481                                 const char *verticalDatum,
    14811482                                 unsigned int minLOD, unsigned int maxLOD)
    14821483{
     
    14961497        layerOpts.visible() = false;
    14971498    }
     1499    // Check for vertical datum override (required for GDAL driver if not using
     1500    // geodetic HAE).
     1501    if (verticalDatum != NULL && strlen(verticalDatum) > 0) {
     1502        layerOpts.verticalDatum() = verticalDatum;
     1503    }
    14981504    layerOpts.minLevel() = minLOD;
    14991505    layerOpts.maxLevel() = maxLOD;
    1500     // XXX: GDAL does not report vertical datum, it should be specified here
    1501     // Common options: geodetic (default), egm96, egm84, egm2008
    1502     //layerOpts.verticalDatum() = "egm96";
    15031506    osgEarth::ElevationLayer *layer = new osgEarth::ElevationLayer(layerOpts);
    15041507    _map->addElevationLayer(layer);
  • geovis/trunk/Renderer.h

    r6404 r6488  
    316316                           bool enableCache = true,
    317317                           bool visible = true,
     318                           const char *verticalDatum = NULL,
    318319                           unsigned int minLOD = 0,
    319320                           unsigned int maxLOD = 23);
  • geovis/trunk/RendererCmd.cpp

    r6422 r6488  
    16961696            }
    16971697        }
     1698        // GDAL does not report vertical datum
     1699        // Options: geodetic (default), egm84, egm96, egm2008
     1700        const char *verticalDatum = NULL;
    16981701        int minLOD = 0;
    16991702        int maxLOD = 23;
     
    17011704            osgEarth::Drivers::GDALOptions opts;
    17021705            opts.url() = url;
    1703             g_renderer->addElevationLayer(name, opts, pos, cache, visible, minLOD, maxLOD);
     1706            g_renderer->addElevationLayer(name, opts, pos, cache, visible, verticalDatum, minLOD, maxLOD);
    17041707        } else if (driver[0] == 't' && strcmp(driver, "tms") == 0) {
    17051708            osgEarth::Drivers::TMSOptions opts;
     
    17071710            //opts.tmsType() = Tcl_GetString(objv[8]);
    17081711            //opts.format() = Tcl_GetString(objv[9]);
    1709             g_renderer->addElevationLayer(name, opts, pos, cache, visible, minLOD, maxLOD);
     1712            g_renderer->addElevationLayer(name, opts, pos, cache, visible, verticalDatum, minLOD, maxLOD);
    17101713        } else if (driver[0] == 'w' && strcmp(driver, "wcs") == 0) {
    17111714            osgEarth::Drivers::WCSOptions opts;
     
    17241727            //opts.srs() = Tcl_GetString(objv[11]);
    17251728            //opts.rangeSubset() = Tcl_GetString(objv[12]);
    1726             g_renderer->addElevationLayer(name, opts, pos, cache, visible, minLOD, maxLOD);
     1729            g_renderer->addElevationLayer(name, opts, pos, cache, visible, verticalDatum, minLOD, maxLOD);
    17271730        } else {
    17281731            Tcl_AppendResult(interp, "unknown elevation driver \"", driver,
Note: See TracChangeset for help on using the changeset viewer.