Introduced osgVolume::Property, CompositePropery and TransferFunctionPropety classes

This commit is contained in:
Robert Osfield
2009-01-14 15:16:29 +00:00
parent c21eef7afb
commit d87ec7cb18
26 changed files with 625 additions and 111 deletions

View File

@@ -124,7 +124,7 @@ class ReaderWriterDICOM : public osgDB::ReaderWriter
osg::ref_ptr<osgVolume::Layer> layer= new osgVolume::ImageLayer(result.getImage());
tile->addLayer(layer.get());
tile->setLayer(layer.get());
// get matrix providing size of texels (in mm)
osg::RefMatrix* matrix = dynamic_cast<osg::RefMatrix*>(result.getImage()->getUserData());

View File

@@ -12,6 +12,7 @@ SET(LIB_PUBLIC_HEADERS
${HEADER_PATH}/FixedFunctionTechnique
${HEADER_PATH}/Layer
${HEADER_PATH}/Locator
${HEADER_PATH}/Property
${HEADER_PATH}/ShaderTechnique
${HEADER_PATH}/Version
${HEADER_PATH}/Volume
@@ -26,6 +27,7 @@ ADD_LIBRARY(${LIB_NAME}
FixedFunctionTechnique.cpp
Layer.cpp
Locator.cpp
Property.cpp
ShaderTechnique.cpp
Version.cpp
Volume.cpp

View File

@@ -1,4 +1,4 @@
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or

View File

@@ -1,4 +1,4 @@
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or

View File

@@ -0,0 +1,63 @@
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
* (at your option) any later version. The full license is in LICENSE file
* included with this distribution, and on the openscenegraph.org website.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* OpenSceneGraph Public License for more details.
*/
#include <osgVolume/Property>
using namespace osgVolume;
Property::Property()
{
}
Property::Property(const Property& property,const osg::CopyOp& copyop):
osg::Object(property,copyop)
{
}
Property::~Property()
{
}
/////////////////////////////////////////////////////////////////////////////
//
// CompositeProperty
//
CompositeProperty::CompositeProperty()
{
}
CompositeProperty::CompositeProperty(const CompositeProperty& compositeProperty,const osg::CopyOp& copyop):
Property(compositeProperty,copyop)
{
}
void CompositeProperty::clear()
{
_properties.clear();
}
/////////////////////////////////////////////////////////////////////////////
//
// TransferFunctionProperty
//
TransferFunctionProperty::TransferFunctionProperty(osg::TransferFunction* tf):
_tf(tf)
{
}
TransferFunctionProperty::TransferFunctionProperty(const TransferFunctionProperty& tfp,const osg::CopyOp& copyop):
Property(tfp,copyop),
_tf(tfp._tf)
{
}

View File

@@ -63,22 +63,13 @@ void ShaderTechnique::init()
osg::Image* image_3d = 0;
osg::TransferFunction1D* tf = 0;
osgVolume::Locator* masterLocator = _volumeTile->getLocator();
for(unsigned int i = 0;
i < _volumeTile->getNumLayers();
++i)
image_3d = _volumeTile->getLayer()->getImage();
if (_volumeTile->getLayer() && !masterLocator)
{
if (_volumeTile->getLayer(i) && !masterLocator)
{
masterLocator = _volumeTile->getLayer(i)->getLocator();
osg::notify(osg::NOTICE)<<"assigning locator = "<<masterLocator<<std::endl;
}
if (_volumeTile->getLayer(i)->getImage())
{
osg::notify(osg::NOTICE)<<"assigning image = "<<std::endl;
image_3d = _volumeTile->getLayer(i)->getImage();
tf = dynamic_cast<osg::TransferFunction1D*>(_volumeTile->getLayer(i)->getTransferFunction());
}
masterLocator = _volumeTile->getLayer()->getLocator();
osg::notify(osg::NOTICE)<<"assigning locator = "<<masterLocator<<std::endl;
}
osg::Matrix matrix;

View File

@@ -1,4 +1,4 @@
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or

View File

@@ -1,4 +1,4 @@
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2008 Robert Osfield
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or

View File

@@ -1,4 +1,4 @@
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2008 Robert Osfield
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or

View File

@@ -1,4 +1,4 @@
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2008 Robert Osfield
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
@@ -35,7 +35,7 @@ VolumeTile::VolumeTile(const VolumeTile& volumeTile,const osg::CopyOp& copyop):
_volume(0),
_dirty(false),
_hasBeenTraversal(false),
_layers(volumeTile._layers)
_layer(volumeTile._layer)
{
if (volumeTile.getVolumeTechnique()) ;
{
@@ -48,13 +48,6 @@ VolumeTile::~VolumeTile()
if (_volume) setVolume(0);
}
void VolumeTile::setLayer(unsigned int i, Layer* layer)
{
if (_layers.size() <= i) _layers.resize(i+1);
_layers[i] = layer;
}
void VolumeTile::setVolume(Volume* volume)
{
if (_volume == volume) return;
@@ -165,16 +158,7 @@ void VolumeTile::setDirty(bool dirty)
osg::BoundingSphere VolumeTile::computeBound() const
{
osg::BoundingSphere bs;
if (_layer.valid()) return _layer->computeBound();
for(Layers::const_iterator itr = _layers.begin();
itr != _layers.end();
++itr)
{
if (itr->valid()) bs.expandBy((*itr)->computeBound());
}
return bs;
return bs;
return osg::BoundingSphere();
}

View File

@@ -0,0 +1,89 @@
// ***************************************************************************
//
// Generated automatically by genwrapper.
// Please DO NOT EDIT this file!
//
// ***************************************************************************
#include <osgIntrospection/ReflectionMacros>
#include <osgIntrospection/TypedMethodInfo>
#include <osgIntrospection/StaticMethodInfo>
#include <osgIntrospection/Attributes>
#include <osg/CopyOp>
#include <osg/NodeVisitor>
#include <osg/Object>
#include <osgUtil/CullVisitor>
#include <osgUtil/UpdateVisitor>
#include <osgVolume/FixedFunctionTechnique>
// Must undefine IN and OUT macros defined in Windows headers
#ifdef IN
#undef IN
#endif
#ifdef OUT
#undef OUT
#endif
BEGIN_OBJECT_REFLECTOR(osgVolume::FixedFunctionTechnique)
I_DeclaringFile("osgVolume/FixedFunctionTechnique");
I_BaseType(osgVolume::VolumeTechnique);
I_Constructor0(____FixedFunctionTechnique,
"",
"");
I_ConstructorWithDefaults2(IN, const osgVolume::FixedFunctionTechnique &, x, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
____FixedFunctionTechnique__C5_FixedFunctionTechnique_R1__C5_osg_CopyOp_R1,
"Copy constructor using CopyOp to manage deep vs shallow copy. ",
"");
I_Method0(osg::Object *, cloneType,
Properties::VIRTUAL,
__osg_Object_P1__cloneType,
"Clone the type of an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
Properties::VIRTUAL,
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
"Clone an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
Properties::VIRTUAL,
__bool__isSameKindAs__C5_osg_Object_P1,
"",
"");
I_Method0(const char *, libraryName,
Properties::VIRTUAL,
__C5_char_P1__libraryName,
"return the name of the object's library. ",
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
I_Method0(const char *, className,
Properties::VIRTUAL,
__C5_char_P1__className,
"return the name of the object's class type. ",
"Must be defined by derived classes. ");
I_Method0(void, init,
Properties::VIRTUAL,
__void__init,
"",
"");
I_Method1(void, update, IN, osgUtil::UpdateVisitor *, nv,
Properties::VIRTUAL,
__void__update__osgUtil_UpdateVisitor_P1,
"",
"");
I_Method1(void, cull, IN, osgUtil::CullVisitor *, nv,
Properties::VIRTUAL,
__void__cull__osgUtil_CullVisitor_P1,
"",
"");
I_Method0(void, cleanSceneGraph,
Properties::VIRTUAL,
__void__cleanSceneGraph,
"Clean scene graph from any terrain technique specific nodes. ",
"");
I_Method1(void, traverse, IN, osg::NodeVisitor &, nv,
Properties::VIRTUAL,
__void__traverse__osg_NodeVisitor_R1,
"Traverse the terrain subgraph. ",
"");
END_REFLECTOR

View File

@@ -15,10 +15,10 @@
#include <osg/Image>
#include <osg/Object>
#include <osg/Texture>
#include <osg/TransferFunction>
#include <osg/Vec4>
#include <osgVolume/Layer>
#include <osgVolume/Locator>
#include <osgVolume/Property>
// Must undefine IN and OUT macros defined in Windows headers
#ifdef IN
@@ -309,20 +309,20 @@ BEGIN_OBJECT_REFLECTOR(osgVolume::Layer)
__C5_osg_Image_P1__getImage,
"Return const image associated with layer if supported. ",
"");
I_Method1(void, setTransferFunction, IN, osg::TransferFunction *, tf,
I_Method1(void, setProperty, IN, osgVolume::Property *, property,
Properties::NON_VIRTUAL,
__void__setTransferFunction__osg_TransferFunction_P1,
"Set the optional transfer function that maps the imagery pixels to new colours. ",
"Transfer function may be implemented on the GPU or via pre-processing step. ");
I_Method0(osg::TransferFunction *, getTransferFunction,
Properties::NON_VIRTUAL,
__osg_TransferFunction_P1__getTransferFunction,
"Get the transfer function. ",
__void__setProperty__Property_P1,
"Set the Property (or Properties via the CompositeProperty) that informs the VolumeTechnique how this layer should be rendered. ",
"");
I_Method0(const osg::TransferFunction *, getTransferFunction,
I_Method0(osgVolume::Property *, getProperty,
Properties::NON_VIRTUAL,
__C5_osg_TransferFunction_P1__getTransferFunction,
"Get the const transfer function. ",
__Property_P1__getProperty,
"Get the Property that informs the VolumeTechnique how this layer should be rendered. ",
"");
I_Method0(const osgVolume::Property *, getProperty,
Properties::NON_VIRTUAL,
__C5_Property_P1__getProperty,
"Get the const Property that informs the VolumeTechnique how this layer should be rendered. ",
"");
I_Method0(void, dirty,
Properties::VIRTUAL,
@@ -365,8 +365,8 @@ BEGIN_OBJECT_REFLECTOR(osgVolume::Layer)
I_SimpleProperty(unsigned, ModifiedCount,
0,
__void__setModifiedCount__unsigned);
I_SimpleProperty(osg::TransferFunction *, TransferFunction,
__osg_TransferFunction_P1__getTransferFunction,
__void__setTransferFunction__osg_TransferFunction_P1);
I_SimpleProperty(osgVolume::Property *, Property,
__Property_P1__getProperty,
__void__setProperty__Property_P1);
END_REFLECTOR

View File

@@ -0,0 +1,221 @@
// ***************************************************************************
//
// Generated automatically by genwrapper.
// Please DO NOT EDIT this file!
//
// ***************************************************************************
#include <osgIntrospection/ReflectionMacros>
#include <osgIntrospection/TypedMethodInfo>
#include <osgIntrospection/StaticMethodInfo>
#include <osgIntrospection/Attributes>
#include <osg/CopyOp>
#include <osg/Object>
#include <osg/TransferFunction>
#include <osgVolume/Property>
// Must undefine IN and OUT macros defined in Windows headers
#ifdef IN
#undef IN
#endif
#ifdef OUT
#undef OUT
#endif
TYPE_NAME_ALIAS(std::vector< osg::ref_ptr< osgVolume::Property > >, osgVolume::CompositeProperty::Properties)
BEGIN_OBJECT_REFLECTOR(osgVolume::CompositeProperty)
I_DeclaringFile("osgVolume/Property");
I_BaseType(osgVolume::Property);
I_Constructor0(____CompositeProperty,
"",
"");
I_ConstructorWithDefaults2(IN, const osgVolume::CompositeProperty &, compositeProperty, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
____CompositeProperty__C5_CompositeProperty_R1__C5_osg_CopyOp_R1,
"Copy constructor using CopyOp to manage deep vs shallow copy. ",
"");
I_Method0(osg::Object *, cloneType,
Properties::VIRTUAL,
__osg_Object_P1__cloneType,
"Clone the type of an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
Properties::VIRTUAL,
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
"Clone an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
Properties::VIRTUAL,
__bool__isSameKindAs__C5_osg_Object_P1,
"",
"");
I_Method0(const char *, libraryName,
Properties::VIRTUAL,
__C5_char_P1__libraryName,
"return the name of the object's library. ",
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
I_Method0(const char *, className,
Properties::VIRTUAL,
__C5_char_P1__className,
"return the name of the object's class type. ",
"Must be defined by derived classes. ");
I_Method0(void, clear,
Properties::NON_VIRTUAL,
__void__clear,
"",
"");
I_Method2(void, setProperty, IN, unsigned int, i, IN, osgVolume::Property *, property,
Properties::NON_VIRTUAL,
__void__setProperty__unsigned_int__Property_P1,
"",
"");
I_Method1(osgVolume::Property *, getProperty, IN, unsigned int, i,
Properties::NON_VIRTUAL,
__Property_P1__getProperty__unsigned_int,
"",
"");
I_Method1(const osgVolume::Property *, getProperty, IN, unsigned int, i,
Properties::NON_VIRTUAL,
__C5_Property_P1__getProperty__unsigned_int,
"",
"");
I_Method1(void, addProperty, IN, osgVolume::Property *, property,
Properties::NON_VIRTUAL,
__void__addProperty__Property_P1,
"",
"");
I_Method1(void, removeProperty, IN, unsigned int, i,
Properties::NON_VIRTUAL,
__void__removeProperty__unsigned_int,
"",
"");
I_Method0(unsigned int, getNumProperties,
Properties::NON_VIRTUAL,
__unsigned_int__getNumProperties,
"",
"");
I_IndexedProperty(osgVolume::Property *, Property,
__Property_P1__getProperty__unsigned_int,
__void__setProperty__unsigned_int__Property_P1,
0);
END_REFLECTOR
BEGIN_OBJECT_REFLECTOR(osgVolume::Property)
I_DeclaringFile("osgVolume/Property");
I_BaseType(osg::Object);
I_Constructor0(____Property,
"",
"");
I_ConstructorWithDefaults2(IN, const osgVolume::Property &, x, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
____Property__C5_Property_R1__C5_osg_CopyOp_R1,
"Copy constructor using CopyOp to manage deep vs shallow copy. ",
"");
I_Method0(osg::Object *, cloneType,
Properties::VIRTUAL,
__osg_Object_P1__cloneType,
"Clone the type of an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
Properties::VIRTUAL,
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
"Clone an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
Properties::VIRTUAL,
__bool__isSameKindAs__C5_osg_Object_P1,
"",
"");
I_Method0(const char *, libraryName,
Properties::VIRTUAL,
__C5_char_P1__libraryName,
"return the name of the object's library. ",
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
I_Method0(const char *, className,
Properties::VIRTUAL,
__C5_char_P1__className,
"return the name of the object's class type. ",
"Must be defined by derived classes. ");
END_REFLECTOR
BEGIN_OBJECT_REFLECTOR(osgVolume::TransferFunctionProperty)
I_DeclaringFile("osgVolume/Property");
I_BaseType(osgVolume::Property);
I_ConstructorWithDefaults1(IN, osg::TransferFunction *, tf, 0,
Properties::NON_EXPLICIT,
____TransferFunctionProperty__osg_TransferFunction_P1,
"",
"");
I_ConstructorWithDefaults2(IN, const osgVolume::TransferFunctionProperty &, tfProperty, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
____TransferFunctionProperty__C5_TransferFunctionProperty_R1__C5_osg_CopyOp_R1,
"Copy constructor using CopyOp to manage deep vs shallow copy. ",
"");
I_Method0(osg::Object *, cloneType,
Properties::VIRTUAL,
__osg_Object_P1__cloneType,
"Clone the type of an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
Properties::VIRTUAL,
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
"Clone an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
Properties::VIRTUAL,
__bool__isSameKindAs__C5_osg_Object_P1,
"",
"");
I_Method0(const char *, libraryName,
Properties::VIRTUAL,
__C5_char_P1__libraryName,
"return the name of the object's library. ",
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
I_Method0(const char *, className,
Properties::VIRTUAL,
__C5_char_P1__className,
"return the name of the object's class type. ",
"Must be defined by derived classes. ");
END_REFLECTOR
BEGIN_VALUE_REFLECTOR(osg::ref_ptr< osgVolume::Property >)
I_DeclaringFile("osg/ref_ptr");
I_Constructor0(____ref_ptr,
"",
"");
I_Constructor1(IN, osgVolume::Property *, ptr,
Properties::NON_EXPLICIT,
____ref_ptr__T_P1,
"",
"");
I_Constructor1(IN, const osg::ref_ptr< osgVolume::Property > &, rp,
Properties::NON_EXPLICIT,
____ref_ptr__C5_ref_ptr_R1,
"",
"");
I_Method0(osgVolume::Property *, get,
Properties::NON_VIRTUAL,
__T_P1__get,
"",
"");
I_Method0(bool, valid,
Properties::NON_VIRTUAL,
__bool__valid,
"",
"");
I_Method0(osgVolume::Property *, release,
Properties::NON_VIRTUAL,
__T_P1__release,
"",
"");
I_Method1(void, swap, IN, osg::ref_ptr< osgVolume::Property > &, rp,
Properties::NON_VIRTUAL,
__void__swap__ref_ptr_R1,
"",
"");
I_SimpleProperty(osgVolume::Property *, ,
__T_P1__get,
0);
END_REFLECTOR
STD_VECTOR_REFLECTOR(std::vector< osg::ref_ptr< osgVolume::Property > >)

View File

@@ -0,0 +1,89 @@
// ***************************************************************************
//
// Generated automatically by genwrapper.
// Please DO NOT EDIT this file!
//
// ***************************************************************************
#include <osgIntrospection/ReflectionMacros>
#include <osgIntrospection/TypedMethodInfo>
#include <osgIntrospection/StaticMethodInfo>
#include <osgIntrospection/Attributes>
#include <osg/CopyOp>
#include <osg/NodeVisitor>
#include <osg/Object>
#include <osgUtil/CullVisitor>
#include <osgUtil/UpdateVisitor>
#include <osgVolume/ShaderTechnique>
// Must undefine IN and OUT macros defined in Windows headers
#ifdef IN
#undef IN
#endif
#ifdef OUT
#undef OUT
#endif
BEGIN_OBJECT_REFLECTOR(osgVolume::ShaderTechnique)
I_DeclaringFile("osgVolume/ShaderTechnique");
I_BaseType(osgVolume::VolumeTechnique);
I_Constructor0(____ShaderTechnique,
"",
"");
I_ConstructorWithDefaults2(IN, const osgVolume::ShaderTechnique &, x, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY,
____ShaderTechnique__C5_ShaderTechnique_R1__C5_osg_CopyOp_R1,
"",
"");
I_Method0(osg::Object *, cloneType,
Properties::VIRTUAL,
__osg_Object_P1__cloneType,
"Clone the type of an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop,
Properties::VIRTUAL,
__osg_Object_P1__clone__C5_osg_CopyOp_R1,
"Clone an object, with Object* return type. ",
"Must be defined by derived classes. ");
I_Method1(bool, isSameKindAs, IN, const osg::Object *, obj,
Properties::VIRTUAL,
__bool__isSameKindAs__C5_osg_Object_P1,
"",
"");
I_Method0(const char *, libraryName,
Properties::VIRTUAL,
__C5_char_P1__libraryName,
"return the name of the object's library. ",
"Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. ");
I_Method0(const char *, className,
Properties::VIRTUAL,
__C5_char_P1__className,
"return the name of the object's class type. ",
"Must be defined by derived classes. ");
I_Method0(void, init,
Properties::VIRTUAL,
__void__init,
"",
"");
I_Method1(void, update, IN, osgUtil::UpdateVisitor *, nv,
Properties::VIRTUAL,
__void__update__osgUtil_UpdateVisitor_P1,
"",
"");
I_Method1(void, cull, IN, osgUtil::CullVisitor *, nv,
Properties::VIRTUAL,
__void__cull__osgUtil_CullVisitor_P1,
"",
"");
I_Method0(void, cleanSceneGraph,
Properties::VIRTUAL,
__void__cleanSceneGraph,
"Clean scene graph from any terrain technique specific nodes. ",
"");
I_Method1(void, traverse, IN, osg::NodeVisitor &, nv,
Properties::VIRTUAL,
__void__traverse__osg_NodeVisitor_R1,
"Traverse the terrain subgraph. ",
"");
END_REFLECTOR

View File

@@ -138,29 +138,19 @@ BEGIN_OBJECT_REFLECTOR(osgVolume::VolumeTile)
__C5_Locator_P1__getLocator,
"",
"");
I_Method2(void, setLayer, IN, unsigned int, i, IN, osgVolume::Layer *, layer,
I_Method1(void, setLayer, IN, osgVolume::Layer *, layer,
Properties::NON_VIRTUAL,
__void__setLayer__unsigned_int__Layer_P1,
__void__setLayer__Layer_P1,
"",
"");
I_Method1(osgVolume::Layer *, getLayer, IN, unsigned int, i,
I_Method0(osgVolume::Layer *, getLayer,
Properties::NON_VIRTUAL,
__Layer_P1__getLayer__unsigned_int,
__Layer_P1__getLayer,
"",
"");
I_Method1(const osgVolume::Layer *, getImage, IN, unsigned int, i,
I_Method0(const osgVolume::Layer *, getImage,
Properties::NON_VIRTUAL,
__C5_Layer_P1__getImage__unsigned_int,
"",
"");
I_Method1(void, addLayer, IN, osgVolume::Layer *, layer,
Properties::NON_VIRTUAL,
__void__addLayer__Layer_P1,
"",
"");
I_Method0(unsigned int, getNumLayers,
Properties::NON_VIRTUAL,
__unsigned_int__getNumLayers,
__C5_Layer_P1__getImage,
"",
"");
I_Method1(void, setVolumeTechnique, IN, osgVolume::VolumeTechnique *, VolumeTechnique,
@@ -196,13 +186,12 @@ BEGIN_OBJECT_REFLECTOR(osgVolume::VolumeTile)
I_SimpleProperty(bool, Dirty,
__bool__getDirty,
__void__setDirty__bool);
I_ArrayProperty(osgVolume::Layer *, Layer,
__Layer_P1__getLayer__unsigned_int,
__void__setLayer__unsigned_int__Layer_P1,
__unsigned_int__getNumLayers,
__void__addLayer__Layer_P1,
0,
0);
I_SimpleProperty(const osgVolume::Layer *, Image,
__C5_Layer_P1__getImage,
0);
I_SimpleProperty(osgVolume::Layer *, Layer,
__Layer_P1__getLayer,
__void__setLayer__Layer_P1);
I_SimpleProperty(osgVolume::Locator *, Locator,
__Locator_P1__getLocator,
__void__setLocator__Locator_P1);