25 #ifndef WMARBITRARYPLANE_H
26 #define WMARBITRARYPLANE_H
34 #include "core/graphicsEngine/WGEManagedGroupNode.h"
35 #include "core/graphicsEngine/WROISphere.h"
36 #include "core/kernel/WModule.h"
37 #include "core/kernel/WModuleInputData.h"
38 #include "core/kernel/WModuleOutputData.h"
67 virtual const std::string
getName()
const;
81 virtual std::shared_ptr< WModule >
factory()
const;
Class encapsulating the OSG Program class for a more convenient way of adding and modifying shader.
Arbitrarily orientable cutting plane through the data.
osg::ref_ptr< WROISphere > m_s2
stores pointer to manipulator 2
WPosition m_p2
stores the last position of manipulator 2
bool m_dirty
dirty flag, used when manipulator positions change
virtual const char ** getXPMIcon() const
Get the icon for this module in XPM format.
virtual ~WMArbitraryPlane()
destructor
virtual const std::string getName() const
Gives back the name of this module.
WPropTrigger m_buttonReset2Axial
When triggered the center manipulator is set to the nav slice position and the plane is aligned along...
std::shared_ptr< WCondition > m_propCondition
A condition used to notify about changes in several properties.
virtual void moduleMain()
Entry point after loading the module.
virtual const std::string getDescription() const
Gives back a description of this module.
void updateCallback()
update function, called with each update pass of the osg render loop
osg::ref_ptr< WGEShader > m_shader
the shader object for this module
virtual void properties()
Initialize the properties for this module.
osg::ref_ptr< osg::Geode > m_geode
The geometry rendered by this module.
osg::ref_ptr< WROISphere > m_s0
stores pointer to the center manipulator
WPropBool m_attach2Crosshair
If true the center position will move with the nav slice selection.
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...
osg::ref_ptr< osg::Uniform > m_showCompleteUniform
Determines whether the slice should be drawn completely.
void initPlane()
called once at the start of the module main loop
WPropTrigger m_buttonReset2Sagittal
When triggered the center manipulator is set to the nav slice position and the plane is aligned along...
WPosition m_p1
stores the last position of manipulator 1
virtual void connectors()
Initialize the connectors this module is using.
WPosition getCenterPosition()
getter for the position of the center manipulator
WPropBool m_showManipulators
True if the manipulator spheres should be shown.
std::shared_ptr< boost::function< void() > > m_changeRoiSignal
Signal that can be used to update the plane.
osg::ref_ptr< WROISphere > m_s1
stores pointer to manipulator 1
WPropTrigger m_buttonReset2Coronal
When triggered the center manipulator is set to the nav slice position and the plane is aligned along...
void updatePlane()
updates the plane with the current settings
WPosition m_p0
stores the last position of the center manipulator
WPropBool m_showComplete
True if the shader shouldn't discard a fragment when the value is zero.
WMArbitraryPlane()
standard constructor
void setDirty()
setter for dirty flag
osg::ref_ptr< WGEManagedGroupNode > m_rootNode
The root node used for this modules graphics.
Class representing a single module of OpenWalnut.
This only is a 3d double vector.