Medical Imaging Interaction Toolkit
2024.06.00
Medical Imaging Interaction Toolkit
|
#include <mitkArbitraryTimeGeometry.h>
Public Types | |
typedef ArbitraryTimeGeometry | Self |
typedef TimeGeometry | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef ArbitraryTimeGeometry | self |
Public Types inherited from mitk::TimeGeometry | |
typedef TimeGeometry | Self |
typedef itk::Object | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
Public Member Functions | |
virtual std::vector< std::string > | GetClassHierarchy () const override |
virtual const char * | GetClassName () const |
ArbitraryTimeGeometry () | |
Pointer | Clone () const |
TimeStepType | CountTimeSteps () const override |
Returns the number of time steps. More... | |
TimePointType | GetMinimumTimePoint () const override |
Returns the first time point for which the time geometry instance is valid. More... | |
TimePointType | GetMaximumTimePoint () const override |
Returns the last time point for which the time geometry instance is valid. More... | |
TimePointType | GetMinimumTimePoint (TimeStepType step) const override |
Returns the first time point for which the time geometry instance is valid. More... | |
TimePointType | GetMaximumTimePoint (TimeStepType step) const override |
Returns the last time point for which the time geometry instance is valid. More... | |
TimeBounds | GetTimeBounds () const override |
Get the time bounds (in ms) it returns GetMinimumTimePoint() and GetMaximumTimePoint() results as bounds. More... | |
TimeBounds | GetTimeBounds (TimeStepType step) const override |
Get the time bounds for the given TimeStep (in ms) More... | |
bool | IsValidTimePoint (TimePointType timePoint) const override |
Tests if a given time point is covered by this time geometry instance. More... | |
bool | IsValidTimeStep (TimeStepType timeStep) const override |
Test for the given time step if a geometry is available. More... | |
TimePointType | TimeStepToTimePoint (TimeStepType timeStep) const override |
Converts a time step to a time point. More... | |
TimeStepType | TimePointToTimeStep (TimePointType timePoint) const override |
Converts a time point to the corresponding time step. More... | |
BaseGeometry::Pointer | GetGeometryCloneForTimeStep (TimeStepType timeStep) const override |
Returns the geometry which corresponds to the given time step. More... | |
BaseGeometry::Pointer | GetGeometryForTimePoint (TimePointType timePoint) const override |
Returns the geometry which corresponds to the given time point. More... | |
BaseGeometry::Pointer | GetGeometryForTimeStep (TimeStepType timeStep) const override |
Returns the geometry which corresponds to the given time step. More... | |
bool | IsValid () const override |
Tests if all necessary information are set and the object is valid. More... | |
void | Initialize () override |
Initializes a new object with one time steps which contains an empty geometry. More... | |
void | Expand (TimeStepType size) override |
Expands the time geometry to the given number of time steps. More... | |
void | ReplaceTimeStepGeometries (const BaseGeometry *geometry) override |
Replaces the geometry instances with clones of the passed geometry. More... | |
void | SetTimeStepGeometry (BaseGeometry *geometry, TimeStepType timeStep) override |
Sets the geometry for the given time step. More... | |
itk::LightObject::Pointer | InternalClone () const override |
Makes a deep copy of the current object. More... | |
void | ClearAllGeometries () |
void | AppendNewTimeStep (BaseGeometry *geometry, TimePointType minimumTimePoint, TimePointType maximumTimePoint) |
void | AppendNewTimeStepClone (const BaseGeometry *geometry, TimePointType minimumTimePoint, TimePointType maximumTimePoint) |
void | ReserveSpaceForGeometries (TimeStepType numberOfGeometries) |
void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
bool | HasCollapsedFinalTimeStep () const |
Public Member Functions inherited from mitk::TimeGeometry | |
Pointer | Clone () const |
itkCreateAnotherMacro (Self) | |
Point3D | GetCornerPointInWorld (int id) const |
Get the position of the corner number id (in world coordinates) More... | |
Point3D | GetCornerPointInWorld (bool xFront=true, bool yFront=true, bool zFront=true) const |
Get the position of a corner (in world coordinates) More... | |
Point3D | GetCenterInWorld () const |
Get the center of the bounding-box in mm. More... | |
double | GetDiagonalLength2InWorld () const |
Get the squared length of the diagonal of the bounding-box in mm. More... | |
double | GetDiagonalLengthInWorld () const |
Get the length of the diagonal of the bounding-box in mm. More... | |
bool | IsWorldPointInside (const mitk::Point3D &p) const |
Test whether the point p (world coordinates in mm) is inside the bounding box. More... | |
void | UpdateBoundingBox () |
Updates the bounding box to cover the area used in all time steps. More... | |
BoundingBox * | GetBoundingBoxInWorld () const |
Returns a bounding box that covers all time steps. More... | |
BoundingBox::BoundsArrayType | GetBoundsInWorld () const |
Returns the world bounds of the object that cover all time steps. More... | |
ScalarType | GetExtentInWorld (unsigned int direction) const |
Returns the Extend of the bounding in the given direction. More... | |
void | Update () |
Updates the geometry. More... | |
virtual void | UpdateWithoutBoundingBox () |
Updates everything except the Bounding box. More... | |
void | ExecuteOperation (Operation *op) override |
Executes the given operation on all time steps. More... | |
void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
Public Member Functions inherited from mitk::OperationActor | |
itkTypeMacroNoParent (OperationActor) virtual ~OperationActor() | |
Static Public Member Functions | |
static const char * | GetStaticNameOfClass () |
static Pointer | New () |
Static Public Member Functions inherited from mitk::TimeGeometry | |
static const char * | GetStaticNameOfClass () |
Protected Member Functions | |
~ArbitraryTimeGeometry () override | |
Protected Member Functions inherited from mitk::TimeGeometry | |
TimeGeometry () | |
~TimeGeometry () override | |
LightObject::Pointer | InternalClone () const override |
Makes a deep copy of the current object. More... | |
Protected Attributes | |
std::vector< BaseGeometry::Pointer > | m_GeometryVector |
std::vector< TimePointType > | m_MinimumTimePoints |
std::vector< TimePointType > | m_MaximumTimePoints |
Protected Attributes inherited from mitk::TimeGeometry | |
BoundingBox::Pointer | m_BoundingBox |
Contains a bounding box which includes all time steps. More... | |
Definition at line 44 of file mitkArbitraryTimeGeometry.h.
typedef itk::SmartPointer<const Self> mitk::ArbitraryTimeGeometry::ConstPointer |
Definition at line 47 of file mitkArbitraryTimeGeometry.h.
Definition at line 47 of file mitkArbitraryTimeGeometry.h.
Definition at line 47 of file mitkArbitraryTimeGeometry.h.
Definition at line 50 of file mitkArbitraryTimeGeometry.h.
Definition at line 47 of file mitkArbitraryTimeGeometry.h.
mitk::ArbitraryTimeGeometry::ArbitraryTimeGeometry | ( | ) |
|
overrideprotected |
void mitk::ArbitraryTimeGeometry::AppendNewTimeStep | ( | BaseGeometry * | geometry, |
TimePointType | minimumTimePoint, | ||
TimePointType | maximumTimePoint | ||
) |
Append the passed geometry to the time geometry.
void mitk::ArbitraryTimeGeometry::AppendNewTimeStepClone | ( | const BaseGeometry * | geometry, |
TimePointType | minimumTimePoint, | ||
TimePointType | maximumTimePoint | ||
) |
Same than AppendNewTimeStep. But clones geometry before adding it.
void mitk::ArbitraryTimeGeometry::ClearAllGeometries | ( | ) |
Pointer mitk::ArbitraryTimeGeometry::Clone | ( | ) | const |
|
overridevirtual |
Returns the number of time steps.
Returns the number of time steps for which geometries are saved. The number of time steps is also the upper bound of the time steps. The minimum time steps is always 0.
Implements mitk::TimeGeometry.
|
overridevirtual |
Expands the time geometry to the given number of time steps.
Initializes the new time steps with empty geometries. This default geometries will behave like ProportionalTimeGeometry. Shrinking is not supported. The new steps will have the same duration like the last step before extension.
Implements mitk::TimeGeometry.
|
inlineoverridevirtual |
Reimplemented from mitk::TimeGeometry.
Definition at line 47 of file mitkArbitraryTimeGeometry.h.
|
virtual |
Reimplemented from mitk::TimeGeometry.
|
overridevirtual |
Returns the geometry which corresponds to the given time step.
Returns a clone of the geometry which defines the given time step. If the given time step is invalid an null-pointer is returned.
Implements mitk::TimeGeometry.
|
overridevirtual |
Returns the geometry which corresponds to the given time point.
Returns the geometry which defines the given time point. If the given time point is invalid an null-pointer is returned.
If the returned geometry is changed this will affect the saved geometry.
Implements mitk::TimeGeometry.
|
overridevirtual |
Returns the geometry which corresponds to the given time step.
Returns the geometry which defines the given time step. If the given time step is invalid an null-pointer is returned.
If the returned geometry is changed this will affect the saved geometry.
Implements mitk::TimeGeometry.
|
overridevirtual |
Returns the last time point for which the time geometry instance is valid.
Gives the last time point for which a valid geometry is saved in this time geometry. It is the upper time bound of the last step. The time point is given in ms.
Implements mitk::TimeGeometry.
|
overridevirtual |
Returns the last time point for which the time geometry instance is valid.
Gives the last time point for the Geometry specified by the given TimeStep. The time point is given in ms.
Implements mitk::TimeGeometry.
|
overridevirtual |
Returns the first time point for which the time geometry instance is valid.
Returns the first valid time point for this geometry. It is the lower time bound of the first step. The time point is given in ms.
Implements mitk::TimeGeometry.
|
overridevirtual |
Returns the first time point for which the time geometry instance is valid.
Returns the first valid time point for the given TimeStep. The time point is given in ms.
Implements mitk::TimeGeometry.
|
inlinestatic |
Definition at line 47 of file mitkArbitraryTimeGeometry.h.
|
overridevirtual |
Get the time bounds (in ms) it returns GetMinimumTimePoint() and GetMaximumTimePoint() results as bounds.
Implements mitk::TimeGeometry.
|
overridevirtual |
Get the time bounds for the given TimeStep (in ms)
Implements mitk::TimeGeometry.
bool mitk::ArbitraryTimeGeometry::HasCollapsedFinalTimeStep | ( | ) | const |
This is a helper that indicates problematic corner cases that often occur e.g. when loading dynamic DICOM data. There the final time step is collapsed as min time bound and max time bound have the same value. For a more detailed explanation why it happens please see: https://phabricator.mitk.org/T24766#131411 and https://phabricator.mitk.org/T27259#203524
|
overridevirtual |
Initializes a new object with one time steps which contains an empty geometry.
Reimplemented from mitk::TimeGeometry.
|
override |
Makes a deep copy of the current object.
|
overridevirtual |
Tests if all necessary information are set and the object is valid.
Implements mitk::TimeGeometry.
|
overridevirtual |
Tests if a given time point is covered by this time geometry instance.
Returns true if a geometry can be returned for the given time point (so it is within GetTimeBounds() and fails if not. The time point must be given in ms.
Implements mitk::TimeGeometry.
|
overridevirtual |
Test for the given time step if a geometry is available.
Returns true if a geometry is defined for the given time step. Otherwise false is returned. The time step is defined as positive number.
Implements mitk::TimeGeometry.
|
static |
|
override |
|
overridevirtual |
Replaces the geometry instances with clones of the passed geometry.
Replaces the geometries of all time steps with clones of the passed geometry. Replacement strategy depends on the implementation of TimeGeometry sub class.
Implements mitk::TimeGeometry.
void mitk::ArbitraryTimeGeometry::ReserveSpaceForGeometries | ( | TimeStepType | numberOfGeometries | ) |
|
overridevirtual |
Sets the geometry for the given time step.
If passed time step is not valid. Nothing will be changed.
Implements mitk::TimeGeometry.
|
overridevirtual |
Converts a time point to the corresponding time step.
Converts a time point to a time step in a way that the new time step indicates the same geometry as the time point. The associated time step is the last step which lower time bound is smaller or equal then the time point. If a negative invalid time point is given always time step 0 is returned. If a positive invalid time point is given the last time step will be returned. This is also true for time points that are exactly on the upper time bound (the only exception is the final time step in case that HasCollapsedFinalTimeStep() is true).
Implements mitk::TimeGeometry.
|
overridevirtual |
Converts a time step to a time point.
Converts a time step to a time point by using the time steps lower time bound. If the original time steps does not point to a valid geometry, a time point is calculated that also does not point to a valid geometry, but no exception is raised.
Implements mitk::TimeGeometry.
|
protected |
Definition at line 245 of file mitkArbitraryTimeGeometry.h.
|
protected |
Definition at line 247 of file mitkArbitraryTimeGeometry.h.
|
protected |
Definition at line 246 of file mitkArbitraryTimeGeometry.h.