![]() |
Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
|
Crop a volume to the specified region of interest. More...
#include <Modules/Loadable/CropVolume/Logic/vtkSlicerCropVolumeLogic.h>
Public Types | |
typedef vtkSlicerModuleLogic | Superclass |
![]() | |
typedef vtkMRMLAbstractLogic | Superclass |
![]() | |
typedef vtkObject | Superclass |
typedef void(vtkMRMLAbstractLogic::* | TaskFunctionPointer) (void *clientdata) |
Public Member Functions | |
int | Apply (vtkMRMLCropVolumeParametersNode *) |
Crop input volume using the specified ROI node. | |
int | CropInterpolated (vtkMRMLDisplayableNode *roi, vtkMRMLVolumeNode *inputVolume, vtkMRMLVolumeNode *outputNode, bool isotropicResampling, double spacingScale, int interpolationMode, double fillValue) |
Perform interpolated cropping. | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) override |
void | RegisterNodes () override |
![]() | |
virtual vtkSlicerApplicationLogic * | GetApplicationLogic () |
Get access to overall application state. | |
virtual vtkMRMLAbstractLogic * | GetModuleLogic (const char *moduleName) |
Convenience method for getting another module's logic from the application logic. | |
std::string | GetModuleShareDirectory () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
void | SetModuleShareDirectory (const std::string &shareDirectory) |
![]() | |
virtual vtkMRMLApplicationLogic * | GetMRMLApplicationLogic () const |
Get access to overall application state. | |
vtkMRMLScene * | GetMRMLScene () const |
Return a reference to the current MRML scene. | |
void | PrintSelf (ostream &os, vtkIndent indent) override |
virtual void | SetMRMLApplicationLogic (vtkMRMLApplicationLogic *logic) |
void | SetMRMLScene (vtkMRMLScene *newScene) |
Set and observe the MRMLScene. | |
Static Public Member Functions | |
static int | CropVoxelBased (vtkMRMLDisplayableNode *roi, vtkMRMLVolumeNode *inputVolume, vtkMRMLVolumeNode *outputNode, bool limitToInputExtent=true, double fillValue=0.0) |
static bool | FitROIToInputVolume (vtkMRMLCropVolumeParametersNode *parametersNode) |
static bool | GetInterpolatedCropOutputGeometry (vtkMRMLDisplayableNode *roi, vtkMRMLVolumeNode *inputVolume, bool isotropicResampling, double spacingScale, int outputExtent[6], double outputSpacing[3]) |
Computes output volume geometry for interpolated cropping (without actually cropping the image). | |
static bool | GetVoxelBasedCropOutputExtent (vtkMRMLDisplayableNode *roi, vtkMRMLVolumeNode *inputVolume, int outputExtent[6], bool limitToInputExtent=false) |
static bool | IsROIAlignedWithInputVolume (vtkMRMLCropVolumeParametersNode *parametersNode) |
static int | IsTypeOf (const char *type) |
static vtkSlicerCropVolumeLogic * | New () |
static vtkSlicerCropVolumeLogic * | SafeDownCast (vtkObject *o) |
static void | SnapROIToVoxelGrid (vtkMRMLCropVolumeParametersNode *parametersNode) |
![]() | |
static int | IsTypeOf (const char *type) |
static vtkSlicerModuleLogic * | New () |
The Usual vtk class functions. | |
static vtkSlicerModuleLogic * | SafeDownCast (vtkObject *o) |
![]() | |
static int | IsTypeOf (const char *type) |
static vtkMRMLAbstractLogic * | New () |
static vtkMRMLAbstractLogic * | SafeDownCast (vtkObject *o) |
Additional Inherited Members | |
![]() | |
static void | MRMLLogicsCallback (vtkObject *caller, unsigned long eid, void *clientData, void *callData) |
MRMLLogicCallback is a static function to relay modified events from the logics. | |
static void | MRMLNodesCallback (vtkObject *caller, unsigned long eid, void *clientData, void *callData) |
MRMLNodesCallback is a static function to relay modified events from the nodes. | |
static void | MRMLSceneCallback (vtkObject *caller, unsigned long eid, void *clientData, void *callData) |
Crop a volume to the specified region of interest.
This class implements cropping and resampling of a volume. Two main use cases:
If interpolation is disabled then only the extent of the volume is decreased. Cropping without resampling is very fast and needs almost no extra memory.
If interpolation is enabled, then both the size and resolution of the volume can be changed.
Limitations:
Definition at line 64 of file vtkSlicerCropVolumeLogic.h.
Definition at line 70 of file vtkSlicerCropVolumeLogic.h.
|
protected |
|
overrideprotected |
int vtkSlicerCropVolumeLogic::Apply | ( | vtkMRMLCropVolumeParametersNode * | ) |
Crop input volume using the specified ROI node.
int vtkSlicerCropVolumeLogic::CropInterpolated | ( | vtkMRMLDisplayableNode * | roi, |
vtkMRMLVolumeNode * | inputVolume, | ||
vtkMRMLVolumeNode * | outputNode, | ||
bool | isotropicResampling, | ||
double | spacingScale, | ||
int | interpolationMode, | ||
double | fillValue ) |
Perform interpolated cropping.
|
static |
Perform non-interpolated (voxel-based) cropping. If limitToInputExtent is set to true (default) then the extent can only be smaller than the input volume.
|
static |
Sets ROI to fit to input volume. If ROI is under a non-linear transform then the ROI transform will be reset to RAS.
|
virtual |
Reimplemented from vtkSlicerModuleLogic.
|
static |
Computes output volume geometry for interpolated cropping (without actually cropping the image).
|
static |
Compute non-interpolated (voxel-based) cropping output volume geometry (without actually cropping the image). If limitToInputExtent is set to true (default) then the extent can only be smaller than the input volume.
|
virtual |
Reimplemented from vtkSlicerModuleLogic.
|
static |
|
static |
|
static |
|
override |
|
overridevirtual |
Register node classes into the MRML scene. Called each time a new scene is set. Do nothing by default. Can be reimplemented in derived classes.
Reimplemented from vtkMRMLAbstractLogic.
|
static |
|
static |