![]() |
LibCarna Version 3.4.0
|
Renders 3D masks. More...
#include <MaskRenderingStage.hpp>
Inheritance diagram for LibCarna::presets::MaskRenderingStage:
Collaboration diagram for LibCarna::presets::MaskRenderingStage:Public Member Functions | |
| MaskRenderingStage (unsigned int geometryType, unsigned int maskRole=DEFAULT_ROLE_MASK) | |
| Instantiates. | |
| virtual | ~MaskRenderingStage () |
| Deletes. | |
| virtual void | reshape (base::FrameRenderer &fr, unsigned int width, unsigned int height) override |
| Orders this stage to reshape its buffers according to the specified width and height. | |
| virtual void | renderPass (const base::math::Matrix4f &viewTransform, base::RenderTask &rt, const base::Viewport &vp) override |
| Performs the mask rendering. | |
| const base::Color & | color () const |
| Tells the rendering color. | |
| void | setColor (const base::Color &color) |
| Sets the rendering color. | |
| bool | isFilling () const |
| Tells whether filled regions are rendered (instead of borders only). | |
| void | setFilling (bool filled) |
| Sets whether to render filled regions (instead of borders only). | |
Public Member Functions inherited from LibCarna::presets::VolumeRenderingStage | |
| VolumeRenderingStage (unsigned int geometryType) | |
| Instantiates. The created stage will render such base::Geometry scene graph nodes, whose geometry types equal geometryType. | |
| virtual | ~VolumeRenderingStage () |
| Deletes. | |
| void | setSampleRate (unsigned int sampleRate) |
| Sets number of slices to be rendered per segment. | |
| unsigned int | sampleRate () const |
| Tells number of slices to be rendered per segment. | |
Public Member Functions inherited from LibCarna::base::GeometryStage< base::Renderable::BackToFront > | |
| GeometryStage (unsigned int geometryType, unsigned int geometryTypeMask=RenderQueue< base::Renderable::BackToFront >::EXACT_MATCH_GEOMETRY_TYPE_MASK) | |
| Instantiates s.t. the predefined rendering queue enqueues such LibCarna::base::Geometry scene graph nodes, whose geometry type AND-linked with geometryTypeMask equals the geometryType specified here. | |
| virtual | ~GeometryStage () |
| Releases acquired video resources. | |
| virtual void | prepareFrame (Node &root) override |
| Called once before each frame. | |
| std::size_t | renderedPassesCount () const |
| Tells the number of passes rendered so far since the beginning of the current frame. | |
| GeometryFeatureType::ManagedInterface & | videoResource (GeometryFeatureType &geometryFeature) const |
| Interfaces the geometryFeature video resources that were acquired by this rendering stage. | |
| const GeometryFeatureType::ManagedInterface & | videoResource (const GeometryFeatureType &geometryFeature) const |
Public Member Functions inherited from LibCarna::base::RenderStage | |
| RenderStage () | |
| Instantiates in enabled-state. | |
| virtual | ~RenderStage () |
| Deletes. | |
| void | setViewTransformFixed (bool viewTransformFixed) |
| Sets whether the view transform is pass-invariant for the duration of a single frame. | |
| bool | isViewTransformFixed () const |
| Tells whether the view transform is pass-invariant for the duration of a single frame. | |
| bool | isInitialized () const |
| Tells whether this stage is ready for rendering. | |
| bool | isEnabled () const |
| Tells whether this stage is enabled. Disabled stages are not rendered by render tasks. | |
| void | setEnabled (bool) |
| Sets whether this stage is enabled. Disabled stages are not rendered by render tasks. | |
| base::FrameRenderer & | renderer () |
| References the renderer this stage belongs to. | |
| const base::FrameRenderer & | renderer () const |
| void | addRenderStageListener (RenderStageListener &listener) |
| Adds listener to the set of listeners this instance notifies in \(\mathcal O\left(\log n\right)\). | |
| void | removeRenderStageListener (RenderStageListener &listener) |
| Removes listener from the set of listeners this instance notifies in \(\mathcal O\left(\log n\right)\). | |
Public Attributes | |
| const unsigned int | maskRole |
| Holds the role that mask volume data is expected to take when attached to base::Geometry nodes. | |
Public Attributes inherited from LibCarna::base::GeometryStage< base::Renderable::BackToFront > | |
| const unsigned int | geometryType |
| Renders such geometries whose type AND-linked with geometryTypeMask equals this. | |
| const unsigned int | geometryTypeMask |
| Renders such geometries whose type AND-linked with this equals geometryType. | |
Static Public Attributes | |
| static const base::Color | DEFAULT_COLOR |
| Holds the default rendering color. | |
| static const unsigned int | DEFAULT_ROLE_MASK |
| Holds the default value of maskRole. | |
| static const bool | DEFAULT_FILLING |
| Holds the default value of isFilling. | |
Static Public Attributes inherited from LibCarna::presets::VolumeRenderingStage | |
| static const unsigned int | DEFAULT_SAMPLE_RATE = 200 |
| Holds the default number of slices rendered per segment. | |
Protected Member Functions | |
| virtual unsigned int | loadVideoResources () override |
| Loads video resources when rendering is triggered for the first time. Override this method if you need any additional resources to be loaded, but always call the base implementation. | |
| virtual void | createVolumeSamplers (const std::function< void(unsigned int, base::Sampler *) > ®isterSampler) override |
| Creates texture samplers for volume textures and uses registerSampler to assign them to the roles that they should be used with. | |
| virtual const base::ShaderProgram & | acquireShader () override |
Acquires the mask_rendering shader from the base::ShaderManager. | |
| virtual const std::string & | uniformName (unsigned int role) const override |
Maps maskRole to mask. | |
| virtual void | configureShader () override |
| Sets the border rendering mode and the rendering color. | |
| virtual void | configureShader (const base::Renderable &) override |
| Does nothing. | |
Protected Member Functions inherited from LibCarna::presets::VolumeRenderingStage | |
| virtual void | render (const base::Renderable &) override |
| Renders the renderable. | |
Protected Member Functions inherited from LibCarna::base::GeometryStage< base::Renderable::BackToFront > | |
| void | activateGLContext () const |
| Ensures that the OpenGL context of the hosting LibCarna::base::FrameRenderer is the current one. | |
| virtual void | buildRenderQueues (Node &root, const math::Matrix4f &viewTransform) |
| Builds the rendering queues of this stage. | |
| virtual void | rewindRenderQueues () |
| Rewinds the rendering queues of this stage. | |
| virtual void | updateRenderQueues (const math::Matrix4f &viewTransform) |
| Recomputes the model-view transforms of the renderables enqueued by this stage. | |
Additional Inherited Members | |
Protected Attributes inherited from LibCarna::base::GeometryStage< base::Renderable::BackToFront > | |
| RenderQueue< base::Renderable::BackToFront > | rq |
| Holds the predefined rendering queue of this rendering stage. | |
Renders 3D masks.
The MaskRenderingStage constructor takes a geometry type parameter:
The concept of geometry types is explained here.
A mask can be produced, for example, by threshold a 3D intensity image:
The mask can then be attached to, for example, an already existing geometry node:
This will render an image similar to this:
Definition at line 58 of file MaskRenderingStage.hpp.
|
explicit |
Instantiates.
The created stage will render such base::Geometry scene graph nodes, whose geometry types equal geometryType. The mask data will be obtained from maskRole.
|
overrideprotectedvirtual |
Acquires the mask_rendering shader from the base::ShaderManager.
Implements LibCarna::presets::VolumeRenderingStage.
|
overrideprotectedvirtual |
Sets the border rendering mode and the rendering color.
Implements LibCarna::presets::VolumeRenderingStage.
|
overrideprotectedvirtual |
Does nothing.
Implements LibCarna::presets::VolumeRenderingStage.
|
overrideprotectedvirtual |
Creates texture samplers for volume textures and uses registerSampler to assign them to the roles that they should be used with.
Implements LibCarna::presets::VolumeRenderingStage.
|
overrideprotectedvirtual |
Loads video resources when rendering is triggered for the first time. Override this method if you need any additional resources to be loaded, but always call the base implementation.
+1. Reimplemented from LibCarna::presets::VolumeRenderingStage.
|
overridevirtual |
Performs the mask rendering.
Reimplemented from LibCarna::presets::VolumeRenderingStage.
|
overridevirtual |
Orders this stage to reshape its buffers according to the specified width and height.
| fr | references the frame renderer this stage belongs to. |
| width | is the root viewport width. |
| height | is the root viewport height. |
Reimplemented from LibCarna::base::RenderStage.
|
overrideprotectedvirtual |
Maps maskRole to mask.
Implements LibCarna::presets::VolumeRenderingStage.
|
static |
Holds the default rendering color.
Definition at line 66 of file MaskRenderingStage.hpp.
|
static |
Holds the default value of isFilling.
Definition at line 68 of file MaskRenderingStage.hpp.
|
static |
Holds the default value of maskRole.
Definition at line 67 of file MaskRenderingStage.hpp.
| const unsigned int LibCarna::presets::MaskRenderingStage::maskRole |
Holds the role that mask volume data is expected to take when attached to base::Geometry nodes.
Definition at line 74 of file MaskRenderingStage.hpp.
Written by Leonid Kostrykin © 2021–2025. Based on Carna (© 2010-2016).
Documentation generated by Doxygen