From 778f4e321d1ffa53849357598abdab5a36a79718 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Wed, 14 Jan 2009 20:38:12 +0000 Subject: [PATCH] Added VolumeTechnique to Volume --- include/osgVolume/Volume | 11 +++++++++++ include/osgVolume/VolumeTile | 2 +- src/osgVolume/ShaderTechnique.cpp | 3 ++- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/include/osgVolume/Volume b/include/osgVolume/Volume index f8587d5a5..4e746fe06 100644 --- a/include/osgVolume/Volume +++ b/include/osgVolume/Volume @@ -42,6 +42,16 @@ class OSGVOLUME_EXPORT Volume : public osg::Group /** Get the const VolumeTile for a given VolumeTileID.*/ const VolumeTile* getVolumeTile(const TileID& tileID) const; + /** Set the VolumeTechnique*/ + void setVolumeTechnique(VolumeTechnique* VolumeTechnique); + + /** Get the VolumeTechnique*/ + VolumeTechnique* getVolumeTechnique() { return _volumeTechnique.get(); } + + /** Get the const VolumeTechnique*/ + const VolumeTechnique* getVolumeTechnique() const { return _volumeTechnique.get(); } + + protected: virtual ~Volume(); @@ -60,6 +70,7 @@ class OSGVOLUME_EXPORT Volume : public osg::Group VolumeTileSet _volumeTileSet; VolumeTileMap _volumeTileMap; + osg::ref_ptr _volumeTechnique; }; } diff --git a/include/osgVolume/VolumeTile b/include/osgVolume/VolumeTile index b925855f4..d756c1213 100644 --- a/include/osgVolume/VolumeTile +++ b/include/osgVolume/VolumeTile @@ -117,7 +117,7 @@ class OSGVOLUME_EXPORT VolumeTile : public osg::Group void setLayer(Layer* layer) { _layer = layer; } Layer* getLayer() { return _layer.get(); } - const Layer* getImage() const { return _layer.get(); } + const Layer* getLayer() const { return _layer.get(); } /** Set the VolumeTechnique*/ diff --git a/src/osgVolume/ShaderTechnique.cpp b/src/osgVolume/ShaderTechnique.cpp index d5cced338..e4730438d 100644 --- a/src/osgVolume/ShaderTechnique.cpp +++ b/src/osgVolume/ShaderTechnique.cpp @@ -87,6 +87,7 @@ void ShaderTechnique::init() float ySize = (matrix)(1,1); float zSize = (matrix)(2,2); + if (true) { osg::Texture::FilterMode minFilter = osg::Texture::LINEAR; osg::Texture::FilterMode magFilter = osg::Texture::LINEAR; @@ -411,7 +412,7 @@ void ShaderTechnique::update(osgUtil::UpdateVisitor* uv) void ShaderTechnique::cull(osgUtil::CullVisitor* cv) { - // osg::notify(osg::NOTICE)<<"ShaderTechnique::cull(osgUtil::CullVisitor* nv)"<accept(*cv);