Medical Imaging Interaction Toolkit
2024.06.00
Medical Imaging Interaction Toolkit
|
#include <mitkTimeGeometry.h>
Public Types | |
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 |
virtual const char * | GetClassName () const |
Pointer | Clone () const |
itkCreateAnotherMacro (Self) | |
virtual TimeStepType | CountTimeSteps () const =0 |
Returns the number of time steps. More... | |
virtual TimePointType | GetMinimumTimePoint () const =0 |
Returns the first time point for which the object is valid. More... | |
virtual TimePointType | GetMaximumTimePoint () const =0 |
Returns the last time point for which the object is valid. More... | |
virtual TimePointType | GetMinimumTimePoint (TimeStepType step) const =0 |
Returns the first time point for which the object is valid. More... | |
virtual TimePointType | GetMaximumTimePoint (TimeStepType step) const =0 |
Returns the last time point for which the object is valid. More... | |
virtual TimeBounds | GetTimeBounds () const =0 |
Get the time bounds (in ms) More... | |
virtual TimeBounds | GetTimeBounds (TimeStepType step) const =0 |
Get the time bounds for the given TimeStep (in ms) More... | |
virtual bool | IsValidTimePoint (TimePointType timePoint) const =0 |
Tests if a given time point is covered by this object. More... | |
virtual bool | IsValidTimeStep (TimeStepType timeStep) const =0 |
Test for the given time step if a geometry is available. More... | |
virtual TimePointType | TimeStepToTimePoint (TimeStepType timeStep) const =0 |
Converts a time step to a time point. More... | |
virtual TimeStepType | TimePointToTimeStep (TimePointType timePoint) const =0 |
Converts a time point to the corresponding time step. More... | |
virtual BaseGeometry::Pointer | GetGeometryForTimePoint (TimePointType timePoint) const =0 |
Returns the geometry of a specific time point. More... | |
virtual BaseGeometry::Pointer | GetGeometryForTimeStep (TimeStepType timeStep) const =0 |
Returns the geometry which corresponds to the given time step. More... | |
virtual BaseGeometry::Pointer | GetGeometryCloneForTimeStep (TimeStepType timeStep) const =0 |
Returns a clone of the geometry of a specific time point. More... | |
virtual void | SetTimeStepGeometry (BaseGeometry *geometry, TimeStepType timeStep)=0 |
Sets the geometry for a given time step. More... | |
virtual void | Expand (TimeStepType size)=0 |
Expands to the given number of time steps. More... | |
virtual void | ReplaceTimeStepGeometries (const BaseGeometry *geometry)=0 |
Replaces the geometry instances with clones ot the passed geometry. More... | |
virtual bool | IsValid () const =0 |
Tests if all necessary information are set and the object is valid. More... | |
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... | |
virtual void | Initialize () |
Initializes the TimeGeometry. 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 () |
Protected Member Functions | |
TimeGeometry () | |
~TimeGeometry () override | |
LightObject::Pointer | InternalClone () const override |
Makes a deep copy of the current object. More... | |
Protected Attributes | |
BoundingBox::Pointer | m_BoundingBox |
Contains a bounding box which includes all time steps. More... | |
Definition at line 45 of file mitkTimeGeometry.h.
typedef itk::SmartPointer<const Self> mitk::TimeGeometry::ConstPointer |
Definition at line 62 of file mitkTimeGeometry.h.
Definition at line 62 of file mitkTimeGeometry.h.
typedef TimeGeometry mitk::TimeGeometry::Self |
Definition at line 62 of file mitkTimeGeometry.h.
typedef itk::Object mitk::TimeGeometry::Superclass |
Definition at line 62 of file mitkTimeGeometry.h.
|
protected |
|
overrideprotected |
Pointer mitk::TimeGeometry::Clone | ( | ) | const |
|
pure virtual |
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.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
overridevirtual |
Executes the given operation on all time steps.
Implements mitk::OperationActor.
|
pure virtual |
Expands to the given number of time steps.
Expands to the given number of time steps. Each new created time step is filled with an empty geometry. Shrinking is not supported!
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
inline |
Returns a bounding box that covers all time steps.
Definition at line 265 of file mitkTimeGeometry.h.
|
inline |
Returns the world bounds of the object that cover all time steps.
Definition at line 269 of file mitkTimeGeometry.h.
Point3D mitk::TimeGeometry::GetCenterInWorld | ( | ) | const |
Get the center of the bounding-box in mm.
|
inlinevirtual |
Reimplemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
Definition at line 62 of file mitkTimeGeometry.h.
|
virtual |
Reimplemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
Point3D mitk::TimeGeometry::GetCornerPointInWorld | ( | bool | xFront = true , |
bool | yFront = true , |
||
bool | zFront = true |
||
) | const |
Get the position of a corner (in world coordinates)
See SetImageGeometry for how a corner is defined on images.
Point3D mitk::TimeGeometry::GetCornerPointInWorld | ( | int | id | ) | const |
Get the position of the corner number id (in world coordinates)
See SetImageGeometry for how a corner is defined on images.
double mitk::TimeGeometry::GetDiagonalLength2InWorld | ( | ) | const |
Get the squared length of the diagonal of the bounding-box in mm.
double mitk::TimeGeometry::GetDiagonalLengthInWorld | ( | ) | const |
Get the length of the diagonal of the bounding-box in mm.
ScalarType mitk::TimeGeometry::GetExtentInWorld | ( | unsigned int | direction | ) | const |
Returns the Extend of the bounding in the given direction.
|
pure virtual |
Returns a clone of the geometry of a specific time point.
If an invalid time step is given (e.g. no geometry is defined for this time step) a null-pointer will be returned.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
Returns the geometry of a specific time point.
Returns the geometry which defines the given time point. If the given time point is invalid an null-pointer is returned.
The pointer to the returned geometry may point to the saved geometry but this is not necessarily the case. So a change to the returned geometry may or may not afflict the geometry for the time point or all time points depending on the used implementation of TimeGeometry.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
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.
The pointer to the returned geometry may point to the saved geometry but this is not necessarily the case. So a change to the returned geometry may or may not afflict the geometry for the time step or all time steps depending on the used implementation of TimeGeometry.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
Returns the last time point for which the object is valid.
Gives the last time point for which a valid geometry is saved in this time geometry. The time point is given in ms.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
Returns the last time point for which the object is valid.
Gives the last time point for the Geometry specified by the given TimeStep. The time point is given in ms.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
Returns the first time point for which the object is valid.
Returns the first valid time point for this geometry. If only one time steps available it usually goes from -max to +max. The time point is given in ms.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
Returns the first time point for which the object is valid.
Returns the first valid time point for the given TimeStep. The time point is given in ms.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
inlinestatic |
Definition at line 62 of file mitkTimeGeometry.h.
|
pure virtual |
Get the time bounds (in ms)
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
Get the time bounds for the given TimeStep (in ms)
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
virtual |
Initializes the TimeGeometry.
Reimplemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
overrideprotected |
Makes a deep copy of the current object.
|
pure virtual |
Tests if all necessary information are set and the object is valid.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
Tests if a given time point is covered by this object.
Returns true if a geometry can be returned for the given time point and falls if not. The time point must be given in ms.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
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.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
Referenced by mitk::GenerateTimeInInputRegion().
bool mitk::TimeGeometry::IsWorldPointInside | ( | const mitk::Point3D & | p | ) | const |
Test whether the point p (world coordinates in mm) is inside the bounding box.
mitk::TimeGeometry::itkCreateAnotherMacro | ( | Self | ) |
|
override |
|
pure virtual |
Replaces the geometry instances with clones ot 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.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
Sets the geometry for a given time step.
Sets the geometry for the given time steps. This may also afflects other time steps, depending on the implementation of TimeGeometry.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
|
pure virtual |
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. If a negative invalid time point is given always time step 0 is returned. If an positive invalid time step is given an invalid time step will be returned.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
Referenced by mitk::GenerateTimeInInputRegion().
|
pure virtual |
Converts a time step to a time point.
Converts a time step to a time point in a way that the new time point indicates the same geometry as the time step. 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.
Implemented in mitk::ArbitraryTimeGeometry, and mitk::ProportionalTimeGeometry.
Referenced by mitk::GenerateTimeInInputRegion().
void mitk::TimeGeometry::Update | ( | ) |
Updates the geometry.
void mitk::TimeGeometry::UpdateBoundingBox | ( | ) |
Updates the bounding box to cover the area used in all time steps.
The bounding box is updated by this method. The new bounding box covers an area which includes all bounding boxes during all times steps.
|
inlinevirtual |
Updates everything except the Bounding box.
This class should be overwritten by child classes. The method is called when Update() is required.
Definition at line 291 of file mitkTimeGeometry.h.
|
protected |
Contains a bounding box which includes all time steps.
Definition at line 54 of file mitkTimeGeometry.h.