- gcc
- clang
env:
- - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=false
- - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false
- - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=false
- - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false
- - WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.6 QT_VERSION=4.8.7 C11=false
- - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=true
- - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true
- - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=true
- - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true
- - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=false
- - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=false
- - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=true
- - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=true
+ - WITH_CMAKE=true VTK_VERSION=v5.10.0 ITK_VERSION=v4.6.0 QT_VERSION=4.8.7 C11=false
+ - WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.9.1 QT_VERSION=4.8.7 C11=false
+ - WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.9.1 QT_VERSION=5.5.1 C11=false
+ - WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=false
+ - WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.9.1 QT_VERSION=4.8.7 C11=false
+ - WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.9.1 QT_VERSION=5.5.1 C11=false
+ - WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=false
+ - WITH_CMAKE=true VTK_VERSION=v8.1.1 ITK_VERSION=v5.0b01 QT_VERSION=5.5.1 C11=false
+ - WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.9.1 QT_VERSION=4.8.7 C11=true
+ - WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.9.1 QT_VERSION=5.5.1 C11=true
+ - WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=true
+ - WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.9.1 QT_VERSION=4.8.7 C11=true
+ - WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.9.1 QT_VERSION=5.5.1 C11=true
+ - WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=true
+ - WITH_CMAKE=true VTK_VERSION=v8.1.1 ITK_VERSION=v5.0b01 QT_VERSION=5.5.1 C11=true
matrix:
exclude:
- - os: osx
- env: WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.6 QT_VERSION=4.8.7 C11=false #VTK5.10 doesn't work with osX
- - os: osx
- env: WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.6 QT_VERSION=4.8.7 C11=true #VTK5.10 doesn't work with osX
- - os: osx
- env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false #Qt4 doesn't work with brew anymore
- - os: osx
- env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true #Qt4 doesn't work with brew anymore
- - os: osx
- env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false
- - os: osx
- env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true
+ - os: osx #VTK5.10, Qt4, ITK < 4.13 doesn't work with osX
- os: linux
- env: WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.6 QT_VERSION=4.8.7 C11=true #Problem with VTK 5.10 and c++11
+ env: WITH_CMAKE=true VTK_VERSION=v5.10.0 ITK_VERSION=v4.6.0 QT_VERSION=4.8.7 C11=true #Problem with VTK 5.10 and c++11
- os: linux
compiler: clang #Remove ITK with clang on linux
include:
- os: linux
compiler: clang
- env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=false
+ env: WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=false
+ - os: linux
+ compiler: clang
+ env: WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=false
- os: linux
compiler: clang
- env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=false
+ env: WITH_CMAKE=true VTK_VERSION=v8.1.1 ITK_VERSION=v5.0b01 QT_VERSION=5.5.1 C11=false
- os: linux
compiler: clang
- env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=true
+ env: WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=true
- os: linux
compiler: clang
- env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.13.0 QT_VERSION=5.5.1 C11=true
+ env: WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=true
+ - os: linux
+ compiler: clang
+ env: WITH_CMAKE=true VTK_VERSION=v8.1.1 ITK_VERSION=v5.0b01 QT_VERSION=5.5.1 C11=true
+ - os: osx
+ env: WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=false
+ - os: osx
+ env: WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=false
+ - os: osx
+ env: WITH_CMAKE=true VTK_VERSION=v8.1.1 ITK_VERSION=v5.0b01 QT_VERSION=5.5.1 C11=flase
+ - os: osx
+ env: WITH_CMAKE=true VTK_VERSION=v6.3.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=true
+ - os: osx
+ env: WITH_CMAKE=true VTK_VERSION=v7.0.0 ITK_VERSION=v4.13.0 QT_VERSION=5.5.1 C11=true
+ - os: osx
+ env: WITH_CMAKE=true VTK_VERSION=v8.1.1 ITK_VERSION=v5.0b01 QT_VERSION=5.5.1 C11=true
language: cpp
- export cwd=$(pwd)
- export SCRIPTS=$cwd/travis
- export EXTERNALS_DIR=$HOME
-- export VTK_SOURCE_DIR=${EXTERNALS_DIR}/vtk-${VTK_VERSION}
-- export VTK_DIR=${EXTERNALS_DIR}/vtk-${VTK_VERSION}-build
-- export ITK_SOURCE_DIR=${EXTERNALS_DIR}/itk-${ITK_VERSION}
-- export ITK_DIR=${EXTERNALS_DIR}/itk-${ITK_VERSION}-build
+- export VTK_SOURCE_DIR=${EXTERNALS_DIR}/vtk
+- export VTK_DIR=${EXTERNALS_DIR}/vtk-build
+- export ITK_SOURCE_DIR=${EXTERNALS_DIR}/itk
+- export ITK_DIR=${EXTERNALS_DIR}/itk-build
- export BUILD_DIR=$cwd/build
- if test $TRAVIS_OS_NAME == linux ; then sudo apt-get install -y -qq build-essential cmake; fi
#Install qt5
- $SCRIPTS/travis_build_qt.sh
- if test $TRAVIS_OS_NAME == linux; then sudo apt-get -y install libgdcm2-dev libpq-dev; fi
- if test $TRAVIS_OS_NAME == linux; then if [[ "$QT_VERSION" == "5.5.1" ]] ; then QTDIR="/opt/qt55" && PATH="$PATH:$QTDIR/bin" && qt55-env.sh ; fi; fi
+- if test $TRAVIS_OS_NAME == linux; then cd $HOME && wget https://cmake.org/files/v3.11/cmake-3.11.4-Linux-x86_64.tar.gz && tar -xzf cmake-3.11.4-Linux-x86_64.tar.gz && export PATH=$HOME/cmake-3.11.4-Linux-x86_64/bin:${PATH} ; fi
- if test $TRAVIS_OS_NAME == osx ; then export HOMEBREW_QT_VERSION=$(brew list --versions qt | rev | cut -d' ' -f1 | rev); fi
- if test $TRAVIS_OS_NAME == osx ; then brew install ccache; fi
- if test $TRAVIS_OS_NAME == osx ; then export PATH="/usr/local/opt/qt/bin:/usr/local/opt/ccache/libexec:$PATH"; fi
cache:
- directories:
- - $HOME/vtk-5.10
- - $HOME/vtk-5.10-build
- - $HOME/vtk-6.3
- - $HOME/vtk-6.3-build
- - $HOME/vtk-7.0.0
- - $HOME/vtk-7.0.0-build
- - $HOME/itk-4.6
- - $HOME/itk-4.6-build
- - $HOME/itk-4.9.1
- - $HOME/itk-4.9.1-build
- - $HOME/itk-4.13.0
- - $HOME/itk-4.13.0-build
+ - $HOME/vtk
+ - $HOME/vtk-build
+ - $HOME/itk
+ - $HOME/itk-build
- '$HOME/.sonar/cache'
- timeout: 10000
}
}
-
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
virtual void GenerateInputRequestedRegion() ITK_OVERRIDE;
+#else
+ virtual void GenerateInputRequestedRegion() throw(InvalidRequestedRegionError) ITK_OVERRIDE;
+#endif
void EnlargeOutputRequestedRegion (DataObject * output) ITK_OVERRIDE;
protected:
template <class TInputImage, class TOutputImage,class TtNorm>
void
RelativePositionPropImageFilter<TInputImage,TOutputImage,TtNorm>
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
::GenerateInputRequestedRegion()
+#else
+ ::GenerateInputRequestedRegion() throw (InvalidRequestedRegionError)
+#endif
{
// call the superclass' implementation of this method
Superclass::GenerateInputRequestedRegion ();
void SetOutputParametersFromImage( const OutputImageConstPointer image );
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
void Initialize(void);
+#else
+ void Initialize(void) throw (itk::ExceptionObject);
+#endif
protected:
template <class InputImageType, class OutputImageType>
void
BackProjectImageFilter<InputImageType, OutputImageType>
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
::Initialize( void )
+#else
+ ::Initialize( void ) throw (itk::ExceptionObject)
+#endif
{
//Change the origin of the 2D input
typename InputImageType::ConstPointer inputPtr=this->GetInput();
#=========================================================
+if(CLITK_BUILD_REGISTRATION)
# Add Libraries used in vv and clitk to avoid recompilation
-WRAP_GGO(clitkAffineRegistration_GGO_C clitkAffineRegistration.ggo)
-add_library(clitkAffineRegistrationLib
- clitkAffineRegistrationGenericFilter.cxx
- ${clitkAffineRegistration_GGO_C}
- clitkLBFGSBOptimizer.cxx
- clitkGenericAffineTransform.cxx)
+ WRAP_GGO(clitkAffineRegistration_GGO_C clitkAffineRegistration.ggo)
+ add_library(clitkAffineRegistrationLib
+ clitkAffineRegistrationGenericFilter.cxx
+ ${clitkAffineRegistration_GGO_C}
+ clitkLBFGSBOptimizer.cxx
+ clitkGenericAffineTransform.cxx)
#=========================================================
-if(CLITK_BUILD_REGISTRATION)
############################## registration algorithms
add_executable(clitkAffineRegistration clitkAffineRegistration.cxx)
target_link_libraries(clitkAffineRegistration clitkAffineRegistrationLib clitkCommon)
* (1) making sure that all the components are present and plugged
* together correctly,
* (3) allocate memory for bin data structures. */
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
virtual void Initialize(void) ITK_OVERRIDE;
+#else
+ virtual void Initialize(void) throw ( ExceptionObject ) ITK_OVERRIDE;
+#endif
/** Get the derivatives of the match measure. */
void GetDerivative( const TransformParametersType & parameters,
template <class TFixedImage, class TMovingImage>
void
CorrelationRatioImageToImageMetric<TFixedImage,TMovingImage>
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
::Initialize(void)
+#else
+::Initialize(void) throw ( ExceptionObject )
+#endif
{
this->Superclass::Initialize();
* (2) uniformly select NumberOfSpatialSamples within
* the FixedImageRegion, and
* (3) allocate memory for pdf data structures. */
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
virtual void Initialize(void) ITK_OVERRIDE;
+#else
+ virtual void Initialize(void) throw ( itk::ExceptionObject ) ITK_OVERRIDE;
+#endif
/** Get the value. */
MeasureType GetValue( const ParametersType & parameters ) const ITK_OVERRIDE;
template <class TFixedImage, class TMovingImage>
void
NormalizedCorrelationImageToImageMetric<TFixedImage,TMovingImage>
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
::Initialize(void)
+#else
+::Initialize(void) throw ( itk::ExceptionObject )
+#endif
{
this->Superclass::Initialize();
* (2) uniformly select NumberOfSpatialSamples within
* the FixedImageRegion, and
* (3) allocate memory for pdf data structures. */
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
virtual void Initialize(void) ITK_OVERRIDE;
+#else
+ virtual void Initialize(void) throw ( itk::ExceptionObject ) ITK_OVERRIDE;
+#endif
/** Get the value. */
MeasureType GetValue( const ParametersType & parameters ) const ITK_OVERRIDE;
template <class TFixedImage, class TMovingImage>
void
NormalizedCorrelationImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
::Initialize(void)
+#else
+::Initialize(void) throw ( itk::ExceptionObject )
+#endif
{
this->Superclass::Initialize();
* (2) uniformly select NumberOfSpatialSamples within
* the FixedImageRegion, and
* (3) allocate memory for pdf data structures. */
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
virtual void Initialize(void) ITK_OVERRIDE;
+#else
+ virtual void Initialize(void) throw ( ExceptionObject ) ITK_OVERRIDE;
+#endif
/** Get the value. */
MeasureType GetValue( const ParametersType & parameters ) const ITK_OVERRIDE;
template <class TFixedImage, class TMovingImage>
void
MattesMutualInformationImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
::Initialize(void)
+#else
+::Initialize(void) throw ( ExceptionObject )
+#endif
{
this->Superclass::Initialize();
this->Superclass::MultiThreadingInitialize();
* (2) uniformly select NumberOfSpatialSamples within
* the FixedImageRegion, and
* (3) allocate memory for pdf data structures. */
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
virtual void Initialize(void) ITK_OVERRIDE;
+#else
+ virtual void Initialize(void) throw ( ExceptionObject ) ITK_OVERRIDE;
+#endif
/** Get the value. */
MeasureType GetValue( const ParametersType & parameters ) const ITK_OVERRIDE;
template <class TFixedImage, class TMovingImage>
void
MeanSquaresImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
+#if ( ( ITK_VERSION_MAJOR == 4 ) && ( ITK_VERSION_MINOR > 12 ) || ( ITK_VERSION_MAJOR > 4 ))
::Initialize(void)
+#else
+::Initialize(void) throw ( ExceptionObject )
+#endif
{
this->Superclass::Initialize();
#Prepare cmake arguments following the ITK version
if [ "$C11" == "true" ]; then
- if [ "$ITK_VERSION" == "4.6" ]; then
- itk_repo_str=" --branch v4.6.0 https://github.com/InsightSoftwareConsortium/ITK.git --depth 1"
- cmake_arg_str=" -DCMAKE_CXX_FLAGS=-std=c++11 -DModule_ITKVtkGlue=ON -DVTK_DIR=$VTK_DIR -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF "
- elif [ "$ITK_VERSION" == "4.9.1" ]; then
- itk_repo_str=" --branch v4.9.1 https://github.com/InsightSoftwareConsortium/ITK.git --depth 1"
- cmake_arg_str=" -DCMAKE_CXX_FLAGS=-std=c++11 -DModule_ITKVtkGlue=ON -DVTK_DIR=$VTK_DIR -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF "
- elif [ "$ITK_VERSION" == "4.13.0" ]; then
- itk_repo_str=" --branch v4.13.0 https://github.com/InsightSoftwareConsortium/ITK.git --depth 1"
- cmake_arg_str=" -DCMAKE_CXX_FLAGS=-std=c++11 -DModule_ITKVtkGlue=ON -DVTK_DIR=$VTK_DIR -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF "
- fi
+ itk_repo_str=" --branch "$ITK_VERSION" https://github.com/InsightSoftwareConsortium/ITK.git --depth 1"
+ cmake_arg_str=" -DCMAKE_CXX_FLAGS=-std=c++11 -DModule_ITKVtkGlue=ON -DVTK_DIR=$VTK_DIR -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF "
else
- if [ "$ITK_VERSION" == "4.6" ]; then
- itk_repo_str=" --branch v4.6.0 https://github.com/InsightSoftwareConsortium/ITK.git --depth 1"
- cmake_arg_str=" -DModule_ITKVtkGlue=ON -DVTK_DIR=$VTK_DIR -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF "
- elif [ "$ITK_VERSION" == "4.9.1" ]; then
- itk_repo_str=" --branch v4.9.1 https://github.com/InsightSoftwareConsortium/ITK.git --depth 1"
- cmake_arg_str=" -DModule_ITKVtkGlue=ON -DVTK_DIR=$VTK_DIR -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF "
- elif [ "$ITK_VERSION" == "4.13.0" ]; then
- itk_repo_str=" --branch v4.13.0 https://github.com/InsightSoftwareConsortium/ITK.git --depth 1"
- cmake_arg_str=" -DModule_ITKVtkGlue=ON -DVTK_DIR=$VTK_DIR -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF "
- fi
+ itk_repo_str=" --branch "$ITK_VERSION" https://github.com/InsightSoftwareConsortium/ITK.git --depth 1"
+ cmake_arg_str=" -DModule_ITKVtkGlue=ON -DVTK_DIR=$VTK_DIR -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF "
fi
if [ -d $ITK_SOURCE_DIR ]; then
elif [ "$QT_VERSION" == "5.5.1" ]; then
if test $TRAVIS_OS_NAME == linux ; then sudo add-apt-repository --yes ppa:beineri/opt-qt551-trusty; fi
if test $TRAVIS_OS_NAME == linux ; then sudo apt-get update -qq; fi
- if test $TRAVIS_OS_NAME == linux ; then sudo apt-get -y --force-yes install qt55tools; fi
+ if test $TRAVIS_OS_NAME == linux ; then sudo apt-get -y --force-yes install qt55tools qt55x11extras; fi
fi
if test $TRAVIS_OS_NAME == osx ; then brew install qt5; fi
if test $TRAVIS_OS_NAME == osx ; then brew link qt5 --force; fi
#Prepare cmake arguments following the VTK version
if [ "$C11" == "true" ]; then
- if [ "$VTK_VERSION" == "5.10" ]; then
- vtk_repo_str=" --branch v5.10.0 https://github.com/Kitware/VTK.git --depth 1"
+ vtk_repo_str=" --branch "$VTK_VERSION" https://github.com/Kitware/VTK.git --depth 1"
+ if [ "$VTK_VERSION" == "v5.10.0" ]; then
cmake_arg_str=" $cmake_arg_str
-DCMAKE_CXX_FLAGS=-std=c++11
-DBUILD_SHARED_LIBS=1
-DVTK_USE_RENDERING=ON
-DVTK_USE_VIEWS=ON
-DVTK_QT_VERSION="$QT_MAJOR_VERSION" "
- elif [ "$VTK_VERSION" == "6.3" ]; then
- vtk_repo_str=" --branch v6.3.0 https://github.com/Kitware/VTK.git --depth 1"
+ elif [ "$VTK_VERSION" == "v6.3.0" ] || [ "$VTK_VERSION" == "v8.1.1" ]; then
cmake_arg_str=" $cmake_arg_str
-DCMAKE_CXX_FLAGS=-std=c++11
-DBUILD_SHARED_LIBS=1
-DModule_vtkRenderingQt=ON
-DModule_vtkViewsQt=ON
-DVTK_QT_VERSION="$QT_MAJOR_VERSION" "
- elif [ "$VTK_VERSION" == "7.0.0" ]; then
- vtk_repo_str=" --branch v7.0.0 https://github.com/Kitware/VTK.git --depth 1"
+ elif [ "$VTK_VERSION" == "v7.0.0" ]; then
cmake_arg_str=" $cmake_arg_str
-DCMAKE_CXX_FLAGS=-std=c++11
-DBUILD_SHARED_LIBS=1
-DVTK_QT_VERSION="$QT_MAJOR_VERSION" "
fi
else
- if [ "$VTK_VERSION" == "5.10" ]; then
- vtk_repo_str=" --branch v5.10.0 https://github.com/Kitware/VTK.git --depth 1"
+ vtk_repo_str=" --branch "$VTK_VERSION" https://github.com/Kitware/VTK.git --depth 1"
+ if [ "$VTK_VERSION" == "v5.10.0" ]; then
cmake_arg_str=" $cmake_arg_str
-DBUILD_SHARED_LIBS=1
-DCMAKE_BUILD_TYPE=Release
-DVTK_USE_RENDERING=ON
-DVTK_USE_VIEWS=ON
-DVTK_QT_VERSION="$QT_MAJOR_VERSION" "
- elif [ "$VTK_VERSION" == "6.3" ]; then
- vtk_repo_str=" --branch v6.3.0 https://github.com/Kitware/VTK.git --depth 1"
+ elif [ "$VTK_VERSION" == "v6.3.0" ] || [ "$VTK_VERSION" == "v8.1.1" ]; then
cmake_arg_str=" $cmake_arg_str
-DBUILD_SHARED_LIBS=1
-DCMAKE_BUILD_TYPE=Release
-DModule_vtkRenderingQt=ON
-DModule_vtkViewsQt=ON
-DVTK_QT_VERSION="$QT_MAJOR_VERSION" "
- elif [ "$VTK_VERSION" == "7.0.0" ]; then
- vtk_repo_str=" --branch v7.0.0 https://github.com/Kitware/VTK.git --depth 1"
+ elif [ "$VTK_VERSION" == "v7.0.0" ]; then
cmake_arg_str=" $cmake_arg_str
-DBUILD_SHARED_LIBS=1
-DCMAKE_BUILD_TYPE=Release
vvToolConvert ## with dummy vvToolConvert.ui
vvToolROIManager
vvToolSegmentation
- vvToolProfile
- vvToolHistogram
## these ones are for tests (not working)
# vvToolTest
# vvToolFoo
# vvToolExtractLung
# vvToolStructureSetManager
)
+#List of vv tools to compile
+#Ensure compatibility with QVTKOpenGL for VTK < v8.1 and QVTKOpenGLNativeWidget for others
+set(vv_TOOLS_VTK7
+ vvToolProfile
+ vvToolHistogram
+)
# dependencies of the tools
# Future issues : when tool depend on other tools ... how to manage that ?
# >> add the relevant $_LIBS variable to the tool that has dependencies?
vvOverlayPanel
vvLandmarksPanel
vvProgressDialog
- vvSegmentationDialog
- vvSurfaceViewerDialog
vvDeformationDialog
vvStructSelector
vvIntensityValueSlider
vvToolInputSelectorWidget
vvRegisterForm
)
+# in COMMON_WITH_UI -> must have .h and .cxx and VTK7.ui
+#Ensure compatibility with QVTKOpenGL for VTK < v8.1 and QVTKOpenGLNativeWidget for others
+set(vv_COMMON_WITH_UI_VTK7
+ vvMainWindow
+ vvSegmentationDialog
+ vvSurfaceViewerDialog
+)
# All others sources
set(vv_SRCS
# variables in vv.cxx for the tools contained in vvLib
if(${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt IS_NEWER_THAN ${CMAKE_CURRENT_BINARY_DIR}/vvToolsList.h)
file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/vvToolsList.h)
- foreach(tool ${vv_TOOLS})
+ foreach(tool ${vv_TOOLS} ${vv_TOOLS_VTK7})
file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/vvToolsList.h "#include \"${tool}.h\"\n")
file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/vvToolsList.h "extern const vvToolCreator<${tool}> *dummy${tool};\n")
file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/vvToolsList.h "const vvToolCreator<${tool}> *dummy${tool}2 = dummy${tool};\n\n")
QT4_WRAP_UI(vv_UI_CXX qt_ui/${tool}.ui)
endif()
endforeach(tool)
+
+ #Special case for Main Window with QVTKWidget according VTK version
+ foreach(tool ${vv_TOOLS_VTK7} ${vv_COMMON_WITH_UI_VTK7})
+ set(vv_SRCS ${vv_SRCS} ${tool}.cxx)
+ if(VTK_VERSION VERSION_GREATER "8.0.0")
+ if(vv_QT_VERSION VERSION_GREATER "4")
+ QT5_WRAP_CPP(vv_SRCS ${tool}.h)
+ QT5_WRAP_UI(vv_UI_CXX qt_ui/${tool}.ui)
+ else()
+ QT4_WRAP_CPP(vv_SRCS ${tool}.h)
+ QT4_WRAP_UI(vv_UI_CXX qt_ui/${tool}.ui)
+ endif()
+ else()
+ if(vv_QT_VERSION VERSION_GREATER "4")
+ QT5_WRAP_CPP(vv_SRCS ${tool}.h)
+ QT5_WRAP_UI(vv_UI_CXX qt_ui/${tool}VTK7.ui)
+ else()
+ QT4_WRAP_CPP(vv_SRCS ${tool}.h)
+ QT4_WRAP_UI(vv_UI_CXX qt_ui/${tool}VTK7.ui)
+ endif()
+ endif()
+ endforeach(tool)
# Add the common source files
foreach(tool ${vv_COMMON})
#=========================================================
#Add each tool's dependencies
-foreach(tool ${vv_TOOLS})
+foreach(tool ${vv_TOOLS} ${vv_TOOLS_VTK7})
set(toolLibs ${toolLibs} ${${tool}_LIBS})
endforeach(tool)
<number>2</number>
</property>
<item row="0" column="0">
- <widget class="QVTKWidget" name="NOViewWidget" native="true">
+ <widget class="QVTKOpenGLNativeWidget" name="NOViewWidget" native="true">
<property name="mouseTracking">
<bool>true</bool>
</property>
<number>2</number>
</property>
<item row="0" column="0">
- <widget class="QVTKWidget" name="SOViewWidget" native="true">
+ <widget class="QVTKOpenGLNativeWidget" name="SOViewWidget" native="true">
<property name="mouseTracking">
<bool>true</bool>
</property>
<number>2</number>
</property>
<item row="0" column="0">
- <widget class="QVTKWidget" name="NEViewWidget" native="true">
+ <widget class="QVTKOpenGLNativeWidget" name="NEViewWidget" native="true">
<property name="mouseTracking">
<bool>true</bool>
</property>
<number>2</number>
</property>
<item row="0" column="0">
- <widget class="QVTKWidget" name="SEViewWidget" native="true">
+ <widget class="QVTKOpenGLNativeWidget" name="SEViewWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
</widget>
<customwidgets>
<customwidget>
- <class>QVTKWidget</class>
+ <class>QVTKOpenGLNativeWidget</class>
<extends>QWidget</extends>
- <header>QVTKWidget.h</header>
+ <header>QVTKOpenGLNativeWidget.h</header>
</customwidget>
<customwidget>
<class>vvInfoPanel</class>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>vvMainWindow</class>
+ <widget class="QMainWindow" name="vvMainWindow">
+ <property name="enabled">
+ <bool>true</bool>
+ </property>
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>1008</width>
+ <height>758</height>
+ </rect>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="windowTitle">
+ <string>vv : the 4D Slicer</string>
+ </property>
+ <property name="windowIcon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/ducky.png</normaloff>:/common/icons/ducky.png</iconset>
+ </property>
+ <property name="statusTip">
+ <string>Type 'F1' on image to display help on navigation</string>
+ </property>
+ <widget class="QWidget" name="centralwidget">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="statusTip">
+ <string>Type 'F1' on image to display help on navigation</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout">
+ <item row="0" column="0">
+ <widget class="QFrame" name="frame">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>16</width>
+ <height>36</height>
+ </size>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::StyledPanel</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Raised</enum>
+ </property>
+ <layout class="QGridLayout">
+ <property name="margin">
+ <number>2</number>
+ </property>
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="QPushButton" name="goToCursorPushButton">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Go to cursor</string>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/cross.png</normaloff>:/common/icons/cross.png</iconset>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="Line" name="line">
+ <property name="frameShadow">
+ <enum>QFrame::Sunken</enum>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="2">
+ <widget class="QPushButton" name="playButton">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Play Current Image</string>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/player_play.png</normaloff>:/common/icons/player_play.png</iconset>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="5">
+ <widget class="Line" name="line_2">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="7">
+ <widget class="QLabel" name="windowLabel">
+ <property name="text">
+ <string>Window :</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="8">
+ <widget class="QDoubleSpinBox" name="windowSpinBox">
+ <property name="decimals">
+ <number>6</number>
+ </property>
+ <property name="minimum">
+ <double>-66000.000000000000000</double>
+ </property>
+ <property name="maximum">
+ <double>66000.000000000000000</double>
+ </property>
+ <property name="singleStep">
+ <double>10.000000000000000</double>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="9">
+ <widget class="QPushButton" name="inverseButton">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>24</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Inverse colors</string>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/invertcolor.png</normaloff>:/common/icons/invertcolor.png</iconset>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="10">
+ <widget class="QLabel" name="levelLabel">
+ <property name="text">
+ <string> Level :</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="11">
+ <widget class="QDoubleSpinBox" name="levelSpinBox">
+ <property name="decimals">
+ <number>6</number>
+ </property>
+ <property name="minimum">
+ <double>-66000.000000000000000</double>
+ </property>
+ <property name="maximum">
+ <double>66000.000000000000000</double>
+ </property>
+ <property name="singleStep">
+ <double>10.000000000000000</double>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="12">
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>Preset :</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="13">
+ <widget class="QComboBox" name="presetComboBox">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>100</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <item>
+ <property name="text">
+ <string>Auto Scale</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Hounsfield Full Scale</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Soft Tissue</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Lungs</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Bones</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Head/Brain</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>[0,1] Scale</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>User Scale</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Ventilation Image</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="0" column="14">
+ <widget class="QLabel" name="label_4">
+ <property name="text">
+ <string>Colormap :</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="15">
+ <widget class="QComboBox" name="colorMapComboBox">
+ <item>
+ <property name="text">
+ <string>B&W</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Heat</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Cold</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Dosimetry</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Full Color</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Segmentation</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Ventilation</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="0" column="21">
+ <widget class="QPushButton" name="viewButton">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>24</width>
+ <height>24</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Expand window</string>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/adjustsize.png</normaloff>:/common/icons/adjustsize.png</iconset>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="4">
+ <widget class="QSpinBox" name="frameRateSpinBox">
+ <property name="minimum">
+ <number>1</number>
+ </property>
+ <property name="maximum">
+ <number>100</number>
+ </property>
+ <property name="value">
+ <number>10</number>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="3">
+ <widget class="QLabel" name="frameRateLabel">
+ <property name="text">
+ <string>Speed : </string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="16">
+ <widget class="QPushButton" name="applyWindowLevelToAllButton">
+ <property name="enabled">
+ <bool>true</bool>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>24</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Apply windowing to all images</string>
+ </property>
+ <property name="text">
+ <string>All</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="19">
+ <widget class="QComboBox" name="slicingPresetComboBox">
+ <item>
+ <property name="text">
+ <string>World</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Voxels</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="0" column="18">
+ <widget class="QLabel" name="label_2">
+ <property name="text">
+ <string>Slice to</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="17">
+ <spacer name="horizontalSpacer">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QSplitter" name="splitter_4">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <widget class="QSplitter" name="splitter">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <widget class="QTabWidget" name="tabWidget">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>1</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="currentIndex">
+ <number>0</number>
+ </property>
+ <widget class="QWidget" name="DataTab">
+ <attribute name="title">
+ <string>Images</string>
+ </attribute>
+ <layout class="QGridLayout">
+ <property name="margin">
+ <number>2</number>
+ </property>
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="QTreeWidget" name="DataTree">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Minimum">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="horizontalScrollBarPolicy">
+ <enum>Qt::ScrollBarAsNeeded</enum>
+ </property>
+ <property name="showDropIndicator" stdset="0">
+ <bool>false</bool>
+ </property>
+ <property name="textElideMode">
+ <enum>Qt::ElideLeft</enum>
+ </property>
+ <property name="itemsExpandable">
+ <bool>true</bool>
+ </property>
+ <property name="columnCount">
+ <number>7</number>
+ </property>
+ <column>
+ <property name="text">
+ <string>1</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>2</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>3</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>4</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>Data</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>6</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>8</string>
+ </property>
+ </column>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="VFtab">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <attribute name="title">
+ <string>Overlay</string>
+ </attribute>
+ <layout class="QGridLayout">
+ <property name="margin">
+ <number>2</number>
+ </property>
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="vvOverlayPanel" name="overlayPanel" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="ROItab">
+ <attribute name="title">
+ <string>ROI</string>
+ </attribute>
+ <layout class="QGridLayout" name="gridLayout_2"/>
+ </widget>
+ <widget class="QWidget" name="LinkTab">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <attribute name="title">
+ <string>Link</string>
+ </attribute>
+ <layout class="QGridLayout">
+ <property name="margin">
+ <number>2</number>
+ </property>
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="vvLinkPanel" name="linkPanel" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="Landmarkstab">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <attribute name="title">
+ <string>Landmarks</string>
+ </attribute>
+ <layout class="QGridLayout">
+ <property name="margin">
+ <number>2</number>
+ </property>
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="vvLandmarksPanel" name="landmarksPanel" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ <widget class="vvInfoPanel" name="infoPanel" native="true">
+ <property name="enabled">
+ <bool>true</bool>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ </widget>
+ </widget>
+ <widget class="QSplitter" name="splitter_3">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>1</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <widget class="QSplitter" name="OSplitter">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <widget class="QWidget" name="NOWidget" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <layout class="QGridLayout">
+ <property name="horizontalSpacing">
+ <number>2</number>
+ </property>
+ <property name="margin">
+ <number>2</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="QVTKWidget" name="NOViewWidget" native="true">
+ <property name="mouseTracking">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QSlider" name="NOVerticalSlider">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QSlider" name="NOHorizontalSlider">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="SOWidget" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <layout class="QGridLayout">
+ <property name="margin">
+ <number>2</number>
+ </property>
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="QVTKWidget" name="SOViewWidget" native="true">
+ <property name="mouseTracking">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QSlider" name="SOVerticalSlider">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QSlider" name="SOHorizontalSlider">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ <widget class="QSplitter" name="ESplitter">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <widget class="QWidget" name="NEWidget" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <layout class="QGridLayout">
+ <property name="margin">
+ <number>2</number>
+ </property>
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="QVTKWidget" name="NEViewWidget" native="true">
+ <property name="mouseTracking">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QSlider" name="NEVerticalSlider">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QSlider" name="NEHorizontalSlider">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="SEWidget" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <layout class="QGridLayout">
+ <property name="margin">
+ <number>2</number>
+ </property>
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <item row="0" column="0">
+ <widget class="QVTKWidget" name="SEViewWidget" native="true">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="mouseTracking">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QSlider" name="SEVerticalSlider">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QSlider" name="SEHorizontalSlider">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ </widget>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QMenuBar" name="menubar">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>1008</width>
+ <height>27</height>
+ </rect>
+ </property>
+ <property name="defaultUp">
+ <bool>false</bool>
+ </property>
+ <widget class="QMenu" name="menuHelp">
+ <property name="title">
+ <string>Help</string>
+ </property>
+ <addaction name="actionNavigation_Help"/>
+ <addaction name="actionDocumentation"/>
+ <addaction name="actionRegister_vv"/>
+ </widget>
+ <widget class="QMenu" name="menuOverlay">
+ <property name="title">
+ <string>Overlay</string>
+ </property>
+ <addaction name="actionAdd_VF_to_current_Image"/>
+ <addaction name="actionAdd_overlay_image_to_current_image"/>
+ <addaction name="actionAdd_fusion_image"/>
+ <addaction name="actionAdd_USSequence_toCT"/>
+ </widget>
+ <widget class="QMenu" name="menuScreenshots">
+ <property name="title">
+ <string>Screenshots</string>
+ </property>
+ <addaction name="actionNorth_West_Window"/>
+ <addaction name="actionNorth_East_Window"/>
+ <addaction name="actionSouth_West_Window"/>
+ <addaction name="actionSouth_East_Window"/>
+ <addaction name="separator"/>
+ <addaction name="actionSave_all_slices"/>
+ </widget>
+ <widget class="QMenu" name="menuExperimental">
+ <property name="title">
+ <string>Experimental</string>
+ </property>
+ <addaction name="actionSurface_Viewer"/>
+ <addaction name="actionDeformable_Registration"/>
+ <addaction name="actionSegmentation"/>
+ <addaction name="actionWarp_image_with_vector_field"/>
+ <addaction name="actionCompute_mid_position_image"/>
+ </widget>
+ <widget class="QMenu" name="menuTools">
+ <property name="title">
+ <string>Tools</string>
+ </property>
+ </widget>
+ <widget class="QMenu" name="menuFile">
+ <property name="title">
+ <string>File</string>
+ </property>
+ <addaction name="actionLoad_images"/>
+ <addaction name="actionOpen_Image_With_Time"/>
+ <addaction name="actionMerge_images_as_n_dim_t"/>
+ <addaction name="separator"/>
+ <addaction name="actionSlice_Image_As_Multiple_Images"/>
+ <addaction name="actionOpen_Multiple_Images_As_One"/>
+ <addaction name="separator"/>
+ <addaction name="actionOpen_Dicom"/>
+ <addaction name="actionOpen_VTK_contour"/>
+ <addaction name="actionConnect_Pacs"/>
+ <addaction name="separator"/>
+ <addaction name="actionSave_As"/>
+ <addaction name="separator"/>
+ <addaction name="actionRead_saved_state"/>
+ <addaction name="actionSave_current_state"/>
+ <addaction name="separator"/>
+ <addaction name="actionExit"/>
+ <addaction name="separator"/>
+ <addaction name="separator"/>
+ </widget>
+ <addaction name="menuFile"/>
+ <addaction name="menuOverlay"/>
+ <addaction name="menuScreenshots"/>
+ <addaction name="menuTools"/>
+ <addaction name="menuExperimental"/>
+ <addaction name="menuHelp"/>
+ </widget>
+ <widget class="QStatusBar" name="statusbar"/>
+ <action name="actionLoad_images">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/fileopen.png</normaloff>:/common/icons/fileopen.png</iconset>
+ </property>
+ <property name="text">
+ <string>Open image(s)</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+O</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionClose_image">
+ <property name="text">
+ <string>Close images</string>
+ </property>
+ </action>
+ <action name="actionExit">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/exit.png</normaloff>:/common/icons/exit.png</iconset>
+ </property>
+ <property name="text">
+ <string>Exit</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionSave_screenshot">
+ <property name="text">
+ <string>Save screenshot</string>
+ </property>
+ </action>
+ <action name="actionPickable">
+ <property name="text">
+ <string>pickable</string>
+ </property>
+ </action>
+ <action name="actionDragable">
+ <property name="text">
+ <string>dragable</string>
+ </property>
+ </action>
+ <action name="actionSet_colormap">
+ <property name="text">
+ <string>Set colormap</string>
+ </property>
+ </action>
+ <action name="actionIsoContours">
+ <property name="text">
+ <string>IsoContours</string>
+ </property>
+ </action>
+ <action name="actionAbouts">
+ <property name="text">
+ <string>About QtVTKRender2D</string>
+ </property>
+ </action>
+ <action name="actionDocumentation">
+ <property name="text">
+ <string>About</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionReload_images">
+ <property name="text">
+ <string>Reload images</string>
+ </property>
+ </action>
+ <action name="actionOpen_Dicom">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/open.png</normaloff>:/common/icons/open.png</iconset>
+ </property>
+ <property name="text">
+ <string>Open Dicom</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionOpen_Multiple_Images_As_One">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/open.png</normaloff>:/common/icons/open.png</iconset>
+ </property>
+ <property name="text">
+ <string>Merge several nD images into a single (n+1)D image</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionSlice_Image_As_Multiple_Images">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/open.png</normaloff>:/common/icons/open.png</iconset>
+ </property>
+ <property name="text">
+ <string>Slice a nD image into several (n-1)D images</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionOpen_one_Image_as_Multiple">
+ <property name="text">
+ <string>Open One Image As Multiple</string>
+ </property>
+ </action>
+ <action name="actionSave_As">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/filesave.png</normaloff>:/common/icons/filesave.png</iconset>
+ </property>
+ <property name="text">
+ <string>Save current image</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+S</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionAdd_VF_to_current_Image">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/cursor-uparrow.png</normaloff>:/common/icons/cursor-uparrow.png</iconset>
+ </property>
+ <property name="text">
+ <string>Add deformation field to current image</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionNorth_West_Window">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/NOgrid.png</normaloff>:/common/icons/NOgrid.png</iconset>
+ </property>
+ <property name="text">
+ <string>Save image in TL</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionNorth_East_Window">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/NEgrid.png</normaloff>:/common/icons/NEgrid.png</iconset>
+ </property>
+ <property name="text">
+ <string>Save image in TR</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionSouth_West_Window">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/SOgrid.png</normaloff>:/common/icons/SOgrid.png</iconset>
+ </property>
+ <property name="text">
+ <string>Save image in BL</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionSouth_East_Window">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/SEgrid.png</normaloff>:/common/icons/SEgrid.png</iconset>
+ </property>
+ <property name="text">
+ <string>Save image in BR</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionOpen_Image_With_Time">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/open.png</normaloff>:/common/icons/open.png</iconset>
+ </property>
+ <property name="text">
+ <string>Open a nD image as a (n-1)D + t image</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionMerge_images_as_n_dim_t">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/open.png</normaloff>:/common/icons/open.png</iconset>
+ </property>
+ <property name="text">
+ <string>Open several nD images into a single nD+t image</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionAdd_fusion_image">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/fusion.png</normaloff>:/common/icons/fusion.png</iconset>
+ </property>
+ <property name="text">
+ <string>Add fusion image to current image</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionSegmentation">
+ <property name="text">
+ <string>Segmentation</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionResampler">
+ <property name="text">
+ <string>Resample</string>
+ </property>
+ </action>
+ <action name="actionSurface_Viewer">
+ <property name="text">
+ <string>Surface Viewer</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionDebug">
+ <property name="text">
+ <string>joelDebug</string>
+ </property>
+ </action>
+ <action name="actionDeformable_Registration">
+ <property name="text">
+ <string>Deformable Registration</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionWarp_image_with_vector_field">
+ <property name="text">
+ <string>Verify Registration</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionMaximum_Intensity_Projection">
+ <property name="text">
+ <string>Maximum Intensity Projection</string>
+ </property>
+ </action>
+ <action name="actionOpen_VTK_contour">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/open.png</normaloff>:/common/icons/open.png</iconset>
+ </property>
+ <property name="text">
+ <string>Open VTK or OBJ contour</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionNavigation_Help">
+ <property name="text">
+ <string>Navigation Help</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ <property name="priority">
+ <enum>QAction::NormalPriority</enum>
+ </property>
+ </action>
+ <action name="actionOpen_Dicom_Struct">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/open.png</normaloff>:/common/icons/open.png</iconset>
+ </property>
+ <property name="text">
+ <string>Open Dicom-Struct</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionCompute_mid_position_image">
+ <property name="text">
+ <string>Compute mid-position image</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionExperimental">
+ <property name="text">
+ <string>Experimental...</string>
+ </property>
+ </action>
+ <action name="actionRegister_vv">
+ <property name="text">
+ <string>Register vv</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionSave_all_slices">
+ <property name="text">
+ <string>Save all slices (Top-Left view)</string>
+ </property>
+ </action>
+ <action name="actionSave_current_state">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/filesave.png</normaloff>:/common/icons/filesave.png</iconset>
+ </property>
+ <property name="text">
+ <string>Save current state</string>
+ </property>
+ <property name="toolTip">
+ <string>Save current window and file states</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionRead_saved_state">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/open.png</normaloff>:/common/icons/open.png</iconset>
+ </property>
+ <property name="text">
+ <string>Read Saved State</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionAdd_overlay_image_to_current_image">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/GPSup.png</normaloff>:/common/icons/GPSup.png</iconset>
+ </property>
+ <property name="text">
+ <string>Add overlay image to current image</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionAdd_USSequence_toCT">
+ <property name="icon">
+ <iconset resource="../vvIcons.qrc">
+ <normaloff>:/common/icons/rotateright.png</normaloff>:/common/icons/rotateright.png</iconset>
+ </property>
+ <property name="text">
+ <string>Test / Fusion of US & CT sequences</string>
+ </property>
+ <property name="iconVisibleInMenu">
+ <bool>true</bool>
+ </property>
+ </action>
+ <action name="actionConnect_Pacs">
+ <property name="text">
+ <string>Connect Pacs</string>
+ </property>
+ </action>
+ </widget>
+ <customwidgets>
+ <customwidget>
+ <class>QVTKWidget</class>
+ <extends>QWidget</extends>
+ <header>QVTKWidget.h</header>
+ </customwidget>
+ <customwidget>
+ <class>vvInfoPanel</class>
+ <extends>QWidget</extends>
+ <header>vvInfoPanel.h</header>
+ </customwidget>
+ <customwidget>
+ <class>vvLandmarksPanel</class>
+ <extends>QWidget</extends>
+ <header>vvLandmarksPanel.h</header>
+ </customwidget>
+ <customwidget>
+ <class>vvLinkPanel</class>
+ <extends>QWidget</extends>
+ <header>vvLinkPanel.h</header>
+ </customwidget>
+ <customwidget>
+ <class>vvOverlayPanel</class>
+ <extends>QWidget</extends>
+ <header>vvOverlayPanel.h</header>
+ </customwidget>
+ </customwidgets>
+ <tabstops>
+ <tabstop>presetComboBox</tabstop>
+ <tabstop>windowSpinBox</tabstop>
+ <tabstop>levelSpinBox</tabstop>
+ <tabstop>NOViewWidget</tabstop>
+ <tabstop>NOVerticalSlider</tabstop>
+ <tabstop>NOHorizontalSlider</tabstop>
+ <tabstop>SOVerticalSlider</tabstop>
+ <tabstop>SOHorizontalSlider</tabstop>
+ <tabstop>NEVerticalSlider</tabstop>
+ <tabstop>NEHorizontalSlider</tabstop>
+ <tabstop>SEVerticalSlider</tabstop>
+ <tabstop>SEHorizontalSlider</tabstop>
+ <tabstop>viewButton</tabstop>
+ </tabstops>
+ <resources>
+ <include location="../vvIcons.qrc"/>
+ </resources>
+ <connections/>
+</ui>
</widget>
</item>
<item rowspan="4" row="0" column="2" colspan="6" >
- <widget class="QVTKWidget" name="viewWidget" />
+ <widget class="QVTKOpenGLNativeWidget" name="viewWidget" />
</item>
<item row="1" column="0" >
<widget class="QLabel" name="minLabel" >
</widget>
<customwidgets>
<customwidget>
- <class>QVTKWidget</class>
+ <class>QVTKOpenGLNativeWidget</class>
<extends>QWidget</extends>
- <header>QVTKWidget.h</header>
+ <header>QVTKOpenGLNativeWidget.h</header>
</customwidget>
</customwidgets>
<resources/>
--- /dev/null
+<ui version="4.0" >
+ <class>vvSegmentationDialog</class>
+ <widget class="QDialog" name="vvSegmentationDialog" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>561</width>
+ <height>453</height>
+ </rect>
+ </property>
+ <property name="windowTitle" >
+ <string>Segmentation tool</string>
+ </property>
+ <layout class="QGridLayout" >
+ <item row="0" column="0" >
+ <widget class="QSlider" name="clipping1Slider" >
+ <property name="orientation" >
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1" >
+ <widget class="QSlider" name="clipping2Slider" >
+ <property name="orientation" >
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ <item rowspan="4" row="0" column="2" colspan="6" >
+ <widget class="QVTKWidget" name="viewWidget" />
+ </item>
+ <item row="1" column="0" >
+ <widget class="QLabel" name="minLabel" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text" >
+ <string>Min :</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="2" >
+ <widget class="QLabel" name="maxLabel" >
+ <property name="text" >
+ <string>Max :</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0" colspan="2" >
+ <widget class="QPushButton" name="binaryButton" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text" >
+ <string>Binarise</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="0" colspan="2" >
+ <widget class="QPushButton" name="erodeButton" >
+ <property name="text" >
+ <string>Erode</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="2" >
+ <widget class="QPushButton" name="dilateButton" >
+ <property name="text" >
+ <string>Dilate</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="3" >
+ <widget class="QLabel" name="label" >
+ <property name="text" >
+ <string>Kernel Size :</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="4" >
+ <widget class="QSpinBox" name="kernelSpinBox" >
+ <property name="minimum" >
+ <number>1</number>
+ </property>
+ <property name="value" >
+ <number>2</number>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="5" >
+ <widget class="QPushButton" name="dimButton" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text" >
+ <string>3D</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="6" >
+ <widget class="QPushButton" name="saveButton" >
+ <property name="text" >
+ <string>Save As</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="7" >
+ <widget class="QPushButton" name="closeButton" >
+ <property name="text" >
+ <string>Close</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0" colspan="5" >
+ <widget class="QLabel" name="infoLabel" >
+ <property name="text" >
+ <string>TextLabel</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <customwidgets>
+ <customwidget>
+ <class>QVTKWidget</class>
+ <extends>QWidget</extends>
+ <header>QVTKWidget.h</header>
+ </customwidget>
+ </customwidgets>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>closeButton</sender>
+ <signal>clicked()</signal>
+ <receiver>vvSegmentationDialog</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>528</x>
+ <y>403</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>542</x>
+ <y>423</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
</property>
<layout class="QGridLayout" >
<item row="0" column="0" colspan="3" >
- <widget class="QVTKWidget" name="renderWidget" />
+ <widget class="QVTKOpenGLNativeWidget" name="renderWidget" />
</item>
<item row="1" column="0" >
<spacer>
</widget>
<customwidgets>
<customwidget>
- <class>QVTKWidget</class>
+ <class>QVTKOpenGLNativeWidget</class>
<extends>QWidget</extends>
- <header>QVTKWidget.h</header>
+ <header>QVTKOpenGLNativeWidget.h</header>
</customwidget>
</customwidgets>
<resources/>
--- /dev/null
+<ui version="4.0" >
+ <class>vvSurfaceViewerDialog</class>
+ <widget class="QDialog" name="vvSurfaceViewerDialog" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>554</width>
+ <height>472</height>
+ </rect>
+ </property>
+ <property name="windowTitle" >
+ <string>Dialog</string>
+ </property>
+ <layout class="QGridLayout" >
+ <item row="0" column="0" colspan="3" >
+ <widget class="QVTKWidget" name="renderWidget" />
+ </item>
+ <item row="1" column="0" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>311</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="1" column="1" >
+ <widget class="QPushButton" name="loadButton" >
+ <property name="text" >
+ <string>Load</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2" >
+ <widget class="QPushButton" name="closeButton" >
+ <property name="text" >
+ <string>Close</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <customwidgets>
+ <customwidget>
+ <class>QVTKWidget</class>
+ <extends>QWidget</extends>
+ <header>QVTKWidget.h</header>
+ </customwidget>
+ </customwidgets>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>closeButton</sender>
+ <signal>clicked()</signal>
+ <receiver>vvSurfaceViewerDialog</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>492</x>
+ <y>436</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>443</x>
+ <y>435</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
</widget>
</item>
<item>
- <widget class="QVTKWidget" name="HistogramWidget" native="true">
+ <widget class="QVTKOpenGLNativeWidget" name="HistogramWidget" native="true">
<property name="minimumSize">
<size>
<width>0</width>
</widget>
<customwidgets>
<customwidget>
- <class>QVTKWidget</class>
+ <class>QVTKOpenGLNativeWidget</class>
<extends>QWidget</extends>
- <header>QVTKWidget.h</header>
+ <header>QVTKOpenGLNativeWidget.h</header>
</customwidget>
</customwidgets>
<resources/>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>vvToolHistogram</class>
+ <widget class="QWidget" name="vvToolHistogram">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>506</width>
+ <height>452</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Histogram image</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <item>
+ <layout class="QVBoxLayout" name="verticalLayout_3">
+ <item>
+ <layout class="QGridLayout" name="gridLayout_2">
+ <property name="horizontalSpacing">
+ <number>6</number>
+ </property>
+ <item row="2" column="3">
+ <layout class="QHBoxLayout" name="horizontalLayout_6">
+ <item>
+ <widget class="QPushButton" name="mSaveHistogramButton">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Save Histogram</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="1" column="3">
+ <layout class="QHBoxLayout" name="horizontalLayout_2">
+ <item>
+ <widget class="QLabel" name="mPosPoint2Label">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>200</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="1" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_3"/>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <layout class="QVBoxLayout" name="verticalLayout_2">
+ <item>
+ <widget class="Line" name="line_2">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QVTKWidget" name="HistogramWidget" native="true">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>300</height>
+ </size>
+ </property>
+ <property name="mouseTracking">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <customwidgets>
+ <customwidget>
+ <class>QVTKWidget</class>
+ <extends>QWidget</extends>
+ <header>QVTKWidget.h</header>
+ </customwidget>
+ </customwidgets>
+ <resources/>
+ <connections/>
+</ui>
</widget>
</item>
<item>
- <widget class="QVTKWidget" name="ProfileWidget" native="true">
+ <widget class="QVTKOpenGLNativeWidget" name="ProfileWidget" native="true">
<property name="minimumSize">
<size>
<width>0</width>
</widget>
<customwidgets>
<customwidget>
- <class>QVTKWidget</class>
+ <class>QVTKOpenGLNativeWidget</class>
<extends>QWidget</extends>
- <header>QVTKWidget.h</header>
+ <header>QVTKOpenGLNativeWidget.h</header>
</customwidget>
</customwidgets>
<resources/>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>vvToolProfile</class>
+ <widget class="QWidget" name="vvToolProfile">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>505</width>
+ <height>452</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Profile image</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <item>
+ <layout class="QVBoxLayout" name="verticalLayout_3">
+ <item>
+ <layout class="QGridLayout" name="gridLayout_2">
+ <property name="horizontalSpacing">
+ <number>6</number>
+ </property>
+ <item row="2" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_3">
+ <item>
+ <widget class="QPushButton" name="mSelectPoint2Button">
+ <property name="text">
+ <string>Select point 2</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLabel" name="Point2">
+ <property name="text">
+ <string>Center of voxel2 (vox):</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="2" column="3">
+ <layout class="QHBoxLayout" name="horizontalLayout_2">
+ <item>
+ <widget class="QLabel" name="mPosPoint2Label">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>200</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="3" column="3">
+ <layout class="QHBoxLayout" name="horizontalLayout_6">
+ <item>
+ <widget class="QToolButton" name="mCancelPointsButton">
+ <property name="text">
+ <string>Cancel</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="mSaveProfileButton">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Save Profile</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="1" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_7">
+ <item>
+ <widget class="QPushButton" name="mSelectPoint1Button">
+ <property name="text">
+ <string>Select point 1</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLabel" name="Point1">
+ <property name="text">
+ <string>Center of voxel1 (vox):</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="1" column="3">
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <widget class="QLabel" name="mPosPoint1Label">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>200</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <layout class="QVBoxLayout" name="verticalLayout_2">
+ <item>
+ <widget class="Line" name="line_2">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QVTKWidget" name="ProfileWidget" native="true">
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>300</height>
+ </size>
+ </property>
+ <property name="mouseTracking">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <customwidgets>
+ <customwidget>
+ <class>QVTKWidget</class>
+ <extends>QWidget</extends>
+ <header>QVTKWidget.h</header>
+ </customwidget>
+ </customwidgets>
+ <resources/>
+ <connections/>
+</ui>
//------------------------------------------------------------------------------
void vvMainWindow::SaveScreenshotAllSlices()
{
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
+ QVTKOpenGLNativeWidget *widget = NOViewWidget;
+#else
QVTKWidget *widget = NOViewWidget;
+#endif
int index = 0;// GetSlicerIndexFromItem(DataTree->selectedItems()[0]);
vvSlicerManager * SM = mSlicerManagers[index];
//------------------------------------------------------------------------------
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
+void vvMainWindow::SaveScreenshot(QVTKOpenGLNativeWidget *widget)
+#else
void vvMainWindow::SaveScreenshot(QVTKWidget *widget)
+#endif
{
QString Extensions = "Images( *.png);;";
Extensions += "Images( *.jpg);;";
#include <iostream>
#include <vector>
#include <QDropEvent>
+#include "vtkVersion.h"
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
#include "ui_vvMainWindow.h"
+#else
+#include "ui_vvMainWindowVTK7.h"
+#endif
#include "vvMainWindowBase.h"
#include "vvToolManager.h"
#include "vvImageReader.h"
QString GetVectorIntAsString(std::vector<int> vectorInt);
int GetSlicerIndexFromItem(QTreeWidgetItem* item); //this actually returns the SlicerManager index TODO: rename it to GetSlicerManagerIndexFromItem
QTreeWidgetItem* GetItemFromSlicerManager(vvSlicerManager* sm);
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
+ void SaveScreenshot(QVTKOpenGLNativeWidget *widget);
+#else
void SaveScreenshot(QVTKWidget *widget);
+#endif
int GetImageDuplicateFilenameNumber(std::string filename);
QMenu contextMenu;
===========================================================================**/
#ifndef _VVSEGMENTATIONDIALOG_H
#define _VVSEGMENTATIONDIALOG_H
+#include <vtkVersion.h>
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
#include "ui_vvSegmentationDialog.h"
+#else
+#include "ui_vvSegmentationDialogVTK7.h"
+#endif
#include "clitkCommon.h"
#include "vvImage.h"
#include "vvSlicerManager.h"
===========================================================================**/
#ifndef _vvSurfaceViewerDialog_H
#define _vvSurfaceViewerDialog_H
+#include <vtkVersion.h>
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
#include "ui_vvSurfaceViewerDialog.h"
+#else
+#include "ui_vvSurfaceViewerDialogVTK7.h"
+#endif
class vtkPolyDataMapper;
class vtkActor;
//------------------------------------------------------------------------------
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
+QVTKOpenGLNativeWidget* vvToolHistogram::GetHistogramWidget()
+#else
QVTKWidget* vvToolHistogram::GetHistogramWidget()
+#endif
{
return(HistogramWidget);
}
#include "vvToolBase.h"
#include "vvToolWidgetBase.h"
+#include <vtkVersion.h>
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
#include "ui_vvToolHistogram.h"
+#else
+#include "ui_vvToolHistogramVTK7.h"
+#endif
#include "clitkHistogramImage_ggo.h"
#include "clitkHistogramImageGenericFilter.h"
void displayHistogram();
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
+ QVTKOpenGLNativeWidget* GetHistogramWidget();
+#else
QVTKWidget* GetHistogramWidget();
+#endif
//-----------------------------------------------------
public slots:
#include "vvToolWidgetBase.h"
#include "vvImageContour.h"
#include "vvLandmarks.h"
+#include <vtkVersion.h>
+#if (VTK_MAJOR_VERSION == 8 && VTK_MINOR_VERSION >= 1) || VTK_MAJOR_VERSION >= 9
#include "ui_vvToolProfile.h"
+#else
+#include "ui_vvToolProfileVTK7.h"
+#endif
#include "vvBinaryImageOverlayActor.h"
#include "clitkProfileImage_ggo.h"