Changeset 879
- Timestamp:
- 03/02/08 19:25:40
- Files:
-
- trunk/src/vpb/DataSet.cpp (modified) (1 diff)
- trunk/src/vpb/Destination.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/vpb/DataSet.cpp
r874 r879 2279 2279 { 2280 2280 if (cd._level<_level) traverse(cd); 2281 else if (cd._level==_level) _subtileList.push_back(&cd); 2281 else if (cd._level==_level) 2282 { 2283 if (!cd._children.empty()) 2284 { 2285 _subtileList.push_back(&cd); 2286 } 2287 } 2282 2288 } 2283 2289 trunk/src/vpb/Destination.cpp
r878 r879 1213 1213 // create a dummy height field to file in the gap 1214 1214 _terrain->_heightField = new osg::HeightField; 1215 _terrain->_heightField->allocate( 2,2);1215 _terrain->_heightField->allocate(8,8); 1216 1216 _terrain->_heightField->setOrigin(osg::Vec3(_extents.xMin(),_extents.yMin(),0.0f)); 1217 1217 _terrain->_heightField->setXInterval(_extents.xMax()-_extents.xMin()); … … 1426 1426 } 1427 1427 1428 1429 osgTerrain::ImageLayer* baseLayer = 0; 1428 1430 1429 1431 // assign the imagery … … 1433 1435 { 1434 1436 ImageData& imageData = _imagery[layerNum]; 1435 if (!imageData._imagery.valid() || !imageData._imagery->_image.valid()) continue; 1436 1437 osg::Image* image = imageData._imagery->_image.get(); 1438 1439 osgTerrain::ImageLayer* imageLayer = new osgTerrain::ImageLayer; 1440 imageLayer->setImage(image); 1441 imageLayer->setLocator(locator); 1442 1443 terrain->setColorLayer(layerNum, imageLayer); 1437 if (imageData._imagery.valid() && imageData._imagery->_image.valid()) 1438 { 1439 osg::Image* image = imageData._imagery->_image.get(); 1440 1441 osgTerrain::ImageLayer* imageLayer = new osgTerrain::ImageLayer; 1442 imageLayer->setImage(image); 1443 imageLayer->setLocator(locator); 1444 1445 terrain->setColorLayer(layerNum, imageLayer); 1446 1447 if (!baseLayer) 1448 { 1449 log(osg::NOTICE,"Recording base layer for layer %i",layerNum); 1450 baseLayer = imageLayer; 1451 } 1452 } 1453 } 1454 1455 // copy layer into any blanks 1456 if (baseLayer) 1457 { 1458 for(unsigned int layerNum=0; 1459 layerNum<_dataSet->getNumOfTextureLevels(); 1460 ++layerNum) 1461 { 1462 if (terrain->getColorLayer(layerNum)==0) 1463 { 1464 terrain->setColorLayer(layerNum, baseLayer); 1465 } 1466 } 1444 1467 } 1445 1468
