From 831f406d17d386f567ea41f0a47c2b19e579a725 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Wed, 25 May 2016 10:26:35 +0100 Subject: [PATCH] Fixed shadows warnings --- src/osgTerrain/GeometryPool.cpp | 54 ++++++++++++++++------------- src/osgTerrain/TerrainTechnique.cpp | 4 +-- src/osgTerrain/TerrainTile.cpp | 20 +++++------ 3 files changed, 41 insertions(+), 37 deletions(-) diff --git a/src/osgTerrain/GeometryPool.cpp b/src/osgTerrain/GeometryPool.cpp index 4baa4abf5..1a430496a 100644 --- a/src/osgTerrain/GeometryPool.cpp +++ b/src/osgTerrain/GeometryPool.cpp @@ -149,9 +149,6 @@ osg::ref_ptr GeometryPool::getOrCreateGeometry(osgTerrain::Terra LocationCoords locationCoords; locationCoords.reserve(numVertices); - osg::Vec3d pos(0.0, 0.0, 0.0); - osg::Vec3d normal(0.0, 0.0, 1.0); - osg::Vec2 delta(1.0f/static_cast(nx), 1.0f/static_cast(ny)); // pass in the delta texcoord per texel via the color array (*colours)[0].x() = c_mult; @@ -166,30 +163,37 @@ osg::ref_ptr GeometryPool::getOrCreateGeometry(osgTerrain::Terra matrix = locator->getTransform(); } + double skirtHeight = -1.0; + // compute the size of the skirtHeight - osg::Vec3d bottom_left(0.0,0.0,0.0); - osg::Vec3d top_right(1.0,1.0,0.0); - - // transform for unit coords to local coords of the tile - bottom_left = bottom_left * matrix; - top_right = top_right * matrix; - - // if we have a geocentric database then transform into geocentric coords. - const osg::EllipsoidModel* em = locator->getEllipsoidModel(); - if (em && locator->getCoordinateSystemType()==osgTerrain::Locator::GEOCENTRIC) { - // note y axis maps to latitude, x axis to longitude - em->convertLatLongHeightToXYZ(bottom_left.y(), bottom_left.x(), bottom_left.z(), bottom_left.x(), bottom_left.y(), bottom_left.z()); - em->convertLatLongHeightToXYZ(top_right.y(), top_right.x(), top_right.z(), top_right.x(), top_right.y(), top_right.z()); + osg::Vec3d bottom_left(0.0,0.0,0.0); + osg::Vec3d top_right(1.0,1.0,0.0); + + // transform for unit coords to local coords of the tile + bottom_left = bottom_left * matrix; + top_right = top_right * matrix; + + // if we have a geocentric database then transform into geocentric coords. + const osg::EllipsoidModel* em = locator->getEllipsoidModel(); + if (em && locator->getCoordinateSystemType()==osgTerrain::Locator::GEOCENTRIC) + { + // note y axis maps to latitude, x axis to longitude + em->convertLatLongHeightToXYZ(bottom_left.y(), bottom_left.x(), bottom_left.z(), bottom_left.x(), bottom_left.y(), bottom_left.z()); + em->convertLatLongHeightToXYZ(top_right.y(), top_right.x(), top_right.z(), top_right.x(), top_right.y(), top_right.z()); + } + + double diagonalLength = (top_right-bottom_left).length(); + double skirtRatio = 0.02; + skirtHeight = -diagonalLength*skirtRatio; } - double diagonalLength = (top_right-bottom_left).length(); - double skirtRatio = 0.02; - double skirtHeight = -diagonalLength*skirtRatio; - - // set up the vertex data { + osg::Vec3d pos(0.0, 0.0, 0.0); + osg::Vec3d normal(0.0, 0.0, 1.0); + osg::Vec2 delta(1.0f/static_cast(nx), 1.0f/static_cast(ny)); + // bottom row for skirt pos.y () = static_cast(0)*r_mult; pos.z() = skirtHeight; @@ -567,11 +571,11 @@ osg::ref_ptr GeometryPool::getTileSubgraph(osgTerrain::Ter osg::ref_ptr GeometryPool::getOrCreateProgram(LayerTypes& layerTypes) { //OpenThreads::ScopedLock lock(_programMapMutex); - ProgramMap::iterator itr = _programMap.find(layerTypes); - if (itr!=_programMap.end()) + ProgramMap::iterator p_itr = _programMap.find(layerTypes); + if (p_itr!=_programMap.end()) { - // OSG_NOTICE<<") returning existing Program "<second.get()<second.get(); + // OSG_NOTICE<<") returning existing Program "<second.get()<second.get(); } #if 1 diff --git a/src/osgTerrain/TerrainTechnique.cpp b/src/osgTerrain/TerrainTechnique.cpp index b0efe8b17..a45391fb4 100644 --- a/src/osgTerrain/TerrainTechnique.cpp +++ b/src/osgTerrain/TerrainTechnique.cpp @@ -64,8 +64,8 @@ TerrainTechnique::TerrainTechnique(): setThreadSafeRefUnref(true); } -TerrainTechnique::TerrainTechnique(const TerrainTechnique& TerrainTechnique,const osg::CopyOp& copyop): - osg::Object(TerrainTechnique,copyop), +TerrainTechnique::TerrainTechnique(const TerrainTechnique& tt,const osg::CopyOp& copyop): + osg::Object(tt,copyop), _terrainTile(0) { } diff --git a/src/osgTerrain/TerrainTile.cpp b/src/osgTerrain/TerrainTile.cpp index 5d063e196..46780d7f3 100644 --- a/src/osgTerrain/TerrainTile.cpp +++ b/src/osgTerrain/TerrainTile.cpp @@ -324,10 +324,10 @@ void WhiteListTileLoadedCallback::loaded(osgTerrain::TerrainTile* tile, const os for(unsigned int i=0; igetNumColorLayers(); ++i) { osgTerrain::Layer* layer = tile->getColorLayer(i); - osgTerrain::ImageLayer* imageLayer = dynamic_cast(layer); - if (imageLayer) + osgTerrain::ImageLayer* color_imageLayer = dynamic_cast(layer); + if (color_imageLayer) { - readImageLayer(imageLayer, options); + readImageLayer(color_imageLayer, options); continue; } @@ -372,12 +372,12 @@ void WhiteListTileLoadedCallback::loaded(osgTerrain::TerrainTile* tile, const os for(unsigned int i=0; igetNumColorLayers(); ++i) { osgTerrain::Layer* layer = tile->getColorLayer(i); - osgTerrain::ImageLayer* imageLayer = dynamic_cast(layer); - if (imageLayer) + osgTerrain::ImageLayer* color_imageLayer = dynamic_cast(layer); + if (color_imageLayer) { - if (imageLayer->getImage()!=0) + if (color_imageLayer->getImage()!=0) { - validLayer = imageLayer; + validLayer = color_imageLayer; } continue; } @@ -417,10 +417,10 @@ void WhiteListTileLoadedCallback::loaded(osgTerrain::TerrainTile* tile, const os for(unsigned int i=0; igetNumColorLayers(); ++i) { osgTerrain::Layer* layer = tile->getColorLayer(i); - osgTerrain::ImageLayer* imageLayer = dynamic_cast(layer); - if (imageLayer) + osgTerrain::ImageLayer* color_imageLayer = dynamic_cast(layer); + if (color_imageLayer) { - if (imageLayer->getImage()==0) + if (color_imageLayer->getImage()==0) { tile->setColorLayer(i, validLayer); break;