Added TerrainNode::init() and s/getTreatBoundariesToValidDataAsDefaultValue flag.

This commit is contained in:
Robert Osfield
2007-05-13 09:54:51 +00:00
parent 91ddcdf531
commit b97d8c0fe0
5 changed files with 35 additions and 4 deletions

View File

@@ -138,6 +138,8 @@ void GeometryTechnique::init()
numRows = elevationLayer->getNumRows();
}
bool treatBoundariesToValidDataAsDefaultValue = _terrainNode->getTreatBoundariesToValidDataAsDefaultValue();
osg::notify(osg::NOTICE)<<"TreatBoundariesToValidDataAsDefaultValue="<<treatBoundariesToValidDataAsDefaultValue<<std::endl;
unsigned int numVertices = numRows * numColumns;

View File

@@ -17,7 +17,8 @@ using namespace osg;
using namespace osgTerrain;
TerrainNode::TerrainNode():
_requiresNormals(true)
_requiresNormals(true),
_treatBoundariesToValidDataAsDefaultValue(false)
{
setNumChildrenRequiringUpdateTraversal(1);
}
@@ -26,7 +27,8 @@ TerrainNode::TerrainNode(const TerrainNode& terrain,const osg::CopyOp& copyop):
Group(terrain,copyop),
_elevationLayer(terrain._elevationLayer),
_colorLayers(terrain._colorLayers),
_requiresNormals(terrain._requiresNormals)
_requiresNormals(terrain._requiresNormals),
_treatBoundariesToValidDataAsDefaultValue(terrain._treatBoundariesToValidDataAsDefaultValue)
{
setNumChildrenRequiringUpdateTraversal(getNumChildrenRequiringUpdateTraversal()+1);
@@ -49,6 +51,15 @@ void TerrainNode::traverse(osg::NodeVisitor& nv)
}
}
void TerrainNode::init()
{
if (_terrainTechnique.valid() && _terrainTechnique->isDirty())
{
_terrainTechnique->init();
}
}
void TerrainNode::setTerrainTechnique(osgTerrain::TerrainTechnique* terrainTechnique)
{
if (_terrainTechnique == terrainTechnique) return;