|
| | mitkClassMacro (SlicedGeometry3D, BaseGeometry) |
| |
| Pointer | Clone () const |
| |
| virtual mitk::PlaneGeometry * | GetPlaneGeometry (int s) const |
| | Returns the PlaneGeometry of the slice (s). More...
|
| |
| void | ChangeImageGeometryConsideringOriginOffset (const bool isAnImageGeometry) override |
| | Switch between image geometry and normal geometry with origin correction. More...
|
| |
| const mitk::BoundingBox * | GetBoundingBox () const override |
| | Get the bounding box of this sliced geometry. More...
|
| |
| virtual unsigned int | GetSlices () const |
| | Get the number of slices. More...
|
| |
| virtual bool | SetPlaneGeometry (mitk::PlaneGeometry *geometry2D, int s) |
| | Set PlaneGeometry of slice s. More...
|
| |
| virtual bool | IsValidSlice (int s=0) const |
| | Check whether a slice exists. More...
|
| |
| virtual const BaseGeometry * | GetReferenceGeometry () const |
| | Get the reference geometry used for reslicing calculations. More...
|
| |
| virtual void | SetReferenceGeometry (const BaseGeometry *referenceGeometry) |
| | Set the reference geometry for reslicing calculations. More...
|
| |
| bool | HasReferenceGeometry () const |
| | Check whether a reference geometry has been set. More...
|
| |
| virtual void | SetSliceNavigationController (mitk::SliceNavigationController *snc) |
| | Set the SliceNavigationController corresponding to this sliced geometry. More...
|
| |
| mitk::SliceNavigationController * | GetSliceNavigationController () |
| | Get the SliceNavigationController associated with this geometry. More...
|
| |
| virtual bool | GetEvenlySpaced () const |
| | Set/Get whether the SlicedGeometry3D is evenly-spaced (m_EvenlySpaced) More...
|
| |
| virtual void | SetEvenlySpaced (bool on=true) |
| |
| virtual void | SetDirectionVector (const mitk::Vector3D &directionVector) |
| | Set/Get the vector between slices for the evenly-spaced case (m_EvenlySpaced==true). More...
|
| |
| virtual const mitk::Vector3D & | GetDirectionVector () const |
| |
| virtual void | InitializeSlicedGeometry (unsigned int slices) |
| | Tell this instance how many PlaneGeometries it shall manage. Bounding box and the PlaneGeometries must be set additionally by calling the respective methods! More...
|
| |
| virtual void | InitializeEvenlySpaced (mitk::PlaneGeometry *geometry2D, unsigned int slices) |
| | Completely initialize this instance as evenly-spaced with slices parallel to the provided PlaneGeometry that is used as the first slice and for spacing calculation. More...
|
| |
| virtual void | InitializeEvenlySpaced (mitk::PlaneGeometry *geometry2D, mitk::ScalarType zSpacing, unsigned int slices) |
| | Completely initialize this instance as evenly-spaced with slices parallel to the provided PlaneGeometry that is used as the first slice and for spacing calculation (except z-spacing). More...
|
| |
| virtual void | InitializePlanes (const mitk::BaseGeometry *geometry3D, mitk::AnatomicalPlane orientation, bool top=true, bool frontside=true, bool rotated=false) |
| | Completely initialize this instance as evenly-spaced plane slices parallel to a side of the provided BaseGeometry and using its spacing information. More...
|
| |
| void | SetImageGeometry (const bool isAnImageGeometry) override |
| | Override to propagate the ImageGeometry flag to all slice geometries. More...
|
| |
| void | ExecuteOperation (Operation *operation) override |
| | Execute an operation on this sliced geometry. More...
|
| |
| | mitkClassMacroItkParent (BaseGeometry, itk::Object) |
| |
| Pointer | Clone () const |
| |
| Point3D | GetOrigin () const |
| | Get the origin of the geometry in world coordinates (mm). More...
|
| |
| void | SetOrigin (const Point3D &origin) |
| | Set the origin of the geometry in world coordinates (mm). More...
|
| |
| mitk::Vector3D | GetSpacing () const |
| | Get the spacing (voxel size) in mm per unit for each axis. More...
|
| |
| void | SetSpacing (const mitk::Vector3D &aSpacing, bool enforceSetSpacing=false) |
| | Set the spacing (voxel size) for each axis. More...
|
| |
| VnlVector | GetOriginVnl () const |
| | Get the origin as a VNL vector. More...
|
| |
| virtual unsigned int | GetFrameOfReferenceID () const |
| | Get the DICOM FrameOfReferenceID referring to the world coordinate system. More...
|
| |
| virtual void | SetFrameOfReferenceID (unsigned int _arg) |
| | Set the DICOM FrameOfReferenceID referring to the world coordinate system. More...
|
| |
| virtual unsigned long | GetIndexToWorldTransformLastModified () const |
| | Get the last-modified timestamp of the IndexToWorldTransform. More...
|
| |
| void | Modified () const override |
| | Overloaded Modified() to support the ModifiedLock mechanism. More...
|
| |
| virtual bool | IsValid () const |
| | Check whether this geometry is in a valid state. More...
|
| |
| void | Initialize () |
| | Initialize the geometry to default values. More...
|
| |
| void | InitializeGeometry (Self *newGeometry) const |
| | Copy the essential geometry properties into another instance. More...
|
| |
| mitk::AffineTransform3D * | GetIndexToWorldTransform () |
| | Get the affine transform that maps index coordinates to world coordinates. More...
|
| |
| const mitk::AffineTransform3D * | GetIndexToWorldTransform () const |
| | Get the affine transform that maps index coordinates to world coordinates (const). More...
|
| |
| void | SetIndexToWorldTransform (mitk::AffineTransform3D *transform) |
| | Set the affine transform for index-to-world coordinate mapping. More...
|
| |
| void | SetIndexToWorldTransformByVtkMatrix (vtkMatrix4x4 *vtkmatrix) |
| | Set the IndexToWorldTransform via a vtkMatrix4x4. More...
|
| |
| void | SetIndexToWorldTransformWithoutChangingSpacing (mitk::AffineTransform3D *transform) |
| | Set the IndexToWorldTransform while preserving the current spacing. More...
|
| |
| void | SetIndexToWorldTransformByVtkMatrixWithoutChangingSpacing (vtkMatrix4x4 *vtkmatrix) |
| | Set the IndexToWorldTransform via a vtkMatrix4x4 while preserving spacing. More...
|
| |
| vtkMatrix4x4 * | GetVtkMatrix () |
| | Get the IndexToWorldTransform as a 4x4 VTK matrix. More...
|
| |
| const vtkMatrix4x4 * | GetVtkMatrix () const |
| | Get the IndexToWorldTransform as a 4x4 VTK matrix (const). More...
|
| |
| vtkLinearTransform * | GetVtkTransform () const |
| | Get the IndexToWorldTransform as a vtkLinearTransform. More...
|
| |
| void | SetIdentity () |
| | Reset the geometry to identity. More...
|
| |
| void | Compose (const TransformType *other, bool pre=false) |
| | Compose the IndexToWorldTransform with another transform. More...
|
| |
| void | Compose (const vtkMatrix4x4 *vtkmatrix, bool pre=false) |
| | Compose the IndexToWorldTransform with a vtkMatrix4x4. More...
|
| |
| void | Translate (const Vector3D &vector) |
| | Translate the origin by a given vector. More...
|
| |
| void | WorldToIndex (const mitk::Point3D &pt_mm, mitk::Point3D &pt_units) const |
| | Convert world coordinates (mm) of a point to continuous index coordinates. More...
|
| |
| void | WorldToIndex (const mitk::Vector3D &vec_mm, mitk::Vector3D &vec_units) const |
| | Convert world coordinates (mm) of a vector to continuous index coordinates. More...
|
| |
| template<unsigned int VIndexDimension> |
| void | WorldToIndex (const mitk::Point3D &pt_mm, itk::Index< VIndexDimension > &index) const |
| | Convert world coordinates (mm) of a point to discrete (integer) index coordinates. More...
|
| |
| void | IndexToWorld (const mitk::Vector3D &vec_units, mitk::Vector3D &vec_mm) const |
| | Convert index coordinates of a vector to world coordinates (mm). More...
|
| |
| void | IndexToWorld (const mitk::Point3D &pt_units, mitk::Point3D &pt_mm) const |
| | Convert continuous or discrete index coordinates of a point to world coordinates (mm). More...
|
| |
| template<unsigned int VIndexDimension> |
| void | IndexToWorld (const itk::Index< VIndexDimension > &index, mitk::Point3D &pt_mm) const |
| | Convert discrete (itk::Index) index coordinates of a point to world coordinates (mm). More...
|
| |
| template<class TCoordRep > |
| void | ItkPhysicalPointToWorld (const itk::Point< TCoordRep, 3 > &itkPhysicalPoint, mitk::Point3D &pt_mm) const |
| | Convert an ITK physical point to MITK world coordinates. More...
|
| |
| template<class TCoordRep > |
| void | WorldToItkPhysicalPoint (const mitk::Point3D &pt_mm, itk::Point< TCoordRep, 3 > &itkPhysicalPoint) const |
| | Convert MITK world coordinates to ITK physical coordinates. More...
|
| |
| virtual const BoundingBoxType * | GetBoundingBox () |
| | Get the bounding box in index/unit coordinates. More...
|
| |
| const BoundsArrayType | GetBounds () const |
| | Get the bounding box bounds as a BoundsArrayType in index/unit coordinates. More...
|
| |
| void | SetBounds (const BoundsArrayType &bounds) |
| | Set the bounding box in index/unit coordinates. More...
|
| |
| void | SetFloatBounds (const float bounds[6]) |
| | Set the bounding box via a float array. More...
|
| |
| void | SetFloatBounds (const double bounds[6]) |
| | Set the bounding box via a double array. More...
|
| |
| VnlVector | GetMatrixColumn (unsigned int direction) const |
| | Get a column of the IndexToWorldTransform matrix as a VnlVector. More...
|
| |
| mitk::BoundingBox::Pointer | CalculateBoundingBoxRelativeToTransform (const mitk::AffineTransform3D *transform) const |
| | Calculate a bounding box relative to a given transform. More...
|
| |
| ScalarType | GetExtent (unsigned int direction) const |
| | Set the time bounds (in ms) More...
|
| |
| ScalarType | GetExtentInMM (int direction) const |
| | Get the extent of the bounding box in mm along the specified direction. More...
|
| |
| Vector3D | GetAxisVector (unsigned int direction) const |
| | Get a vector along the bounding box in the specified direction in mm. More...
|
| |
| virtual bool | Is2DConvertable () |
| | Check if this geometry can be converted to 2D without information loss. More...
|
| |
| Point3D | GetCenter () const |
| | Get the center of the bounding box in world coordinates (mm). More...
|
| |
| double | GetDiagonalLength2 () const |
| | Get the squared length of the bounding-box diagonal in mm. More...
|
| |
| double | GetDiagonalLength () const |
| | Get the length of the bounding-box diagonal in mm. More...
|
| |
| Point3D | GetCornerPoint (int id) const |
| | Get the position of corner number id in world coordinates. More...
|
| |
| Point3D | GetCornerPoint (bool xFront=true, bool yFront=true, bool zFront=true) const |
| | Get the position of a corner in world coordinates. More...
|
| |
| void | SetExtentInMM (int direction, ScalarType extentInMM) |
| | Set the extent of the bounding box in mm along the specified direction. More...
|
| |
| bool | IsInside (const mitk::Point3D &p) const |
| | Test whether a point (world coordinates, mm) lies inside the bounding box. More...
|
| |
| bool | IsIndexInside (const mitk::Point3D &index) const |
| | Test whether a point in continuous index coordinates lies inside the bounding box. More...
|
| |
| template<unsigned int VIndexDimension> |
| bool | IsIndexInside (const itk::Index< VIndexDimension > &index) const |
| | Test whether a discrete ITK index lies inside the bounding box. More...
|
| |
| Point3D | ClampPoint (const Point3D &point) const |
| | Clamp a point to lie within the geometry's world-coordinate bounds. More...
|
| |
| virtual bool | GetImageGeometry () const |
| | Query whether this geometry refers to an image. More...
|
| |
| virtual void | ImageGeometryOn () |
| | Toggle macro for ImageGeometry (ImageGeometryOn/ImageGeometryOff). More...
|
| |
| virtual void | ImageGeometryOff () |
| |
| const GeometryTransformHolder * | GetGeometryTransformHolder () const |
| | Get the internal GeometryTransformHolder. More...
|
| |
| void | MapAxesToOrientations (int axes[]) const |
| | Map geometry axes to anatomical orientations (sagittal, coronal, axial). More...
|
| |
| | itkTypeMacroNoParent (OperationActor) virtual ~OperationActor() |
| |
Describes the geometry of a data object consisting of slices.
A PlaneGeometry can be requested for each slice. In the case of evenly-spaced, plane geometries (m_EvenlySpaced==true), only the 2D-geometry of the first slice has to be set (to an instance of PlaneGeometry). The 2D geometries of the other slices are calculated by shifting the first slice in the direction m_DirectionVector by m_Spacing.z * sliceNumber. The m_Spacing member (which is only relevant in the case m_EvenlySpaced==true) describes the size of a voxel (in mm), i.e., m_Spacing.x is the voxel width in the x-direction of the plane. It is derived from the reference geometry of this SlicedGeometry3D, which usually would be the global geometry describing how datasets are to be resliced.
By default, slices are oriented in the direction of one of the main axes (x, y, z). However, by means of rotation, it is possible to realign the slices in any possible direction. In case of an inclined plane, the spacing is derived as a product of the (regular) geometry spacing and the direction vector of the plane.
SlicedGeometry3D and the associated PlaneGeometries have to be initialized in the method GenerateOutputInformation() of BaseProcess (or CopyInformation / UpdateOutputInformation of BaseData, if possible, e.g., by analyzing pic tags in Image) subclasses. See also
- See also
- itk::ProcessObject::GenerateOutputInformation(),
-
itk::DataObject::CopyInformation() and itk::DataObject::UpdateOutputInformation().
Rule: everything is in mm (or ms for temporal information) if not stated otherwise.
- Warning
- The hull (i.e., transform, bounding-box and time-bounds) is only guaranteed to be up-to-date after calling UpdateInformation().
Definition at line 62 of file mitkSlicedGeometry3D.h.