Calculates a score for target placement for every vertex of a given surface. The scores are calculated for placing the targets equally on the surface. It is assumed that the surface approximates a sphere. For every vertex of the surface a score between 0 and 1 is calculated. The scores are stored in the vtkSurface as a vtkFloatArray. The name of this array can be set by calling SetScalarArrayIdentifier().
More...
#include <mitkUSNavigationTargetUpdateFilter.h>
|
| mitkClassMacroItkParent (USNavigationTargetUpdateFilter, itk::Object) |
|
| itkFactorylessNewMacro (Self) |
|
| itkCloneMacro (Self) |
|
void | SetTargetStructure (itk::SmartPointer< DataNode > targetStructure) |
| Set the target surface for which the scores should be calculated.
|
|
bool | SetNumberOfTargets (unsigned int numberOfTargets) |
| Setter for the number of targets to be placed on the target surface. The optimal angle for placing the targets is calculated based on this number.
|
|
void | SetOptimalAngle (double optimalAngle) |
| Setter for the optimal angle between to targets on the target surface. This value overwrites the value calculated by a previous call to SetNumberOfTargets() and will be overwritten when SetNumberOfTargets() is called afterwards.
|
|
double | GetOptimalAngle () |
|
void | SetScalarArrayIdentifier (std::string scalarArrayIdentifier) |
| Sets the identifier for the vtkFloatArray of scores. This array is stored as scalars of the vtkPolyData of the target surface.
|
|
void | SetUseMaximumScore (bool useMaximumScore) |
| Set whether the maximum score or the minimum score between the targets should be used. Whenever more then one target position is already set, the scores to every target position are calculated. The resulting score is the the minimum of this scores (default) or the maximum.
|
|
void | SetControlNode (unsigned int id, itk::SmartPointer< DataNode > controlNode) |
| Sets the origin of the given node for the filter. This origin is the position of an already placed target and is used to calculate the scores for the surface vertices.
|
|
void | RemovePositionOfTarget (unsigned int id) |
| Removes the position of the target with the current id from the filter.
|
|
void | Reset () |
| Removes all target positions from the filter and resets the scores.
|
|
Calculates a score for target placement for every vertex of a given surface. The scores are calculated for placing the targets equally on the surface. It is assumed that the surface approximates a sphere. For every vertex of the surface a score between 0 and 1 is calculated. The scores are stored in the vtkSurface as a vtkFloatArray. The name of this array can be set by calling SetScalarArrayIdentifier().
The target surface and the number of targets (between zero and four) or an optimal angle between the targets must be set first. The scores are then updated every time a target node is added by SetControlNode() or removed by RemovePositionOfTarget().
Definition at line 47 of file mitkUSNavigationTargetUpdateFilter.h.
◆ USNavigationTargetUpdateFilter()
mitk::USNavigationTargetUpdateFilter::USNavigationTargetUpdateFilter |
( |
| ) |
|
|
protected |
◆ ~USNavigationTargetUpdateFilter()
mitk::USNavigationTargetUpdateFilter::~USNavigationTargetUpdateFilter |
( |
| ) |
|
|
overrideprotected |
◆ GetGeometryOfTarget()
mitk::BaseGeometry::Pointer mitk::USNavigationTargetUpdateFilter::GetGeometryOfTarget |
( |
| ) |
|
|
protected |
◆ GetOptimalAngle()
double mitk::USNavigationTargetUpdateFilter::GetOptimalAngle |
( |
| ) |
|
◆ GetVtkPolyDataOfTarget()
vtkSmartPointer< vtkPolyData > mitk::USNavigationTargetUpdateFilter::GetVtkPolyDataOfTarget |
( |
| ) |
|
|
protected |
◆ itkCloneMacro()
mitk::USNavigationTargetUpdateFilter::itkCloneMacro |
( |
Self | | ) |
|
◆ itkFactorylessNewMacro()
mitk::USNavigationTargetUpdateFilter::itkFactorylessNewMacro |
( |
Self | | ) |
|
◆ mitkClassMacroItkParent()
◆ RemovePositionOfTarget()
void mitk::USNavigationTargetUpdateFilter::RemovePositionOfTarget |
( |
unsigned int | id | ) |
|
◆ Reset()
void mitk::USNavigationTargetUpdateFilter::Reset |
( |
| ) |
|
◆ SetControlNode()
void mitk::USNavigationTargetUpdateFilter::SetControlNode |
( |
unsigned int | id, |
|
|
itk::SmartPointer< DataNode > | controlNode ) |
Sets the origin of the given node for the filter. This origin is the position of an already placed target and is used to calculate the scores for the surface vertices.
- Parameters
-
id | number of the node which position should be set or updated |
controlNode | DataNode which origin should be set into the filter |
Definition at line 112 of file mitkUSNavigationTargetUpdateFilter.cpp.
◆ SetNumberOfTargets()
bool mitk::USNavigationTargetUpdateFilter::SetNumberOfTargets |
( |
unsigned int | numberOfTargets | ) |
|
Setter for the number of targets to be placed on the target surface. The optimal angle for placing the targets is calculated based on this number.
- Returns
- false if the number of targets is smaller than one or larger than four
Definition at line 69 of file mitkUSNavigationTargetUpdateFilter.cpp.
◆ SetOptimalAngle()
void mitk::USNavigationTargetUpdateFilter::SetOptimalAngle |
( |
double | optimalAngle | ) |
|
◆ SetScalarArrayIdentifier()
void mitk::USNavigationTargetUpdateFilter::SetScalarArrayIdentifier |
( |
std::string | scalarArrayIdentifier | ) |
|
◆ SetTargetStructure()
void mitk::USNavigationTargetUpdateFilter::SetTargetStructure |
( |
itk::SmartPointer< DataNode > | targetStructure | ) |
|
Set the target surface for which the scores should be calculated.
- Parameters
-
targetStructure | DataNode containing a mitk::Surface for the target structure |
Definition at line 41 of file mitkUSNavigationTargetUpdateFilter.cpp.
◆ SetUseMaximumScore()
void mitk::USNavigationTargetUpdateFilter::SetUseMaximumScore |
( |
bool | useMaximumScore | ) |
|
Set whether the maximum score or the minimum score between the targets should be used. Whenever more then one target position is already set, the scores to every target position are calculated. The resulting score is the the minimum of this scores (default) or the maximum.
Definition at line 107 of file mitkUSNavigationTargetUpdateFilter.cpp.
◆ UpdateTargetScores()
void mitk::USNavigationTargetUpdateFilter::UpdateTargetScores |
( |
| ) |
|
|
protected |
◆ m_ControlNodesVector
std::vector<itk::SmartPointer<DataNode> > mitk::USNavigationTargetUpdateFilter::m_ControlNodesVector |
|
protected |
◆ m_NumberOfTargets
unsigned int mitk::USNavigationTargetUpdateFilter::m_NumberOfTargets |
|
protected |
◆ m_OptimalAngle
double mitk::USNavigationTargetUpdateFilter::m_OptimalAngle |
|
protected |
◆ m_ScalarArrayIdentifier
std::string mitk::USNavigationTargetUpdateFilter::m_ScalarArrayIdentifier |
|
protected |
◆ m_TargetStructure
◆ m_UseMaximumScore
bool mitk::USNavigationTargetUpdateFilter::m_UseMaximumScore |
|
protected |
The documentation for this class was generated from the following files: