#include <vtkSlicerSliceLayerLogic.h>
| vtkSlicerSliceLayerLogic::vtkSlicerSliceLayerLogic | ( | ) | [protected] |
References AlphaLogic, AppendComponents, AssignAttributeScalarsFromTensors, AssignAttributeTensorsFromScalars, DTIMathematics, DTIReslice, DWIExtractComponent, IsLabelLayer, LabelOutline, New(), Reslice, ResliceAlphaCast, ResliceAppendComponents, ResliceExtractAlpha, ResliceExtractLuminance, ResliceThreshold, SCALARS, vtkImageNeighborhoodFilter::SetKernelSize(), vtkImageNeighborhoodFilter::SetNeighborTo8(), Slice, SliceNode, TENSORS, Threshold, UpdatingTransforms, VolumeDisplayNode, VolumeDisplayNodeObserved, VolumeNode, and XYToIJKTransform.
| vtkSlicerSliceLayerLogic::~vtkSlicerSliceLayerLogic | ( | ) | [protected, virtual] |
References AlphaLogic, AppendComponents, AssignAttributeScalarsFromTensors, AssignAttributeTensorsFromScalars, DTIMathematics, DTIReslice, DWIExtractComponent, LabelOutline, Reslice, ResliceAlphaCast, ResliceAppendComponents, ResliceExtractAlpha, ResliceExtractLuminance, ResliceThreshold, SetSliceNode(), SetVolumeNode(), Slice, SliceNode, Threshold, VolumeDisplayNode, VolumeDisplayNodeObserved, VolumeNode, vtkSetAndObserveMRMLNodeMacro, and XYToIJKTransform.
| vtkSlicerSliceLayerLogic::vtkSlicerSliceLayerLogic | ( | const vtkSlicerSliceLayerLogic & | ) | [protected] |
| vtkImageData* vtkSlicerSliceLayerLogic::GetImageData | ( | ) | [inline] |
Get the output of the pipeline for this layer
if ( this->GetVolumeNode() == NULL ) { return NULL; } else { return (this->GetAppendComponents()->GetOutput());
Referenced by vtkSlicerSliceLogic::UpdatePipeline().
| static vtkSlicerSliceLayerLogic* vtkSlicerSliceLayerLogic::New | ( | ) | [static] |
The Usual vtk class functions.
Reimplemented from vtkSlicerLogic.
Referenced by SetVolumeNode(), UpdateGlyphs(), UpdateNodeReferences(), UpdateTransforms(), and vtkSlicerSliceLayerLogic().
| void vtkSlicerSliceLayerLogic::operator= | ( | const vtkSlicerSliceLayerLogic & | ) | [protected] |
Reimplemented from vtkSlicerLogic.
| void vtkSlicerSliceLayerLogic::PrintSelf | ( | ostream & | os, | |
| vtkIndent | indent | |||
| ) |
Reimplemented from vtkSlicerLogic.
References LabelOutline, vtkImageLabelOutline::PrintSelf(), vtkImageResliceMask::PrintSelf(), vtkImageSlice::PrintSelf(), vtkMRMLVolumeDisplayNode::PrintSelf(), vtkMRMLSliceNode::PrintSelf(), vtkMRMLVolumeNode::PrintSelf(), Reslice, Slice, SliceNode, VolumeDisplayNode, and VolumeNode.
Referenced by vtkSlicerSliceLogic::PrintSelf().
| void vtkSlicerSliceLayerLogic::ProcessMRMLEvents | ( | vtkObject * | caller, | |
| unsigned long | event, | |||
| void * | callData | |||
| ) | [virtual] |
provide the virtual method that updates this Logic based on mrml changes
Reimplemented from vtkSlicerLogic.
References vtkMRMLNode::CopyWithoutModifiedEvent(), FW::Actions::Modified, vtkSlicerLogic::MRMLScene, vtkMRMLScene::NewSceneEvent, vtkMRMLScene::NodeAddedEvent, vtkMRMLScene::NodeRemovedEvent, UpdateImageDisplay(), UpdateTransforms(), VolumeDisplayNode, and VolumeDisplayNodeObserved.
| void vtkSlicerSliceLayerLogic::SetSliceNode | ( | vtkMRMLSliceNode * | SliceNode | ) |
| void vtkSlicerSliceLayerLogic::SetVolumeNode | ( | vtkMRMLVolumeNode * | VolumeNode | ) |
References New(), vtkMRMLTransformableNode::TransformModifiedEvent, UpdateTransforms(), VolumeNode, and vtkSetAndObserveMRMLNodeEventsMacro.
Referenced by vtkSlicerSliceLogic::UpdatePipeline(), and ~vtkSlicerSliceLayerLogic().
| void vtkSlicerSliceLayerLogic::UpdateGlyphs | ( | vtkImageData * | sliceImage | ) |
References autoSlicerTracto2regions::dirs, vtkMRMLDisplayableNode::GetDisplayNode(), vtkMRMLVolumeNode::GetIJKToRASDirections(), vtkMRMLLinearTransformNode::GetMatrixTransformToWorld(), vtkMRMLTransformableNode::GetParentTransformNode(), vtkMRMLGlyphableVolumeDisplayNode::GetSliceGlyphDisplayNodes(), vtkMRMLTransformNode::IsLinear(), j, mathExample::n, New(), vtkMRMLGlyphableVolumeSliceDisplayNode::SetSliceGlyphRotationMatrix(), vtkMRMLGlyphableVolumeSliceDisplayNode::SetSliceImage(), vtkMRMLGlyphableVolumeSliceDisplayNode::SetSlicePositionMatrix(), SliceNode, and VolumeNode.
Referenced by UpdateImageDisplay().
| void vtkSlicerSliceLayerLogic::UpdateImageDisplay | ( | ) |
References AssignAttributeScalarsFromTensors, AssignAttributeTensorsFromScalars, vtkImageResliceMask::GetBackgroundMask(), LabelOutline, Reslice, vtkMRMLVolumeDisplayNode::SetBackgroundImageData(), vtkMRMLVolumeDisplayNode::SetImageData(), vtkImageResliceMask::SetInterpolationModeToLinear(), vtkImageSlice::SetInterpolationModeToLinear(), vtkImageResliceMask::SetInterpolationModeToNearestNeighbor(), vtkImageSlice::SetInterpolationModeToNearestNeighbor(), vtkImageResliceMask::SetResliceTransform(), Slice, UpdateGlyphs(), VolumeDisplayNode, VolumeNode, and XYToIJKTransform.
Referenced by ProcessMRMLEvents(), and UpdateTransforms().
| void vtkSlicerSliceLayerLogic::UpdateNodeReferences | ( | ) |
Check that we are observing the correct display node (correct means the same one that the volume node is referencing)
References vtkMRMLScene::AddNode(), vtkMRMLNode::CopyWithoutModifiedEvent(), vtkMRMLVolumeDisplayNode::CreateNodeInstance(), vtkMRMLDisplayableNode::GetDisplayNodeID(), vtkMRMLScene::GetNodeByID(), vtkMRMLNode::GetScene(), vtkSlicerLogic::MRMLScene, New(), vtkMRMLDisplayNode::SetAndObserveColorNodeID(), vtkMRMLDisplayableNode::SetAndObserveDisplayNodeID(), vtkMRMLVolumeDisplayNode::SetDefaultColorMap(), vtkMRMLNode::SetScene(), VolumeDisplayNode, VolumeDisplayNodeObserved, VolumeNode, vtkSetAndObserveMRMLNodeMacro, and vtkSetAndObserveNoModifyMRMLNodeMacro.
Referenced by UpdateTransforms().
| void vtkSlicerSliceLayerLogic::UpdateTransforms | ( | ) |
set the Reslice transforms to reflect the current state of the VolumeNode and the SliceNode
References dimensions, DTIReslice, vtkMRMLTransformNode::GetMatrixTransformToWorld(), vtkMRMLTransformableNode::GetParentTransformNode(), vtkMRMLVolumeNode::GetRASToIJKMatrix(), vtkMRMLTransformNode::IsTransformToWorldLinear(), FW::Actions::Modified, New(), Reslice, Slice, SliceNode, UpdateImageDisplay(), UpdateNodeReferences(), UpdatingTransforms, VolumeNode, and XYToIJKTransform.
Referenced by ProcessMRMLEvents(), SetSliceNode(), and SetVolumeNode().
| vtkSlicerSliceLayerLogic::vtkBooleanMacro | ( | IsLabelLayer | , | |
| int | ||||
| ) |
| vtkSlicerSliceLayerLogic::vtkGetMacro | ( | IsLabelLayer | , | |
| int | ||||
| ) |
Select if this is a label layer or not (it currently determines if we use the label outline filter)
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | XYToIJKTransform | , | |
| vtkTransform | ||||
| ) |
The current reslice transform XYToIJK
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | AlphaLogic | , | |
| vtkImageLogic | ||||
| ) |
combine the reslice with the threshold
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | ResliceAlphaCast | , | |
| vtkImageCast | ||||
| ) |
Used to convert the alpha channel of the reslice output to be unsigned char so it can be blended with the image based threshold
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | ResliceExtractAlpha | , | |
| vtkImageExtractComponents | ||||
| ) |
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | ResliceExtractLuminance | , | |
| vtkImageExtractComponents | ||||
| ) |
Extract the two channels after reslice for separate processing
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | ResliceAppendComponents | , | |
| vtkImageAppendComponents | ||||
| ) |
The add the alpha channel onto the image before the reslice
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | AppendComponents | , | |
| vtkImageAppendComponents | ||||
| ) |
The add the alpha channel onto the image
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | ResliceThreshold | , | |
| vtkImageThreshold | ||||
| ) |
The filter that applies the threshold to the input of the Reslice so there's a fully opaque alpha channel within the image but fully transparent outside of the image
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | LabelOutline | , | |
| vtkImageLabelOutline | ||||
| ) |
The filter that turns the label map into an outline
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | Threshold | , | |
| vtkImageThreshold | ||||
| ) |
The filter that applies the threshold
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | Reslice | , | |
| vtkImageResliceMask | ||||
| ) |
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | Slice | , | |
| vtkImageSlice | ||||
| ) |
The image reslice or slice being used
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | SliceNode | , | |
| vtkMRMLSliceNode | ||||
| ) |
The slice node that defines the view
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | VolumeDisplayNode | , | |
| vtkMRMLVolumeDisplayNode | ||||
| ) |
The volume display node has the render properties of the volume
| vtkSlicerSliceLayerLogic::vtkGetObjectMacro | ( | VolumeNode | , | |
| vtkMRMLVolumeNode | ||||
| ) |
The volume node to operate on
| vtkSlicerSliceLayerLogic::vtkSetMacro | ( | IsLabelLayer | , | |
| int | ||||
| ) |
| vtkSlicerSliceLayerLogic::vtkTypeRevisionMacro | ( | vtkSlicerSliceLayerLogic | , | |
| vtkSlicerLogic | ||||
| ) |
vtkImageLogic* vtkSlicerSliceLayerLogic::AlphaLogic [protected] |
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageAppendComponents* vtkSlicerSliceLayerLogic::AppendComponents [protected] |
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkAssignAttribute* vtkSlicerSliceLayerLogic::AssignAttributeScalarsFromTensors [protected] |
Referenced by UpdateImageDisplay(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkAssignAttribute* vtkSlicerSliceLayerLogic::AssignAttributeTensorsFromScalars [protected] |
Referenced by UpdateImageDisplay(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageReslice* vtkSlicerSliceLayerLogic::DTIReslice [protected] |
Referenced by UpdateTransforms(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageExtractComponents* vtkSlicerSliceLayerLogic::DWIExtractComponent [protected] |
VTK class instances that implement the DWI logic operations
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
int vtkSlicerSliceLayerLogic::IsLabelLayer [protected] |
Referenced by vtkSlicerSliceLayerLogic().
Referenced by PrintSelf(), UpdateImageDisplay(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageResliceMask* vtkSlicerSliceLayerLogic::Reslice [protected] |
Referenced by PrintSelf(), UpdateImageDisplay(), UpdateTransforms(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageCast* vtkSlicerSliceLayerLogic::ResliceAlphaCast [protected] |
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageAppendComponents* vtkSlicerSliceLayerLogic::ResliceAppendComponents [protected] |
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageExtractComponents* vtkSlicerSliceLayerLogic::ResliceExtractAlpha [protected] |
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageExtractComponents* vtkSlicerSliceLayerLogic::ResliceExtractLuminance [protected] |
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageThreshold* vtkSlicerSliceLayerLogic::ResliceThreshold [protected] |
the VTK class instances that implement this Logic's operations
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageSlice* vtkSlicerSliceLayerLogic::Slice [protected] |
Referenced by PrintSelf(), UpdateImageDisplay(), UpdateTransforms(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkMRMLSliceNode* vtkSlicerSliceLayerLogic::SliceNode [protected] |
Referenced by PrintSelf(), SetSliceNode(), UpdateGlyphs(), UpdateTransforms(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkImageThreshold* vtkSlicerSliceLayerLogic::Threshold [protected] |
Referenced by vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
int vtkSlicerSliceLayerLogic::UpdatingTransforms [protected] |
Referenced by UpdateTransforms(), and vtkSlicerSliceLayerLogic().
Referenced by ProcessMRMLEvents(), UpdateNodeReferences(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkMRMLVolumeNode* vtkSlicerSliceLayerLogic::VolumeNode [protected] |
the MRML Nodes that define this Logic's parameters
Referenced by PrintSelf(), SetVolumeNode(), UpdateGlyphs(), UpdateImageDisplay(), UpdateNodeReferences(), UpdateTransforms(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
vtkTransform* vtkSlicerSliceLayerLogic::XYToIJKTransform [protected] |
TODO: make this a vtkAbstractTransform for non-linear.
Referenced by UpdateImageDisplay(), UpdateTransforms(), vtkSlicerSliceLayerLogic(), and ~vtkSlicerSliceLayerLogic().
1.6.1