Implement basic TerrainGeometry code

This commit is contained in:
Robert Osfield
2007-04-16 19:34:25 +00:00
parent 3d058d2fcf
commit 835e315494
2 changed files with 101 additions and 51 deletions

View File

@@ -21,35 +21,6 @@
namespace osgTerrain {
class OSGTERRAIN_EXPORT GeometryTechnique : public TerrainTechnique
{
public:
GeometryTechnique();
/** Copy constructor using CopyOp to manage deep vs shallow copy.*/
GeometryTechnique(const GeometryTechnique&,const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY);
virtual void init();
virtual void update(osgUtil::UpdateVisitor* nv);
virtual void cull(osgUtil::CullVisitor* nv);
virtual void cleanSceneGraph();
virtual void dirty();
protected:
virtual ~GeometryTechnique();
osg::ref_ptr<osg::Geode> _geode;
osg::ref_ptr<osg::Geometry> _geometry;
//osg::ref_ptr<TerrainGeometry> _geometry;
};
class OSGTERRAIN_EXPORT TerrainGeometry : public osg::Drawable
{
public:
@@ -116,6 +87,34 @@ class OSGTERRAIN_EXPORT TerrainGeometry : public osg::Drawable
};
class OSGTERRAIN_EXPORT GeometryTechnique : public TerrainTechnique
{
public:
GeometryTechnique();
/** Copy constructor using CopyOp to manage deep vs shallow copy.*/
GeometryTechnique(const GeometryTechnique&,const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY);
virtual void init();
virtual void update(osgUtil::UpdateVisitor* nv);
virtual void cull(osgUtil::CullVisitor* nv);
virtual void cleanSceneGraph();
virtual void dirty();
protected:
virtual ~GeometryTechnique();
osg::ref_ptr<osg::Geode> _geode;
osg::ref_ptr<TerrainGeometry> _terrainGeometry;
};
}
#endif