[osgearth] 01/05: Imported Upstream version 2.8.0+dfsg

Bas Couwenberg sebastic at debian.org
Thu Sep 15 16:21:12 UTC 2016


This is an automated email from the git hooks/post-receive script.

sebastic pushed a commit to branch experimental
in repository osgearth.

commit 39addf96e535b23b9857cdb6779e7e4e54b09fe4
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date:   Thu Sep 15 17:04:20 2016 +0200

    Imported Upstream version 2.8.0+dfsg
---
 docs/source/data.rst                             |  7 +---
 docs/source/faq.rst                              | 37 ++++-------------
 docs/source/releasenotes.rst                     |  2 +-
 docs/source/startup.rst                          |  5 +--
 src/applications/osgearth_conv/osgearth_conv.cpp | 13 ++++++
 src/osgEarth/Version                             |  2 +-
 src/osgEarth/Version.cpp                         | 12 +++---
 src/osgEarthUtil/ExampleResources.cpp            | 17 +++-----
 src/osgEarthUtil/Ocean.cpp                       |  2 +-
 src/osgEarthUtil/Shadowing.cpp                   |  2 +-
 src/osgEarthUtil/Shadowing.frag.glsl             | 27 ++++++++-----
 tests/feature_offset_polygons.earth              | 51 +++++++++++++-----------
 tests/openstreetmap_full.earth                   | 31 +++++++-------
 13 files changed, 99 insertions(+), 109 deletions(-)

diff --git a/docs/source/data.rst b/docs/source/data.rst
index 84ec9b3..2ebb23b 100644
--- a/docs/source/data.rst
+++ b/docs/source/data.rst
@@ -10,10 +10,6 @@ Help us add useful sources of Free data to this list.
 
     * `ReadyMap.org`_ - Free 15m imagery, elevation, and street tiles for osgEarth developers
     
-    * MapQuest_ - MapQuest open aerial imagery and rasterized OpenStreetMap layers
-    
-    * `Bing Maps`_ - Microsoft's worldwide imagery and map data ($)
-    
     * `USGS National Map`_ - Elevation, orthoimagery, hydrography, geographic names, boundaries,
       transportation, structures, and land cover products for the US.
     
@@ -27,6 +23,8 @@ Help us add useful sources of Free data to this list.
     * `Natural Earth`_ - Free vector and raster map data at various scales
     
     * `Virtual Terrain Project`_ - Various sources for whole-earth imagery
+    
+    * `Bing Maps`_ - Microsoft's worldwide imagery and map data ($)
         
         
 **Elevation data**
@@ -54,7 +52,6 @@ Help us add useful sources of Free data to this list.
 .. _GEBCO:                      http://www.gebco.net/
 .. _GLCF:                       http://glcf.umiacs.umd.edu/data/srtm/
 .. _OpenStreetMap:              http://openstreetmap.org
-.. _MapQuest:                   http://developer.mapquest.com/web/products/open/map
 .. _NASA EOSDIS:                http://earthdata.nasa.gov/about-eosdis/system-description/global-imagery-browse-services-gibs
 .. _NASA BlueMarble:            http://visibleearth.nasa.gov/view_cat.php?categoryID=1484
 .. _Natural Earth:              http://www.naturalearthdata.com/
diff --git a/docs/source/faq.rst b/docs/source/faq.rst
index 218267e..1d1d777 100644
--- a/docs/source/faq.rst
+++ b/docs/source/faq.rst
@@ -24,17 +24,9 @@ How do I place a 3D model on the map?
         ...
         xform->setTerrain( mapNode->getTerrain() );
         ...
-        GeoPoint point(srs, -121.0, 34.0, 1000.0, ALTMODE_ABSOLUTE);
+        GeoPoint point(srs, -121.0, 34.0);
         xform->setPosition(point);
 
-    A lower-level approach is to make a ``osg::Matrix`` so you can position
-    a model using your own ``osg::MatrixTransform``::
-    
-        GeoPoint point(latLong, -121.0, 34.0, 1000.0, ALTMODE_ABSOLUTE);
-        osg::Matrix matrix;
-        point.createLocalToWorld( matrix );
-        myMatrixTransform->setMatrix( matrix );
-
 
 I added a node, but it has no texture/lighting/etc. in osgEarth. Why?
 .....................................................................
@@ -77,30 +69,16 @@ How do I set the resolution of terrain tiles?
 .............................................
 
     Each tile is a grid of vertices. The number of vertices can vary depending on source data
