return true;
}
//--------------------------------------------------------------------
-
+
+ //--------------------------------------------------------------------
+ std::ostream& operator<<(std::ostream & os, const clitk::RelativePositionInformationType & rp)
+ {
+ rp.Print(os);
+ return os;
+ }
+ //--------------------------------------------------------------------
} // end namespace clitk
//--------------------------------------------------------------------
os << std::endl;
}
};
+ std::ostream& operator<<(std::ostream & os, const clitk::RelativePositionInformationType & rp);
//--------------------------------------------------------------------
/** Set the input image. This must be set by the user. */
virtual void SetInputImage(const TImageType * inputData);
+ /** Evaluate the function at a ContinuousIndex position.
+ Overwritten for taking LUT into account (RP: multi-threading-compatible version,
+ the threadID is actually ignored) */
+ virtual OutputType EvaluateAtContinuousIndex(const ContinuousIndexType & index, unsigned int /* threadID */ ) const
+ {
+ return this->EvaluateAtContinuousIndex( index );
+ }
+
/** Evaluate the function at a ContinuousIndex position.
Overwritten for taking LUT into account */
virtual OutputType EvaluateAtContinuousIndex(const ContinuousIndexType & index ) const;
SET(TOOLS_INSTALL ${TOOLS_INSTALL} clitkLabelImageOverlapMeasure)
WRAP_GGO(clitkRelativePositionAnalyzer_GGO_C clitkRelativePositionAnalyzer.ggo)
- ADD_EXECUTABLE(clitkRelativePositionAnalyzer clitkRelativePositionAnalyzer.cxx ${clitkRelativePositionAnalyzer_GGO_C})
+ ADD_EXECUTABLE(clitkRelativePositionAnalyzer ../itk/clitkRelativePositionDataBase.cxx clitkRelativePositionAnalyzer.cxx ${clitkRelativePositionAnalyzer_GGO_C})
TARGET_LINK_LIBRARIES(clitkRelativePositionAnalyzer clitkSegmentationGgoLib clitkCommon ${ITK_LIBRARIES})
SET(TOOLS_INSTALL ${TOOLS_INSTALL} clitkRelativePositionAnalyzer)
SET(TOOLS_INSTALL ${TOOLS_INSTALL} clitkRelativePositionDataBaseAnalyzer)
WRAP_GGO(clitkRelativePositionDataBaseBuilder_GGO_C clitkRelativePositionDataBaseBuilder.ggo)
- ADD_EXECUTABLE(clitkRelativePositionDataBaseBuilder clitkRelativePositionDataBaseBuilder.cxx ${clitkRelativePositionDataBaseBuilder_GGO_C})
+ ADD_EXECUTABLE(clitkRelativePositionDataBaseBuilder ../itk/clitkRelativePositionDataBase.cxx clitkRelativePositionDataBaseBuilder.cxx ${clitkRelativePositionDataBaseBuilder_GGO_C})
TARGET_LINK_LIBRARIES(clitkRelativePositionDataBaseBuilder clitkSegmentationGgoLib clitkCommon ${ITK_LIBRARIES})
SET(TOOLS_INSTALL ${TOOLS_INSTALL} clitkRelativePositionDataBaseBuilder)
// load reference
vtkImageData* reference = loadImage(reference_filename);
assert(reference);
+
+ // translate target with arguments values
+ // reference is translated instead of target so that the output space stay the same as target
+ {
+ double reference_origin[3];
+ reference->GetOrigin(reference_origin);
+ reference_origin[0] -= args_info.translation_x_arg;
+ reference_origin[1] -= args_info.translation_y_arg;
+ reference_origin[2] -= args_info.translation_z_arg;
+ reference->SetOrigin(reference_origin);
+ }
// intensity normalisation
if (!use_dose_margin) {
vtkImageData* target = loadImage(target_filename);
assert(target);
+
// allocate output
OutputImageType::Pointer output = OutputImageType::New();
{
option "spatial-margin" s "Spatial margin [mm]" double yes
option "relative-dose-margin" r "Dose margin relative to max dose in reference [%]" double no
option "absolute-dose-margin" d "Absolute dose margin [Gray]" double no
+option "translation-x" x "Target relative position x [mm]" double default="0" no
+option "translation-y" y "Target relative position y [mm]" double default="0" no
+option "translation-z" z "Target relative position z [mm]" double default="0" no