00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date$ 00006 Version: $Revision$ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 #include "mitkLandmarkProjector.h" 00019 #include <vtkAbstractTransform.h> 00020 00021 mitk::LandmarkProjector::LandmarkProjector() 00022 : m_InterpolatingAbstractTransform(NULL), m_CompleteAbstractTransform(NULL), m_FrameGeometry(NULL), m_ParameterPlane(NULL) 00023 { 00024 m_FinalTargetLandmarks = m_WritableFinalTargetLandmarks = mitk::PointSet::DataType::PointsContainer::New(); 00025 m_ProjectedLandmarks = mitk::PointSet::DataType::PointsContainer::New(); 00026 } 00027 00028 mitk::LandmarkProjector::~LandmarkProjector() 00029 { 00030 if(m_InterpolatingAbstractTransform != NULL) 00031 m_InterpolatingAbstractTransform->Delete(); 00032 } 00033 00034 void mitk::LandmarkProjector::SetInterpolatingAbstractTransform(vtkAbstractTransform* anInterpolatingAbstractTransform) 00035 { 00036 if(m_InterpolatingAbstractTransform != anInterpolatingAbstractTransform) 00037 { 00038 m_InterpolatingAbstractTransform = anInterpolatingAbstractTransform; 00039 m_InterpolatingAbstractTransform->Register(NULL); 00040 Modified(); 00041 ComputeCompleteAbstractTransform(); 00042 } 00043 } 00044 00045 vtkAbstractTransform* mitk::LandmarkProjector::GetCompleteAbstractTransform() const 00046 { 00047 return m_CompleteAbstractTransform; 00048 }