![]() |
ImFusion SDK 4.3
|
#include <ImFusion/GL/GlFlattenTrackingDeformation.h>
Deformation model based on flattening a tracking sequence. More...
Inheritance diagram for GlFlattenTrackingDeformation:Deformation model based on flattening a tracking sequence.
This class takes a tracking sequence, assumes every matrix to represent a plane, and creates a 3D deformation that maps them to parallel equidistant planes along the z dimension. Use cases are for example to flatten a 3D CT/MRI volume along a catheter with ultrasound imaging or video, similar to curved MPRs.
Public Member Functions | |
| GlFlattenTrackingDeformation (const TrackingSequence &tracking, double frameSpacing) | |
| Constructor with tracking sequence to use and frame increment spacing in mm. | |
| GlFlattenTrackingDeformation (const GlFlattenTrackingDeformation &other) | |
| void | setFrameSpacing (double val) |
| Change the frame increment spacing in mm. | |
| void | setFadeOff (double val) |
| Set the optional fadeoff, it will be enabled if greater zero. | |
| std::string | id () const override |
| Returns a unique string identifier for this type of deformation. | |
Public Member Functions inherited from Deformation | |
| Deformation (const std::string &shaderPath) | |
| Initializes the Deformation with path to the GlInclude file. | |
| virtual vec3 | displacement (const vec2 &pos) const |
| Returns the displacement at the world position pos. | |
| void | setDisabled (bool flag) |
| Set a disabled flag in order to hide the visualization of this deformation. | |
| bool | disabled () const |
| Return whether the deformation was set to disabled. | |
| virtual std::unique_ptr< SharedImageSet > | supportingImages () const |
| Returns the images that, together with the configuration, defines the deformation. | |
Public Member Functions inherited from AbstractInclude | |
| AbstractInclude (const std::string &defineName, const std::string &includePath) | |
| Creates a AbstractInclude for the given define and with the corresponding GLSL file at includePath. | |
| const std::string & | defineName () const |
| Returns the name of define used by this include. | |
| const std::string & | includePath () const |
| Returns the path to the included shader file. | |
| virtual std::function< std::string(const std::string &)> | includeCodeSubstitution () const |
| Optionally the abstract include can provide a function to change the shader code. | |
| virtual std::vector< AbstractInclude * > | dependentIncludes () const |
| Returns a list of dependent abstract includes that need to be included as well. | |
| virtual Fingerprint | fingerprint () const |
| Provides a finger print of the include. | |
Public Member Functions inherited from MultiIncludable< Deformation, const SharedImage * > | |
| std::shared_ptr< MultiIncludeType > | createMultiInclude (const std::string &replacementToken) |
| Instantiates a new AbstractInclude instance where all occurrences of baseToken provided during construction are replaces with replacementToken according to the specified replacementScheme. | |
| virtual int | setIncludeArguments (Program &prog, IncludeArgumentsTypes... includeArgs, const std::string &token) const=0 |
| Interface that multi includes should use to configure the shader include (such as setting uniforms, binding textures, etc). | |
Public Member Functions inherited from Configurable | |
| virtual void | configure (const Properties *p) |
| Configure this object instance by de-serializing the given Properties. | |
| virtual void | configuration (Properties *p) const |
| Serialize the current object configuration into the given Properties object. | |
| virtual void | configureDefaults () |
| Retrieve the properties of this object, replaces values with their defaults and sets it again. | |
| void | registerParameter (ParameterBase *param) |
| Register the given Parameter or SubProperty, so that it will be configured during configure()/configuration(). | |
| void | unregisterParameter (const ParameterBase *param) |
| Remove the given Parameter or SubProperty from the list of registered parameters. | |
| Configurable (const Configurable &rhs) | |
| Configurable (Configurable &&rhs) noexcept | |
| Configurable & | operator= (const Configurable &) |
| Configurable & | operator= (Configurable &&) noexcept |
Public Member Functions inherited from SignalReceiver | |
| SignalReceiver ()=default | |
| Default constructor. | |
| SignalReceiver (const SignalReceiver &other) | |
| Copy constructor, does not copy any existing signal connections from other. | |
| SignalReceiver & | operator= (SignalReceiver rhs) |
| Assignment operator, disconnects all existing connections, does not copy any existing signal connections from rhs. | |
| virtual | ~SignalReceiver () |
| Virtual destructor disconnects from all connected signals. | |
Static Public Member Functions | |
| static bool | isSupported () |
| Compute shader support is required (i.e. GL 4.3, not on Mac) | |
Static Public Member Functions inherited from Deformation | |
| static std::string | defineName () |
| Returns the define name of GlAbstractInclude for all deformations. | |
| static std::string | defineSuffix () |
| Returns "DEFORM". | |
| static std::string | multiIncludeDefine (const std::string &replacementToken) |
Returns "IMAGE_" + toUpper(replacementToken) | |
Methods of the Deformation base class | |
| virtual Deformation * | clone () const override |
| Returns a copy of the deformation. | |
| virtual vec3 | displacement (const vec3 &pos) const override |
| Returns the displacement for pos (in world coordinates). | |
| vec3 | displacePoint (const vec3 &point) const override |
| Returns the displaced position of the given point in world-coordinates. | |
| virtual bool | isIdentity () const override |
| Returns if the current state of the deformation transformations the image or not. | |
| virtual void | setIdentity () override |
| Sets all displacements to 0. | |
| virtual int | setIncludeArguments (GL::Program &p, const SharedImage *img, const std::string &prefix="deform") const override |
| Override default arguments for GlMask includes. | |
| virtual int | dimension () const override |
| Returns the dimension of the deformation. | |
Additional Inherited Members | |
Public Types inherited from MultiIncludable< Deformation, const SharedImage * > | |
| using | MultiIncludeType |
| Alias for type of a multi-include instance of the original include. | |
Public Attributes inherited from Deformation | |
| Signal< const DeformationEvent & > | signalChanged |
Public Attributes inherited from Configurable | |
| Signal | signalParametersChanged |
Emitted whenever one of the registered Parameters' or SubPropertys' signalValueChanged signal was emitted. | |
Protected Member Functions inherited from Deformation | |
| void | notifyListeners (const DeformationEvent &event) const |
convenience function to call signalChanged.emitSignal(event). | |
Protected Member Functions inherited from MultiIncludable< Deformation, const SharedImage * > | |
| MultiIncludable (Deformation *crtpInstance, const std::string &baseToken, Flags< ShaderTextReplacement > replacementScheme) | |
| Instantiate and configure the MultiIncludable interface. | |
Protected Member Functions inherited from SignalReceiver | |
| void | disconnectAll () |
| Disconnects all existing connections. | |
Protected Attributes inherited from Deformation | |
| bool | m_disabled |
| Disabled flag for visualization. | |
Protected Attributes inherited from Configurable | |
| std::vector< Param > | m_params |
| List of all registered Parameter and SubProperty instances. | |
|
overridevirtual |
Returns a copy of the deformation.
Implements Deformation.
|
overridevirtual |
Returns the displacement for pos (in world coordinates).
The returned displacement is also in world coordinates. The displacement indicates where pos originated from before applying the deformation.
Implements Deformation.
|
overridevirtual |
Returns the displaced position of the given point in world-coordinates.
This method will estimate the inverse displacement.
Reimplemented from Deformation.
|
overridevirtual |
Returns if the current state of the deformation transformations the image or not.
Implements Deformation.
|
overridevirtual |
Sets all displacements to 0.
Implements Deformation.
|
overridevirtual |
Override default arguments for GlMask includes.
Implements Deformation.
|
overridevirtual |
Returns the dimension of the deformation.
Implements Deformation.
|
inlineoverridevirtual |
Returns a unique string identifier for this type of deformation.
Usually the name of the class.
Implements Deformation.