目标:(十七)中问题47
osgEarth/TerrainTileModelFactory.cpp
TerrainTileModel*
TerrainTileModelFactory::createTileModel(const MapFrame& frame,
const TileKey& key,
const CreateTileModelFilter& filter,
const TerrainEngineRequirements* requirements,
ProgressCallback* progress)
{
// Make a new model:
osg::ref_ptr<TerrainTileModel> model = new TerrainTileModel(
key,
frame.getRevision() );
// assemble all the components:
//addImageLayers(model.get(), frame, requirements, key, filter, progress);
addColorLayers(model.get(), frame, requirements, key, filter, progress);
addPatchLayers(model.get(), frame, key, filter, progress);
if ( requirements == 0L || requirements->elevationTexturesRequired() )
{
unsigned border = requirements->elevationBorderRequired() ? 1u : 0u;
addElevation( model.get(), frame, key, filter, border, progress );
}
#if 0
if ( requirements == 0L || requirements->normalTexturesRequired() )
{
addNormalMap( model.get(), frame, key, progress );
}
#endif
// done.
return model.release();
}