-    and settings. By default (when you have no elevation data) it is an 15x15 grid, tessellated
+    and settings. By default (when you have no elevation data) it is an 17x17 grid, tessellated
     into triangles.
     
-    If you do have elevation data, osgEarth will use the tile size of the first elevation layer 
-    to decide on the overall tile size for the terrain.
-
-    You can control this in a couple ways. If you have elevation data, you can set the
-    ``tile_size`` property on the elevation layer. For example::
-    
-        <elevation name="srtm" driver="gdal">
-            <url>...</url>
-            <tile_size>31</tile_size>
-        </elevation>
-        
-    That will read data as a grid of 31x31 vertices. If this is your first elevation layer,
-    osgEarth will render tiles at a resolution of 31x31.
-
-    Or, you can expressly set the terrain's tile size overall by using the Map options.
+    You can expressly set the terrain's tile size by using the Map options.
     osgEarth will then resample all elevation data to the size you specify::
 
         <map>
             <options>
                 <terrain>
-                    <tile_size>32</tile_size> 
+                    <tile_size>65</tile_size> 
                     ...
 
 
@@ -128,7 +106,8 @@ Does osgEarth work with VirtualPlanetBuilder?
 	  plug-in framework.
 
 	osgEarth has a *VPB driver* for "scraping" elevation and imagery tiles from a VPB model.
-	See the ``vpb_earth_bayarea.earth`` example in the repo for usage.
+    Confiugration of this driver is quite tricky and requires you to understand the details
+    of how VPB models are organized. You're on your own.
 	
 	**Please Note** that this driver only exists as a **last resort** for people that have a VPB
 	model but no longer have access to the source data from which it was built. If at all
@@ -154,8 +133,8 @@ Can osgEarth load TerraPage or MetaFlight?
 Community and Support
 ---------------------
 
-What is the "best practice" for using GitHub?
-.............................................
+What is the best practice for using GitHub?
+...........................................
 
 	The best way to work with the osgEarth repository is to make your own clone on GitHub
 	and to work from that clone. Why not work directly against the main repository? You
diff --git a/docs/source/releasenotes.rst b/docs/source/releasenotes.rst
index c807ac7..194bb24 100644
--- a/docs/source/releasenotes.rst
+++ b/docs/source/releasenotes.rst
@@ -1,7 +1,7 @@
 Release Notes
 =============
 
-Version 2.8 DRAFT (September 2016)
+Version 2.8 (September 2016)
 ---------------------------
 
 * Disabled feature tesselation tiling in BuildGeometryFilter unless max_polygon_tiling_angle is explicitly set.  Cropping code was causing issues especially around the poles.  Need to come up with a more general solution in the future.
diff --git a/docs/source/startup.rst b/docs/source/startup.rst
index a2c1302..0062926 100644
--- a/docs/source/startup.rst
+++ b/docs/source/startup.rst
@@ -31,7 +31,7 @@ Get the Dependencies
 
 **Required dependencies**
 
-    * OpenSceneGraph_ 3.2.1 or later
+    * OpenSceneGraph_ 3.4 or later
     * GDAL_ 1.9.2 or later - Geospatial Data Abstraction Layer
     * CURL_ - HTTP transfer library (comes with OpenSceneGraph_ 3rd party library distros)
       
@@ -45,9 +45,6 @@ Get the Dependencies
     * GEOS_ 3.2.0 or later - C++ library for topological operations.
       osgEarth uses GEOS to perform various geometry operations like buffering and intersections.
       If you plan to use vector feature data in osgEarth, you probably want this.
-
-    * LevelDB_ - Google's embedded key/value store. Include this if you want to build
-      osgEarth's optional "leveldb" cache driver.
 	
 	* SQLite_ - Self-contained, serverless, zero-configuration, transactional SQL database engine.
 	  Used for accessing sqlite/mbtiles datasets. You may need these tips to create the necessary
diff --git a/src/applications/osgearth_conv/osgearth_conv.cpp b/src/applications/osgearth_conv/osgearth_conv.cpp
index e6fb7b3..052e3b3 100644
--- a/src/applications/osgearth_conv/osgearth_conv.cpp
+++ b/src/applications/osgearth_conv/osgearth_conv.cpp
@@ -195,6 +195,7 @@ struct ProgressReporter : public osgEarth::ProgressCallback
  *      --in driver gdal
  *      --in url world.tif
  *      --out driver mbtiles
