25 #ifndef WMDIRECTVOLUMERENDERING_H
26 #define WMDIRECTVOLUMERENDERING_H
32 #include <osg/Uniform>
34 #include "core/dataHandler/WDataSetScalar.h"
35 #include "core/dataHandler/WDataSetVector.h"
36 #include "core/graphicsEngine/shaders/WGEShader.h"
37 #include "core/kernel/WModule.h"
38 #include "core/kernel/WModuleInputData.h"
39 #include "core/kernel/WModuleOutputData.h"
63 virtual const std::string
getName()
const;
77 virtual std::shared_ptr< WModule >
factory()
const;
115 std::shared_ptr< WModuleInputData< WDataSetScalar > >
m_input;
120 std::shared_ptr< WModuleInputData< WDataSetVector > >
m_gradients;
185 osg::ref_ptr< osg::Node >
cube;
This module is a basic volume renderer.
virtual std::shared_ptr< WModule > factory() const
Due to the prototype design pattern used to build modules, this method returns a new instance of this...
WMDirectVolumeRendering()
Default constructor.
std::shared_ptr< WModuleInputData< WDataSetScalar > > m_input
An input connector used to get datasets from other modules.
WPropBool m_depthProjectionEnabled
If active, color coding is done by depth projection mode where the intensity is taken from the alpha ...
WPropBool m_maximumIntensityProjectionEnabled
If active, Maximum intensity projection is used based on the alpha value of the points.
WPropBool m_opacityCorrectionEnabled
If active, the opacity of the classified fragment gets scaled according to sample count to ensure rel...
virtual const std::string getDescription() const
Gives back a description of this module.
std::shared_ptr< WItemSelection > m_localIlluminationSelections
The available shading algorithms.
WPropGroup m_improvementGroup
All properties for those nice improvement methods.
WPropInt m_samples
The number of samples to walk along the ray.
std::shared_ptr< WCondition > m_propCondition
A condition used to notify about changes in several properties.
virtual const char ** getXPMIcon() const
Get the icon for this module in XPM format.
virtual void moduleMain()
Entry point after loading the module.
virtual ~WMDirectVolumeRendering()
Destructor.
osg::ref_ptr< osg::Node > cube
the main geometry node
WPropSelection m_localIlluminationAlgo
The actually selected shading algorithm.
std::shared_ptr< WModuleInputData< WDataSetVector > > m_gradients
The gradient field input.
LOCALILLUMINATION_ALGORITHMS
Types of local illumination supported.
osg::ref_ptr< WGEShader > m_shader
the DVR shader.
virtual void connectors()
Initialize the connectors this module is using.
std::shared_ptr< WModuleInputData< WDataSetSingle > > m_transferFunction
The transfer function as an input data set.
virtual const std::string getName() const
Gives back the name of this module.
WPropBool m_stochasticJitterEnabled
If true, stochastic jittering is used for image quality improvement.
virtual void properties()
Initialize the properties for this module.
virtual void requirements()
Initialize requirements for this module.
Class representing a single module of OpenWalnut.