ImFusion SDK 4.3
MotionModelGenerator Class Reference

#include <ImFusion/CT/Geometry/MotionModelGenerator.h>

Geometry generator using motion models for complex trajectories. More...

+ Inheritance diagram for MotionModelGenerator:

Detailed Description

Geometry generator using motion models for complex trajectories.

Stores and manages geometry data for SharedImageSet using motion model representations.

Public Types

using Base = detail::RelativeGeneratorMixin<GeometryGenerator>
 

Public Member Functions

 MotionModelGenerator (const MotionModelGenerator &other)
 
 MotionModelGenerator (const SharedImageSet &sis)
 
std::unique_ptr< GeometryGeneratorclone () const override
 Factory method to create a clone of the generator.
 
std::string id () const override
 Provides a unique identifier for the generator.
 
void configure (const Properties *p) override
 Configure this object instance by de-serializing the given Properties.
 
void configuration (Properties *p) const override
 Serialize the current object configuration into the given Properties object.
 
std::vector< GeometryUtils::FullGeometryRepresentationcomputeFullGeometryRepresentation (const SharedImageSet &sis) const
 Compute the full geometry representation for all frames in the SharedImageSet.
 
GeometryUtils::FullGeometryRepresentation computeFullGeometryRepresentation (const SharedImageSet &sis, int frame) const
 Compute the full geometry representation for a single frame in the SharedImageSet.
 
- Public Member Functions inherited from RelativeGeneratorMixin< GeometryGenerator >
 RelativeGeneratorMixin (const SharedImageSet &sis)
 
 RelativeGeneratorMixin (const RelativeGeneratorMixin &other)
 
RelativeGeneratorMixinoperator= (const RelativeGeneratorMixin &other)=delete
 
void configure (const Properties *p) override
 
- Public Member Functions inherited from GeometryGenerator
 GeometryGenerator (const SharedImageSet &sis)
 
std::vector< GeometryUtils::FullGeometryRepresentationcomputeFullGeometryRepresentation (const SharedImageSet &sis) const
 Compute the full geometry representation for all frames in the SharedImageSet.
 
GeometryUtils::FullGeometryRepresentation computeFullGeometryRepresentation (const SharedImageSet &sis, int frame) const
 Compute the full geometry representation for a single frame in the SharedImageSet.
 
std::unique_ptr< ParameterWrapperBasecreateParameterWrapper (SharedImageSet &sis) const
 Generates a ParameterWrapperBase for the generator.
 
bool operator== (const GeometryGenerator &other)
 Compares members for equality.
 
- Public Member Functions inherited from Configurable
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
 
Configurableoperator= (const Configurable &)
 
Configurableoperator= (Configurable &&) noexcept
 

Public Attributes

SubProperty< RelativeTransformationConfigp_transformationConfig
 The transformation configuration.
 
SubProperty< MotionModelp_motionModel = {"motionModel", 1, this}
 The motion model to use for the geometry generation.
 
std::vector< Parameter< mat4 > > p_controlPointTransforms
 Transformation per control point of the MotionModel. The SubProperties have the name "controlPointTransform-" + index of the control point.
 
std::vector< Parameter< double > > p_controlPointLocations
 Locations per control point of the MotionModel. The SubProperties have the name "controlPointLocation-" + index of the control point.
 
- Public Attributes inherited from RelativeGeneratorMixin< GeometryGenerator >
SubProperty< std::unique_ptr< GeometryGenerator > > p_generator
 
- Public Attributes inherited from Configurable
Signal signalParametersChanged
 Emitted whenever one of the registered Parameters' or SubPropertys' signalValueChanged signal was emitted.
 

Additional Inherited Members

- Protected Member Functions inherited from RelativeGeneratorMixin< GeometryGenerator >
bool isEqual (const GeometryGenerator &rhs) override
 
- Protected Attributes inherited from Configurable
std::vector< Paramm_params
 List of all registered Parameter and SubProperty instances.
 

Member Function Documentation

◆ clone()

std::unique_ptr< GeometryGenerator > clone ( ) const
overridevirtual

Factory method to create a clone of the generator.

Implements GeometryGenerator.

◆ id()

std::string id ( ) const
inlineoverridevirtual

Provides a unique identifier for the generator.

Implements GeometryGenerator.

◆ configure()

void configure ( const Properties * p)
overridevirtual

Configure this object instance by de-serializing the given Properties.

The default implementation will do so automatically for all registered Parameter and SubProperty instances.

See also
configuration() for the inverse functionality

Reimplemented from Configurable.

◆ configuration()

void configuration ( Properties * p) const
overridevirtual

Serialize the current object configuration into the given Properties object.

The default implementation will do so automatically for all registered Parameter and SubProperty instances.

See also
configure() for the inverse functionality

Reimplemented from GeometryGenerator.

◆ computeFullGeometryRepresentation() [1/2]

std::vector< GeometryUtils::FullGeometryRepresentation > computeFullGeometryRepresentation ( const SharedImageSet & sis) const

Compute the full geometry representation for all frames in the SharedImageSet.

Parameters
sisThe SharedImageSet to compute the geometry for.
Returns
A vector of FullGeometryRepresentation for each frame in the SharedImageSet.
Note
Can utilize DetectorDataComponent::p_persistentIndex to keep track of the original index of the frame.
The implementation calls computeFullGeometryRepresentation(const SharedImageSet&, int) for each frame.

◆ computeFullGeometryRepresentation() [2/2]

GeometryUtils::FullGeometryRepresentation computeFullGeometryRepresentation ( const SharedImageSet & sis,
int frame ) const

Compute the full geometry representation for a single frame in the SharedImageSet.

Parameters
sisThe SharedImageSet to compute the geometry for.
frameThe frame to compute the geometry for.
Returns
The FullGeometryRepresentation for the given frame.

Member Data Documentation

◆ p_transformationConfig

SubProperty<RelativeTransformationConfig> p_transformationConfig
Initial value:
= {"transformationConfig",
this}
Configuration structure for relative transformation setup.
Definition RelativeTransformationSetupWrapper.h:14

The transformation configuration.


The documentation for this class was generated from the following file:
Search Tab / S to search, Esc to close