+ *      --out format image/png
  *      --out filename world.db
  *
  * The "in" properties come from the GDALOptions getConfig method. The
@@ -345,6 +346,12 @@ main(int argc, char** argv)
         if (heightFields)
         {
             ElevationLayer* layer = new ElevationLayer(ElevationLayerOptions(), input.get());
+            Status layerStatus = layer->open();
+            if (layerStatus.isError())
+            {
+                OE_WARN << "Failed to create input ElevationLayer " << layerStatus.message() << std::endl;
+                return -1;
+            }
             if ( !layer->getProfile() || !layer->getProfile()->isOK() )
             {
                 OE_WARN << LC << "Input profile is not valid" << std::endl;
@@ -355,6 +362,12 @@ main(int argc, char** argv)
         else
         {
             ImageLayer* layer = new ImageLayer(ImageLayerOptions(), input.get());
+            Status layerStatus = layer->open();
+            if (layerStatus.isError())
+            {
+                OE_WARN << "Failed to create input ImageLayer " << layerStatus.message() << std::endl;
+                return -1;
+            }
             if ( !layer->getProfile() || !layer->getProfile()->isOK() )
             {
                 OE_WARN << LC << "Input profile is not valid" << std::endl;
diff --git a/src/osgEarth/Version b/src/osgEarth/Version
index 51e55d5..fce8cca 100644
--- a/src/osgEarth/Version
+++ b/src/osgEarth/Version
@@ -31,7 +31,7 @@ extern "C" {
 #define OSGEARTH_MINOR_VERSION    8
 #define OSGEARTH_PATCH_VERSION    0
 #define OSGEARTH_SOVERSION        0
-#define OSGEARTH_RC_VERSION       2
+#define OSGEARTH_RC_VERSION       0
 #define OSGEARTH_DEVEL_VERSION    0     // 0 = release; >0 = interim devel version
 
 /* Convenience macro that can be used to decide whether a feature is present or not i.e.
diff --git a/src/osgEarth/Version.cpp b/src/osgEarth/Version.cpp
index be752aa..38f60de 100644
--- a/src/osgEarth/Version.cpp
+++ b/src/osgEarth/Version.cpp
@@ -28,7 +28,7 @@
 #    define GET_SHA ""
 #endif
 
-#ifdef OSGEARTH_DEVEL_VERSION
+#if (OSGEARTH_DEVEL_VERSION > 0)
 #    define isDevelopmentVersion " DEVELOPMENT "
 #else
 #    define isDevelopmentVersion " "
@@ -44,22 +44,20 @@ const char* osgEarthGetVersion()
     {
         if (OSGEARTH_RC_VERSION == 0 )
         {
-            sprintf(osgearth_version,"%d.%d.%d%s(%s)",
+            sprintf(osgearth_version,"%d.%d.%d%s",
                 OSGEARTH_MAJOR_VERSION,
                 OSGEARTH_MINOR_VERSION,
                 OSGEARTH_PATCH_VERSION,
-                isDevelopmentVersion,
-                GET_SHA );
+                isDevelopmentVersion);
         }
         else
         {
-            sprintf(osgearth_version,"%d.%d.%d RC%d%s(%s)",
+            sprintf(osgearth_version,"%d.%d.%d RC%d%s",
                 OSGEARTH_MAJOR_VERSION,
                 OSGEARTH_MINOR_VERSION,
                 OSGEARTH_PATCH_VERSION,
                 OSGEARTH_RC_VERSION,
-                isDevelopmentVersion,
-                GET_SHA );
+                isDevelopmentVersion );
         }
 
         osgearth_version_init = 0;
diff --git a/src/osgEarthUtil/ExampleResources.cpp b/src/osgEarthUtil/ExampleResources.cpp
index bc0feef..9763759 100644
--- a/src/osgEarthUtil/ExampleResources.cpp
+++ b/src/osgEarthUtil/ExampleResources.cpp
@@ -368,21 +368,11 @@ MapNodeHelper::parse(MapNode*             mapNode,
     bool useCoords     = args.read("--coords") || useMGRS || useDMS || useDD;
 
     bool useAutoClip   = args.read("--autoclip");
-    bool animateSky    = args.read("--animate-sky");
     bool showActivity  = args.read("--activity");
     bool useLogDepth   = args.read("--logdepth");
     bool useLogDepth2  = args.read("--logdepth2");
     bool kmlUI         = args.read("--kmlui");
 
-    if (args.read("--verbose"))
-        osgEarth::setNotifyLevel(osg::INFO);
-    
-    if (args.read("--quiet"))
-        osgEarth::setNotifyLevel(osg::FATAL);
-
-    float ambientBrightness = 0.2f;
-    args.read("--ambientBrightness", ambientBrightness);
-
     std::string kmlFile;
     args.read( "--kml", kmlFile );
 
@@ -555,7 +545,8 @@ MapNodeHelper::parse(MapNode*             mapNode,
         OE_INFO << LC << "...found " << imageLayers.size() << " image layers." << std::endl;
     }
 
-    // Install vertical scaler
+    // Install vertical scaler.
+    // TODO: deprecate this, or move it to an extension.
     if ( !vertScaleConf.empty() )
     {
         mapNode->getTerrainEngine()->addEffect( new VerticalScale(vertScaleConf) );
@@ -710,11 +701,13 @@ MapNodeHelper::usage() const
         << "  --ortho                       : use an orthographic camera\n"
         << "  --logdepth                    : activates the logarithmic depth buffer\n"
         << "  --logdepth2                   : activates logarithmic depth buffer with per-fragment interpolation\n"
+        << "  --shadows                     : activates model layer shadows\n"
         << "  --images [path]               : finds and loads image layers from folder [path]\n"
         << "  --image-extensions [ext,...]  : with --images, extensions to use\n"
         << "  --out-earth [file]            : write the loaded map to an earth file\n"
         << "  --uniform [name] [min] [max]  : create a uniform controller with min/max values\n"
-        << "  --path [file]                 : load and playback an animation path\n";
+        << "  --path [file]                 : load and playback an animation path\n"
+        << "  --extension [name]            : loads a named extension\n";
 }
 
 
diff --git a/src/osgEarthUtil/Ocean.cpp b/src/osgEarthUtil/Ocean.cpp
index 36955ab..ffd6c30 100644
--- a/src/osgEarthUtil/Ocean.cpp
+++ b/src/osgEarthUtil/Ocean.cpp
@@ -108,7 +108,7 @@ OceanNode::traverse(osg::NodeVisitor& nv)
             _srs->transformFromWorld(eye, local, &altitude);
 
             // check against max altitude:
-            if ( _options.maxAltitude().isSet() && altitude > *_options.maxAltitude() )
+            if ( altitude > _options.maxAltitude().get() )
                 return;
             
             // Set the near clip plane to account for an ocean sphere.
diff --git a/src/osgEarthUtil/Shadowing.cpp b/src/osgEarthUtil/Shadowing.cpp
index 320742c..bc3333c 100644
--- a/src/osgEarthUtil/Shadowing.cpp
+++ b/src/osgEarthUtil/Shadowing.cpp
@@ -40,7 +40,7 @@ using namespace osgEarth::Util;
 ShadowCaster::ShadowCaster() :
 _size         ( 2048 ),
 _texImageUnit ( 7 ),
-_blurFactor   ( 0.0f ),
+_blurFactor   ( 0.001f ),
 _color        ( 0.4f ),
 _traversalMask( ~0 )
 {
diff --git a/src/osgEarthUtil/Shadowing.frag.glsl b/src/osgEarthUtil/Shadowing.frag.glsl
index 4fe5770..dc9e8c4 100644
--- a/src/osgEarthUtil/Shadowing.frag.glsl
+++ b/src/osgEarthUtil/Shadowing.frag.glsl
@@ -15,7 +15,12 @@ in vec4 oe_shadow_coord[$OE_SHADOW_NUM_SLICES];
 
 #define OE_SHADOW_NUM_SAMPLES 16
 
-const vec2 oe_shadow_samples[OE_SHADOW_NUM_SAMPLES] = vec2[]( vec2( -0.942016, -0.399062 ), vec2( 0.945586, -0.768907 ), vec2( -0.094184, -0.929389 ), vec2( 0.344959, 0.293878 ), vec2( -0.915886, 0.457714 ), vec2( -0.815442, -0.879125 ), vec2( -0.382775, 0.276768 ), vec2( 0.974844, 0.756484 ), vec2( 0.443233, -0.975116 ), vec2( 0.53743, -0.473734 ), vec2( -0.264969, -0.41893 ), vec2( 0.791975, 0.190909 ), vec2( -0.241888, 0.997065 ), vec2( -0.8141, 0.914376 ), vec2( 0.199841, 0.786414 ), [...]
+const vec2 oe_shadow_samples[16] = vec2[](
+    vec2( -0.942016, -0.399062 ), vec2( 0.945586, -0.768907 ), vec2( -0.094184, -0.929389 ), vec2( 0.344959, 0.293878 ),
+    vec2( -0.915886, 0.457714 ), vec2( -0.815442, -0.879125 ), vec2( -0.382775, 0.276768 ), vec2( 0.974844, 0.756484 ),
+    vec2( 0.443233, -0.975116 ), vec2( 0.53743, -0.473734 ), vec2( -0.264969, -0.41893 ), vec2( 0.791975, 0.190909 ),
+    vec2( -0.241888, 0.997065 ), vec2( -0.8141, 0.914376 ), vec2( 0.199841, 0.786414 ), vec2( 0.143832, -0.141008 )
+);
 
 float oe_shadow_rand(vec2 co)
 {
@@ -32,15 +37,15 @@ vec2 oe_shadow_rot(vec2 p, float a)
 float oe_shadow_multisample(in vec3 c, in float refvalue, in float blur)
 {
     float shadowed = 0.0;
-    float a = 6.283185 * oe_shadow_rand(c.xy);
-    vec4 b = vec4(oe_shadow_rot(vec2(1,0),a), oe_shadow_rot(vec2(0,1),a));
+    float randomAngle = 6.283185 * oe_shadow_rand(c.xy);
     for(int i=0; i<OE_SHADOW_NUM_SAMPLES; ++i)
     {
-        vec2 off = oe_shadow_samples[i];
-        off = vec2(dot(off,b.xz), dot(off,b.yw));
+        vec2 off = oe_shadow_rot(oe_shadow_samples[i], randomAngle);
         vec3 pc = vec3(c.xy + off*blur, c.z);
         float depth = texture(oe_shadow_map, pc).r;
-        if ( depth < 1.0 && depth < refvalue ) {
+        
+        if (depth < 1.0 && depth < refvalue )
+        {
            shadowed += 1.0;
         }
     }
@@ -69,11 +74,11 @@ void oe_shadow_fragment(inout vec4 color)
         vec3 coord = vec3(c.x, c.y, float(i));
 
         // TODO: This causes an NVIDIA error (DUI_foreachId) - disable for now.
-        //if ( oe_shadow_blur > 0.0 )
-        //{
-        //    factor = min(factor, oe_shadow_multisample(coord, c.z-bias, oe_shadow_blur));
-        //}
-        //else
+        if ( oe_shadow_blur > 0.0 )
+        {
+            factor = min(factor, oe_shadow_multisample(coord, c.z-bias, oe_shadow_blur));
+        }
+        else
         {
             //float depth = texture(oe_shadow_map, coord).r;
             depth = texture(oe_shadow_map, coord).r;
diff --git a/tests/feature_offset_polygons.earth b/tests/feature_offset_polygons.earth
index e6ee16e..2c952fc 100644
--- a/tests/feature_offset_polygons.earth
+++ b/tests/feature_offset_polygons.earth
@@ -1,34 +1,34 @@
 <!--
 osgEarth Sample
-This one demonstrates use of the "terrainshader" extension to use 
+This one demonstrates use of the "terrainshader" extension to use
 GLSL to affect a polygon offset effect.
 -->
 
 <map name="Feature Overlay Demo" type="geocentric" version="2">
-    
+
     <options>
         <lighting>false</lighting>
         <overlay_blending>false</overlay_blending>
         <terrain min_lod="8"/>
     </options>
-    
+
     <terrainshader>
         <description>
             A GLSL snippet that pushes the terrain back to prevent high-altitude z fighting.
-        </description>          
+        </description>
         <code>
             <![CDATA[
                 #version 110
                 #pragma vp_entryPoint dp_vert
                 #pragma vp_location   vertex_view
-                
+
                 void dp_vert(inout vec4 v)
                 {
                     const float R    = 6371000.0;      // Approximate radius of the earth
                     const float dmin = 100000.0;       // Minimum vertex distance at which to apply effect
                     const float dmax = R;              // Vertex distance at which to apply maximum effect
                     const float maxOffset = 250000.0;  // Maximum offset (applied at dmax)
-                    
+
                     float d = length(v.xyz);
                     float t = clamp( (d-dmin)/(dmax-dmin), 0.0, 1.0 );
                     float offset = t*maxOffset;
@@ -36,15 +36,15 @@ GLSL to affect a polygon offset effect.
                     v.xyz = v.xyz + n*offset;
                 }
             ]]>
-        </code>         
+        </code>
     </terrainshader>
 
     <image name="world" driver="gdal">
         <url>../data/world.tif</url>
     </image>
-    
+
     <model name="countries" driver="feature_geom">
-                          
+
         <features name="states" driver="ogr">
             <url>../data/world.shp</url>
             <filters>
@@ -52,57 +52,62 @@ GLSL to affect a polygon offset effect.
                 <buffer distance="-0.05"/>
             </filters>
         </features>
-        
-        <styles>        
+
+        <styles>
             <style type="text/css">
                 p1 {
                    fill:               #ffff8066;
-                }       
+                   render-transparent: true;
+                }
                 p2 {
                    fill:               #80ffff66;
-                }   
+                   render-transparent: true;
+                }
                 p3 {
                    fill:               #ff80ff66;
-                }       
+                   render-transparent: true;
+                }
                 p4 {
                    fill:               #ff808066;
-                }     
+                   render-transparent: true;
+                }
                 p5 {
                    fill:               #80ff8066;
-                }                                      
+                   render-transparent: true;
+                }
             </style>
-        
+
             <selector class="p1">
                 <query>
                     <expr><![CDATA[ POP_CNTRY <= 14045470 ]]></expr>
                 </query>
             </selector>
-        
+
             <selector class="p2">
                 <query>
                     <expr><![CDATA[ POP_CNTRY > 14045470 and POP_CNTRY <= 43410900 ]]></expr>
                 </query>
             </selector>
-            
+
             <selector class="p3">
                 <query>
                     <expr><![CDATA[ POP_CNTRY > 43410900 and POP_CNTRY <= 97228750 ]]></expr>
                 </query>
             </selector>
-            
+
             <selector class="p4">
                 <query>
                     <expr><![CDATA[ POP_CNTRY > 97228750 and POP_CNTRY <= 258833000 ]]></expr>
                 </query>
             </selector>
-            
+
             <selector class="p5">
                 <query>
                     <expr><![CDATA[ POP_CNTRY > 258833000 ]]></expr>
                 </query>
             </selector>
-            
+
         </styles>
-        
+
     </model>
 </map>
diff --git a/tests/openstreetmap_full.earth b/tests/openstreetmap_full.earth
index 2efaa2c..97cc147 100644
--- a/tests/openstreetmap_full.earth
+++ b/tests/openstreetmap_full.earth
@@ -81,10 +81,11 @@ You must have the mapnik vector tiles driver built by including the protobuf lib
                 }
 
                 buildings {
-                  extrusion-height:      Math.random()*30.0 + 5.0;
+                  extrusion-height:      getBuildingHeight();
                   extrusion-flatten:     true;
                   extrusion-wall-style:  building-wall;
                   extrusion-roof-style:  building-rooftop;
+                  altitude-clamping:     terrain;
                 }            
 
                 building-wall {
@@ -160,6 +161,20 @@ You must have the mapnik vector tiles driver built by including the protobuf lib
                     }
                     return "";
                 }
+                
+                function getBuildingHeight() {                    
+					if ("height" in feature.properties) {
+						var h = feature.properties["height"].replace('m','');
+						return Math.max(h, 4.0);
+					} else if ("building:height" in feature.properties) {
+						var h = feature.properties["building:height"].replace('m','');
+						return Math.max(h, 4.0);
+					} else if ("building:levels" in feature.properties){
+						var l = feature.properties["building:levels"];
+						return Math.max(l * 4.0, 4.0);
+					}
+					return Math.floor((Math.random() * 5.0) + 4.0);
+                }
               ]]>
             </script>
 
@@ -219,21 +234,9 @@ You must have the mapnik vector tiles driver built by including the protobuf lib
     </image>
 
 
-
-<!--
-    <image name="readymap_streets" driver="tms">
-        <url>http://readymap.org/readymap/tiles/1.0.0/119/</url>
-    </image>
--->
-
-
     <elevation name="readymap_elevation" driver="tms">
         <url>http://readymap.org/readymap/tiles/1.0.0/116/</url>
     </elevation>
     
-    
-    <external>
-        <sky hours="20.0"/>    
-    </external>
-  
+    <xi:include href="viewpoints.xml"/>
 </map>

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/osgearth.git



More information about the Pkg-grass-devel mailing list