Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
Main Repositories
otb
Commits
d881d1bd
Commit
d881d1bd
authored
Feb 21, 2017
by
Julien Michel
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'develop' into s1-deburst
parents
33320a87
7a0809d1
Changes
133
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
133 changed files
with
1433 additions
and
1221 deletions
+1433
-1221
CMake/FindShark.cmake
CMake/FindShark.cmake
+1
-1
CMakeLists.txt
CMakeLists.txt
+6
-1
Documentation/Cookbook/rst/Installation_Linux.txt
Documentation/Cookbook/rst/Installation_Linux.txt
+8
-8
Documentation/Cookbook/rst/Installation_Linux_xdk.txt
Documentation/Cookbook/rst/Installation_Linux_xdk.txt
+75
-0
Documentation/Cookbook/rst/Installation_Macx_xdk.txt
Documentation/Cookbook/rst/Installation_Macx_xdk.txt
+2
-0
Documentation/Cookbook/rst/Installation_Windows_xdk.txt
Documentation/Cookbook/rst/Installation_Windows_xdk.txt
+1
-0
Documentation/Cookbook/rst/Monteverdi.rst
Documentation/Cookbook/rst/Monteverdi.rst
+6
-9
Documentation/SoftwareGuide/CMakeLists.txt
Documentation/SoftwareGuide/CMakeLists.txt
+1
-1
Documentation/SoftwareGuide/Latex/ContributorList.tex
Documentation/SoftwareGuide/Latex/ContributorList.tex
+1
-0
Documentation/SoftwareGuide/Latex/WriteAnApplication.tex
Documentation/SoftwareGuide/Latex/WriteAnApplication.tex
+13
-4
Modules/Adapters/QtAdapters/src/otbQtAdapters.cxx
Modules/Adapters/QtAdapters/src/otbQtAdapters.cxx
+36
-16
Modules/Applications/AppClassification/app/otbDSFuzzyModelEstimation.cxx
...tions/AppClassification/app/otbDSFuzzyModelEstimation.cxx
+4
-4
Modules/Applications/AppClassification/app/otbKMeansClassification.cxx
...cations/AppClassification/app/otbKMeansClassification.cxx
+1
-1
Modules/Applications/AppClassification/app/otbMultiImageSamplingRate.cxx
...tions/AppClassification/app/otbMultiImageSamplingRate.cxx
+1
-1
Modules/Applications/AppClassification/app/otbOGRLayerClassifier.cxx
...lications/AppClassification/app/otbOGRLayerClassifier.cxx
+1
-1
Modules/Applications/AppClassification/app/otbSampleExtraction.cxx
...pplications/AppClassification/app/otbSampleExtraction.cxx
+1
-1
Modules/Applications/AppClassification/app/otbSampleSelection.cxx
...Applications/AppClassification/app/otbSampleSelection.cxx
+1
-1
Modules/Applications/AppClassification/app/otbTrainImagesClassifier.cxx
...ations/AppClassification/app/otbTrainImagesClassifier.cxx
+32
-32
Modules/Applications/AppClassification/app/otbTrainOGRLayersClassifier.cxx
...ons/AppClassification/app/otbTrainOGRLayersClassifier.cxx
+1
-1
Modules/Applications/AppClassification/app/otbTrainRegression.cxx
...Applications/AppClassification/app/otbTrainRegression.cxx
+1
-1
Modules/Applications/AppClassification/app/otbVectorDataDSValidation.cxx
...tions/AppClassification/app/otbVectorDataDSValidation.cxx
+2
-2
Modules/Applications/AppClassification/include/otbTrainBoost.txx
.../Applications/AppClassification/include/otbTrainBoost.txx
+4
-4
Modules/Applications/AppClassification/include/otbTrainDecisionTree.txx
...ations/AppClassification/include/otbTrainDecisionTree.txx
+5
-5
Modules/Applications/AppClassification/include/otbTrainGradientBoostedTree.txx
...AppClassification/include/otbTrainGradientBoostedTree.txx
+4
-4
Modules/Applications/AppClassification/include/otbTrainKNN.txx
...es/Applications/AppClassification/include/otbTrainKNN.txx
+1
-1
Modules/Applications/AppClassification/include/otbTrainLibSVM.txx
...Applications/AppClassification/include/otbTrainLibSVM.txx
+6
-6
Modules/Applications/AppClassification/include/otbTrainNeuralNetwork.txx
...tions/AppClassification/include/otbTrainNeuralNetwork.txx
+11
-11
Modules/Applications/AppClassification/include/otbTrainRandomForests.txx
...tions/AppClassification/include/otbTrainRandomForests.txx
+7
-7
Modules/Applications/AppClassification/include/otbTrainSVM.txx
...es/Applications/AppClassification/include/otbTrainSVM.txx
+17
-17
Modules/Applications/AppClassification/include/otbTrainSharkRandomForests.txx
.../AppClassification/include/otbTrainSharkRandomForests.txx
+4
-4
Modules/Applications/AppDimensionalityReduction/app/otbDimensionalityReduction.cxx
...imensionalityReduction/app/otbDimensionalityReduction.cxx
+4
-4
Modules/Applications/AppDomainTransform/app/otbDomainTransform.cxx
...pplications/AppDomainTransform/app/otbDomainTransform.cxx
+34
-31
Modules/Applications/AppDomainTransform/test/CMakeLists.txt
Modules/Applications/AppDomainTransform/test/CMakeLists.txt
+6
-6
Modules/Applications/AppFiltering/app/otbSmoothing.cxx
Modules/Applications/AppFiltering/app/otbSmoothing.cxx
+1
-1
Modules/Applications/AppFusion/app/otbBundleToPerfectSensor.cxx
...s/Applications/AppFusion/app/otbBundleToPerfectSensor.cxx
+2
-2
Modules/Applications/AppHyperspectral/app/otbHyperspectralUnmixing.cxx
...cations/AppHyperspectral/app/otbHyperspectralUnmixing.cxx
+1
-1
Modules/Applications/AppHyperspectral/app/otbVertexComponentAnalysis.cxx
...tions/AppHyperspectral/app/otbVertexComponentAnalysis.cxx
+1
-1
Modules/Applications/AppImageUtils/app/otbColorMapping.cxx
Modules/Applications/AppImageUtils/app/otbColorMapping.cxx
+7
-7
Modules/Applications/AppImageUtils/app/otbCompareImages.cxx
Modules/Applications/AppImageUtils/app/otbCompareImages.cxx
+4
-4
Modules/Applications/AppImageUtils/app/otbConvert.cxx
Modules/Applications/AppImageUtils/app/otbConvert.cxx
+1
-1
Modules/Applications/AppImageUtils/app/otbExtractROI.cxx
Modules/Applications/AppImageUtils/app/otbExtractROI.cxx
+8
-8
Modules/Applications/AppImageUtils/app/otbManageNoData.cxx
Modules/Applications/AppImageUtils/app/otbManageNoData.cxx
+1
-1
Modules/Applications/AppImageUtils/app/otbPixelValue.cxx
Modules/Applications/AppImageUtils/app/otbPixelValue.cxx
+1
-1
Modules/Applications/AppImageUtils/app/otbQuicklook.cxx
Modules/Applications/AppImageUtils/app/otbQuicklook.cxx
+8
-8
Modules/Applications/AppImageUtils/app/otbReadImageInfo.cxx
Modules/Applications/AppImageUtils/app/otbReadImageInfo.cxx
+37
-37
Modules/Applications/AppImageUtils/app/otbRescale.cxx
Modules/Applications/AppImageUtils/app/otbRescale.cxx
+4
-2
Modules/Applications/AppMathParserX/app/otbBandMathX.cxx
Modules/Applications/AppMathParserX/app/otbBandMathX.cxx
+1
-1
Modules/Applications/AppOpticalCalibration/app/otbOpticalCalibration.cxx
...tions/AppOpticalCalibration/app/otbOpticalCalibration.cxx
+13
-11
Modules/Applications/AppProjection/app/otbConvertCartoToGeoPoint.cxx
...lications/AppProjection/app/otbConvertCartoToGeoPoint.cxx
+2
-2
Modules/Applications/AppProjection/app/otbConvertSensorToGeoPoint.cxx
...ications/AppProjection/app/otbConvertSensorToGeoPoint.cxx
+4
-4
Modules/Applications/AppProjection/app/otbGenerateRPCSensorModel.cxx
...lications/AppProjection/app/otbGenerateRPCSensorModel.cxx
+10
-16
Modules/Applications/AppProjection/app/otbGridBasedImageResampling.cxx
...cations/AppProjection/app/otbGridBasedImageResampling.cxx
+1
-1
Modules/Applications/AppProjection/app/otbObtainUTMZoneFromGeoPoint.cxx
...ations/AppProjection/app/otbObtainUTMZoneFromGeoPoint.cxx
+1
-1
Modules/Applications/AppProjection/app/otbOrthoRectification.cxx
.../Applications/AppProjection/app/otbOrthoRectification.cxx
+43
-36
Modules/Applications/AppProjection/app/otbRigidTransformResample.cxx
...lications/AppProjection/app/otbRigidTransformResample.cxx
+1
-1
Modules/Applications/AppProjection/app/otbSuperimpose.cxx
Modules/Applications/AppProjection/app/otbSuperimpose.cxx
+1
-1
Modules/Applications/AppSegmentation/app/otbHooverCompareSegmentation.cxx
...ions/AppSegmentation/app/otbHooverCompareSegmentation.cxx
+4
-4
Modules/Applications/AppSegmentation/app/otbSegmentation.cxx
Modules/Applications/AppSegmentation/app/otbSegmentation.cxx
+2
-2
Modules/Applications/AppStereo/app/otbStereoFramework.cxx
Modules/Applications/AppStereo/app/otbStereoFramework.cxx
+2
-2
Modules/Applications/AppTest/test/CMakeLists.txt
Modules/Applications/AppTest/test/CMakeLists.txt
+1
-1
Modules/Applications/AppVectorDataTranslation/app/otbRasterization.cxx
...cations/AppVectorDataTranslation/app/otbRasterization.cxx
+1
-1
Modules/Core/Transform/include/otbStreamingWarpImageFilter.h
Modules/Core/Transform/include/otbStreamingWarpImageFilter.h
+1
-1
Modules/Filtering/ImageManipulation/include/otbVectorRescaleIntensityImageFilter.h
...nipulation/include/otbVectorRescaleIntensityImageFilter.h
+5
-0
Modules/Filtering/Wavelet/include/otbWaveletsBandsListToWaveletsSynopsisImageFilter.h
...clude/otbWaveletsBandsListToWaveletsSynopsisImageFilter.h
+1
-1
Modules/Fusion/PanSharpening/include/otbSimpleRcsPanSharpeningFusionImageFilter.h
...ning/include/otbSimpleRcsPanSharpeningFusionImageFilter.h
+97
-4
Modules/Fusion/PanSharpening/include/otbSimpleRcsPanSharpeningFusionImageFilter.txx
...ng/include/otbSimpleRcsPanSharpeningFusionImageFilter.txx
+79
-16
Modules/IO/IOGDAL/src/otbGDALOverviewsBuilder.cxx
Modules/IO/IOGDAL/src/otbGDALOverviewsBuilder.cxx
+1
-1
Modules/Remote/Mosaic.remote.cmake
Modules/Remote/Mosaic.remote.cmake
+1
-1
Modules/Remote/otb-bv.remote.cmake
Modules/Remote/otb-bv.remote.cmake
+1
-1
Modules/Remote/otbFFSforGMM.remote.cmake
Modules/Remote/otbFFSforGMM.remote.cmake
+1
-1
Modules/Remote/phenotb.remote.cmake
Modules/Remote/phenotb.remote.cmake
+1
-1
Modules/Remote/temporal-gapfilling.remote.cmake
Modules/Remote/temporal-gapfilling.remote.cmake
+1
-1
Modules/ThirdParty/OssimPlugins/src/ossim/ossimSentinel1Model.cpp
...ThirdParty/OssimPlugins/src/ossim/ossimSentinel1Model.cpp
+23
-14
Modules/ThirdParty/Shark/src/otb_shark.h.in
Modules/ThirdParty/Shark/src/otb_shark.h.in
+1
-1
Modules/Visualization/Ice/src/otbGlImageActor.cxx
Modules/Visualization/Ice/src/otbGlImageActor.cxx
+2
-2
Modules/Visualization/Mapla/src/mvdMaplaApplication.cxx
Modules/Visualization/Mapla/src/mvdMaplaApplication.cxx
+2
-0
Modules/Visualization/Monteverdi/src/CMakeLists.txt
Modules/Visualization/Monteverdi/src/CMakeLists.txt
+8
-0
Modules/Visualization/Monteverdi/src/mvdApplication.cxx
Modules/Visualization/Monteverdi/src/mvdApplication.cxx
+8
-0
Modules/Visualization/Monteverdi/src/mvdMainWindow.cxx
Modules/Visualization/Monteverdi/src/mvdMainWindow.cxx
+4
-3
Modules/Visualization/Monteverdi/src/mvdMainWindow.qrc
Modules/Visualization/Monteverdi/src/mvdMainWindow.qrc
+1
-1
Modules/Visualization/MonteverdiCore/src/mvdI18nCoreApplication.cxx
...sualization/MonteverdiCore/src/mvdI18nCoreApplication.cxx
+5
-6
Modules/Visualization/MonteverdiCore/src/mvdStackedLayerModel.cxx
...Visualization/MonteverdiCore/src/mvdStackedLayerModel.cxx
+1
-1
Modules/Visualization/MonteverdiCore/src/mvdVectorImageModel.cxx
.../Visualization/MonteverdiCore/src/mvdVectorImageModel.cxx
+2
-2
Modules/Visualization/MonteverdiGui/CMakeLists.txt
Modules/Visualization/MonteverdiGui/CMakeLists.txt
+2
-1
Modules/Visualization/MonteverdiGui/include/mvdQtWidgetView.h
...les/Visualization/MonteverdiGui/include/mvdQtWidgetView.h
+2
-0
Modules/Visualization/MonteverdiGui/src/mvdColorBandDynamicsWidget.ui
...alization/MonteverdiGui/src/mvdColorBandDynamicsWidget.ui
+1
-1
Modules/Visualization/MonteverdiGui/src/mvdColorDynamicsWidget.ui
...Visualization/MonteverdiGui/src/mvdColorDynamicsWidget.ui
+18
-1
Modules/Visualization/MonteverdiGui/src/mvdColorSetupWidget.ui
...es/Visualization/MonteverdiGui/src/mvdColorSetupWidget.ui
+13
-26
Modules/Visualization/MonteverdiGui/src/mvdHistogramWidget.ui
...les/Visualization/MonteverdiGui/src/mvdHistogramWidget.ui
+1
-1
Modules/Visualization/MonteverdiGui/src/mvdI18nMainWindow.cxx
...les/Visualization/MonteverdiGui/src/mvdI18nMainWindow.cxx
+14
-0
Modules/Visualization/MonteverdiGui/src/mvdImageViewWidget.cxx
...es/Visualization/MonteverdiGui/src/mvdImageViewWidget.cxx
+2
-0
Modules/Visualization/MonteverdiGui/src/mvdImportImagesDialog.cxx
...Visualization/MonteverdiGui/src/mvdImportImagesDialog.cxx
+22
-11
Modules/Visualization/MonteverdiGui/src/mvdLayerStackItemModel.cxx
...isualization/MonteverdiGui/src/mvdLayerStackItemModel.cxx
+2
-1
Modules/Visualization/MonteverdiGui/src/mvdLayerStackWidget.cxx
...s/Visualization/MonteverdiGui/src/mvdLayerStackWidget.cxx
+16
-0
Modules/Visualization/MonteverdiGui/src/mvdLayerStackWidget.ui
...es/Visualization/MonteverdiGui/src/mvdLayerStackWidget.ui
+6
-6
Modules/Visualization/MonteverdiGui/src/mvdQtWidgetView.cxx
Modules/Visualization/MonteverdiGui/src/mvdQtWidgetView.cxx
+5
-0
Modules/Wrappers/ApplicationEngine/include/otbWrapperApplication.h
...rappers/ApplicationEngine/include/otbWrapperApplication.h
+36
-42
Modules/Wrappers/ApplicationEngine/include/otbWrapperCompositeApplication.h
...pplicationEngine/include/otbWrapperCompositeApplication.h
+1
-1
Modules/Wrappers/ApplicationEngine/src/otbWrapperApplication.cxx
.../Wrappers/ApplicationEngine/src/otbWrapperApplication.cxx
+160
-180
Modules/Wrappers/ApplicationEngine/src/otbWrapperApplicationHtmlDocGenerator.cxx
...ationEngine/src/otbWrapperApplicationHtmlDocGenerator.cxx
+2
-2
Modules/Wrappers/ApplicationEngine/src/otbWrapperElevationParametersHandler.cxx
...cationEngine/src/otbWrapperElevationParametersHandler.cxx
+17
-7
Modules/Wrappers/CommandLine/src/otbWrapperCommandLineLauncher.cxx
...rappers/CommandLine/src/otbWrapperCommandLineLauncher.cxx
+1
-1
Modules/Wrappers/QtWidget/include/otbWrapperQtWidgetView.h
Modules/Wrappers/QtWidget/include/otbWrapperQtWidgetView.h
+2
-0
Modules/Wrappers/QtWidget/src/otbWrapperQtWidgetModel.cxx
Modules/Wrappers/QtWidget/src/otbWrapperQtWidgetModel.cxx
+9
-0
Modules/Wrappers/QtWidget/src/otbWrapperQtWidgetParameterGroup.cxx
...rappers/QtWidget/src/otbWrapperQtWidgetParameterGroup.cxx
+3
-2
Modules/Wrappers/QtWidget/src/otbWrapperQtWidgetView.cxx
Modules/Wrappers/QtWidget/src/otbWrapperQtWidgetView.cxx
+5
-0
Modules/Wrappers/SWIG/src/otbApplication.i
Modules/Wrappers/SWIG/src/otbApplication.i
+6
-10
Modules/Wrappers/SWIG/src/otbApplicationLuaMain.cxx
Modules/Wrappers/SWIG/src/otbApplicationLuaMain.cxx
+0
-426
RELEASE_NOTES.txt
RELEASE_NOTES.txt
+58
-0
SuperBuild/CMake/External_gdal.cmake
SuperBuild/CMake/External_gdal.cmake
+2
-4
SuperBuild/CMake/External_geotiff.cmake
SuperBuild/CMake/External_geotiff.cmake
+1
-4
SuperBuild/CMake/External_glew.cmake
SuperBuild/CMake/External_glew.cmake
+2
-0
SuperBuild/CMake/External_itk.cmake
SuperBuild/CMake/External_itk.cmake
+0
-8
SuperBuild/CMake/External_zlib.cmake
SuperBuild/CMake/External_zlib.cmake
+2
-0
SuperBuild/CMake/post_install.cmake
SuperBuild/CMake/post_install.cmake
+12
-1
SuperBuild/CMakeLists.txt
SuperBuild/CMakeLists.txt
+7
-1
SuperBuild/Packaging/CreateCMakeProjects.cmake
SuperBuild/Packaging/CreateCMakeProjects.cmake
+8
-3
SuperBuild/Packaging/Files/linux_pkgsetup.in
SuperBuild/Packaging/Files/linux_pkgsetup.in
+42
-5
SuperBuild/Packaging/Files/macx_pkgsetup.in
SuperBuild/Packaging/Files/macx_pkgsetup.in
+1
-1
SuperBuild/Packaging/Files/otbenv.bash
SuperBuild/Packaging/Files/otbenv.bash
+3
-7
SuperBuild/Packaging/Files/otbenv.cmd
SuperBuild/Packaging/Files/otbenv.cmd
+1
-1
SuperBuild/Packaging/InstallSupportFiles.cmake
SuperBuild/Packaging/InstallSupportFiles.cmake
+52
-12
SuperBuild/Packaging/PackageGlobals.cmake
SuperBuild/Packaging/PackageGlobals.cmake
+3
-4
SuperBuild/Packaging/PackageHelper.cmake
SuperBuild/Packaging/PackageHelper.cmake
+40
-30
SuperBuild/Packaging/PackageMacros.cmake
SuperBuild/Packaging/PackageMacros.cmake
+7
-4
SuperBuild/patches/GLEW/glew-1-fixes-all.diff
SuperBuild/patches/GLEW/glew-1-fixes-all.diff
+15
-0
SuperBuild/patches/QT4/qt4-4-mantis1334-qpoint-initialization-all.diff
...tches/QT4/qt4-4-mantis1334-qpoint-initialization-all.diff
+30
-0
SuperBuild/patches/ZLIB/zlib-1-debug_fixes-win.diff
SuperBuild/patches/ZLIB/zlib-1-debug_fixes-win.diff
+14
-0
Utilities/Data/Icons/layer-delete.png
Utilities/Data/Icons/layer-delete.png
+0
-0
Utilities/Data/Icons/layer-delete_24x24.png
Utilities/Data/Icons/layer-delete_24x24.png
+0
-0
Utilities/Data/Icons/layers-remove_24x24.png
Utilities/Data/Icons/layers-remove_24x24.png
+0
-0
Utilities/Data/monteverdi.desktop.in
Utilities/Data/monteverdi.desktop.in
+2
-2
i18n/fr_FR.ts
i18n/fr_FR.ts
+78
-14
No files found.
CMake/FindShark.cmake
View file @
d881d1bd
...
...
@@ -26,7 +26,7 @@ find_path( SHARK_INCLUDE_DIR shark/Core/Shark.h
PATH_SUFFIXES include include/shark shark
)
find_library
(
SHARK_LIBRARY
NAMES shark
NAMES shark
shark_debug
PATHS
"
${
SHARK_SEARCH_PATH
}
"
PATH_SUFFIXES lib
)
...
...
CMakeLists.txt
View file @
d881d1bd
...
...
@@ -312,7 +312,12 @@ if(OTB_WRAP_PYTHON)
set
(
OTB_CONFIG_CODE
"
${
OTB_CONFIG_CODE
}
set(OTB_PYTHONPATH
\"
${
OTB_BINARY_DIR
}
/
${
OTB_INSTALL_PYTHON_DIR
}
\"
)"
)
endif
()
if
(
OTB_HAS_CXX11
)
if
(
"
${
CMAKE_CXX_COMPILER_ID
}
"
STREQUAL
"Clang"
OR
"
${
CMAKE_CXX_COMPILER_ID
}
"
STREQUAL
"GNU"
)
set
(
OTB_REQUIRED_CXX_FLAGS
" -std=c++11"
)
endif
()
endif
()
set
(
OTB_CONFIG_APPLICATION_PATH
"
${
OTB_BINARY_DIR
}
/
${
OTB_INSTALL_APP_DIR
}
"
)
set
(
OTB_CONFIG_TARGETS_CONDITION
" AND NOT OTB_BINARY_DIR"
)
set
(
OTB_CONFIG_TARGETS_FILE
"
${
OTB_BINARY_DIR
}
/OTBTargets.cmake"
)
...
...
Documentation/Cookbook/rst/Installation_Linux.txt
View file @
d881d1bd
...
...
@@ -93,17 +93,17 @@ A: This is due to a conflict with system Qt4 (usually seen on KDE) and Qt4 + gtk
Q: Monteverdi and Mapla applications look different from my other applications.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A: By default, Monteverdi, Mapla and otbapplication (otbgui\_\*) uses a default gtk theme (plastic)
which is distributed with the OTB package!. We do this to be on safe side, like when a user does
not have gtk libraries installed when using our package.
A: By default, Monteverdi, Mapla and otbapplication (otbgui\_\*) uses a the
system gtk theme. If you can't install GTK on your system you can use the
distributed with the OTB package. Note that using system GTK is the preferred
way with the OTB standalone package as the distributed version of GTK do not
work on recent Linux distributions.
gtk libraries in the package is the reason why you are getting a default "plastic" look & feel that
makes it look different from other GUI applications.
To get same look and feel, you can "force" Monteverdi and Mapla to use system GTK.
To use the distributed GTK libraries you need to set the OTB_USE_LOCAL_GTK:
::
export OTB_USE_
SYSTEM
_GTK=1
export OTB_USE_
LOCAL
_GTK=1
And now start ``monteverdi.sh`` or ``mapla.sh`` from OTB-|release|-Linux64
To get back default behaviour, unset OTB_USE_
SYSTEM
_GTK=1 or set OTB_USE_
SYSTEM
_GTK=0
To get back default behaviour, unset OTB_USE_
LOCAL
_GTK=1 or set OTB_USE_
LOCAL
_GTK=0
Documentation/Cookbook/rst/Installation_Linux_xdk.txt
0 → 100644
View file @
d881d1bd
Synopsis
--------
This archive provides a development kit for the ORFEO ToolBox library which
allows to easily compile OTB and facilitate the creation of programs based on
OTB.
It contains shared libraries of OTB dependencies and helper scripts for the
configuration and the compilation of the library.
Note that OTB sources are not included in the archive (see instructions below).
Prerequisites
-------------
- cmake (>= 3.2)
- gcc (>= 4.9)
- git
Extract XDK
-----------
::
cd /opt (You can use another a directory of your own choice)
chmod +x OTB-|release|-xdk-Linux64.run
./OTB-|release|-xdk-Linux64.run
**You now will have a directory named OTB-|release|-xdk-Linux64 in \'/opt\'**
Setup environment
-----------------
There is a helper script in package called **xdkenv.profile**. This script export
required environments to configure and build OTB.
::
cd /opt/OTB-|release|-xdk-Linux64
. ./xdkenv.profile
Test environment setup by checking value of CMAKE_PREFIX_PATH
::
echo $CMAKE_PREFIX_PATH
The above command will output:
/opt/OTB-|release|-xdk-Linux64
Download, Configure and build OTB
---------------------------------
::
mkdir -p /opt/OTB/build && cd /opt/OTB
git clone --depth=1 --branch=develop https://git@git.orfeo-toolbox.org/git/otb.git source
cd build && cmake ../source
make -j2
Notes
~~~~~
* By default, all OTB\_USE\_\* variables in OTB are set to FALSE except for 6S and SiftFast. You can check/activate them in your cmake-gui/ccmake.
* If you need to activate Qt4 modules (Monteverdi, Ice, QtWidget, ApplicationEngine ..), you must set *QT_BINARY_DIR*.
::
cd /opt/OTB/build && cmake -DOTB_USE_QT4=TRUE -DQT_BINARY_DIR=$CMAKE_PREFIX_PATH/bin
This is because Qt tools ( moc, rcc, et al) are reported as not found by cmake due to incorrect path in "qmake -query"
Documentation/Cookbook/rst/Installation_Macx_xdk.txt
0 → 100644
View file @
d881d1bd
README.md
Documentation/Cookbook/rst/Installation_Windows_xdk.txt
0 → 100644
View file @
d881d1bd
README.md
Documentation/Cookbook/rst/Monteverdi.rst
View file @
d881d1bd
...
...
@@ -12,22 +12,19 @@ Monteverdi is a satellite image viewer. Its main features are:
- **Powerful**: Access to all processing application from OTB. Orthorectification,
optical calibration, classification, SAR processing, and much more!
GUI : what does it look like ?
------------------------------
.. image:: Art/MonteverdiImages/gui.png
This is Monteverdi’s main window where the different functionalities are
reachable
:
This is Monteverdi’s main window where the different functionalities are:
#. Main menu
#. Top toolbar
#. Image
displaying
#. Image
View
#.
Right side dock
#.
Widgets
#.
Stack layer
#.
Layer stack
Main menu
~~~~~~~~~
...
...
@@ -92,9 +89,9 @@ In the image displaying part:
- CTRL+Mouse drag = Quick scroll view (rending is done after releasing
CTRL key)
-
CTRL+
Mouse wheel = Zoom
in out
- Mouse wheel = Zoom
- + or - = Zoom
in out
- + or - = Zoom
In the layer stack part:
...
...
Documentation/SoftwareGuide/CMakeLists.txt
View file @
d881d1bd
...
...
@@ -62,7 +62,7 @@ FIND_PATH(OTB_DATA_ROOT README-OTB-Data PATHS $ENV{OTB_DATA_ROOT} ${OTB_SOURCE_D
FIND_PATH
(
OTB_DATA_LARGEINPUT_ROOT OTBData.readme PATHS $ENV{OTB_DATA_LARGEINPUT_ROOT}
)
IF
(
NOT OTB_DATA_LARGEINPUT_ROOT
)
MESSAGE
(
FATAL_ERROR
"Large input directory is not set"
)
MESSAGE
(
FATAL_ERROR
"Large input directory is not set
and is mandatory to build the Software Guide.
"
)
ENDIF
(
NOT OTB_DATA_LARGEINPUT_ROOT
)
# OTB_DATA_PATHS is searched recursively.. you need not enter sub-directories
...
...
Documentation/SoftwareGuide/Latex/ContributorList.tex
View file @
d881d1bd
...
...
@@ -33,6 +33,7 @@ Julien Osman,
Julien Radoux (UCL),
Laurentiu Nicola (CS Romania),
Luc Hermitte (CS),
Ludovic Hussonnois (CS),
Manuel Grizonnet (CNES),
Massimo Di Stefano,
Mathieu Deltorre (CS),
...
...
Documentation/SoftwareGuide/Latex/WriteAnApplication.tex
View file @
d881d1bd
...
...
@@ -150,7 +150,7 @@ name of the files to write, but they also encapsulate the corresponding writers.
\section
{
Composite application
}
The application framework has been extended to allow the implementation of composite applications :
applications that use other applications. The concept is simple : you have two applications A and B
\textbf
{
applications that use other applications
}
. The concept is simple : you have two applications A and B
that you want to chain in order to build a third application C. Rather than writing C by copying
the code of A and B, you would like to re-use applications A and B. This plain example will be
re-used in this section for explanations.
...
...
@@ -231,7 +231,7 @@ with \code{b.in}. In this case, you have to manually call the writers of paramet
\code
{
a.out
}
.
\end{itemize}
At the moment, the connexion of vector data parameters is not supported.
At the moment, the
in-memory
connexion of vector data parameters is not supported.
\subsection
{
Orchestration
}
...
...
@@ -242,8 +242,17 @@ parameter update.
In the
\code
{
DoExecute()
}
of your composite application, you have to call
\code
{
ExecuteInternal()
}
in order to launch each internal application. The order should be compatible with
image parameter connexions. If you want to do "in-memory" connexions, you can to it between
two calls to
\code
{
ExecuteInternal()
}
.
image parameter connexions. If you want to do "in-memory" connexions, you can do it between
two calls to
\code
{
ExecuteInternal()
}
, for instance :
\small
\begin{lstlisting}
ExecuteInternal("a");
GetInternalApplication("b")->SetParameterInputImage("in",
GetInternalApplication("a")->GetParameterOutputImage("out"));
ExecuteInternal("b");
\end{lstlisting}
\normalsize
The application BundleToPerfectSensor is a simple example of composite applications.
For a more complex example, you can check the application TrainImagesClassifier.
...
...
Modules/Adapters/QtAdapters/src/otbQtAdapters.cxx
View file @
d881d1bd
...
...
@@ -66,13 +66,18 @@ GetExistingDirectory( QWidget * p,
const
QString
&
dir
,
QFileDialog
::
Options
options
)
{
QString
dialogCaption
(
caption
.
isEmpty
()
?
QObject
::
tr
(
"Select directory..."
)
:
caption
);
QString
dialogDir
(
dir
.
isEmpty
()
?
RecentDirectory
:
dir
);
QString
path
(
QFileDialog
::
getExistingDirectory
(
p
,
caption
.
isEmpty
()
?
QObject
::
tr
(
"Select directory..."
)
:
caption
,
dir
.
isEmpty
()
?
RecentDirectory
:
dir
,
dialogCaption
,
dialogDir
,
options
)
);
...
...
@@ -95,13 +100,18 @@ GetOpenFileName( QWidget * p,
QString
*
selectedFilter
,
QFileDialog
::
Options
options
)
{
QString
dialogCaption
(
caption
.
isEmpty
()
?
QObject
::
tr
(
"Open file..."
)
:
caption
);
QString
dialogDir
(
dir
.
isEmpty
()
?
RecentDirectory
:
dir
);
QString
filename
(
QFileDialog
::
getOpenFileName
(
p
,
caption
.
isEmpty
()
?
QObject
::
tr
(
"Open file..."
)
:
caption
,
dir
.
isEmpty
()
?
RecentDirectory
:
dir
,
dialogCaption
,
dialogDir
,
filter
,
selectedFilter
,
options
...
...
@@ -124,13 +134,18 @@ GetOpenFileNames( QWidget * p,
QString
*
selectedFilter
,
QFileDialog
::
Options
options
)
{
QString
dialogCaption
(
caption
.
isEmpty
()
?
QObject
::
tr
(
"Open file..."
)
:
caption
);
QString
dialogDir
(
dir
.
isEmpty
()
?
RecentDirectory
:
dir
);
QStringList
filenames
(
QFileDialog
::
getOpenFileNames
(
p
,
caption
.
isEmpty
()
?
QObject
::
tr
(
"Open file..."
)
:
caption
,
dir
.
isEmpty
()
?
RecentDirectory
:
dir
,
dialogCaption
,
dialogDir
,
filter
,
selectedFilter
,
options
...
...
@@ -153,13 +168,18 @@ GetSaveFileName( QWidget * p,
QString
*
selectedFilter
,
QFileDialog
::
Options
options
)
{
QString
dialogCaption
(
caption
.
isEmpty
()
?
QObject
::
tr
(
"Save file..."
)
:
caption
);
QString
dialogDir
(
dir
.
isEmpty
()
?
RecentDirectory
:
dir
);
QString
filename
(
QFileDialog
::
getSaveFileName
(
p
,
caption
.
isEmpty
()
?
QObject
::
tr
(
"Save file..."
)
:
caption
,
dir
.
isEmpty
()
?
RecentDirectory
:
dir
,
dialogCaption
,
dialogDir
,
filter
,
selectedFilter
,
options
...
...
Modules/Applications/AppClassification/app/otbDSFuzzyModelEstimation.cxx
View file @
d881d1bd
...
...
@@ -140,12 +140,12 @@ private:
AddParameter
(
ParameterType_String
,
"cri"
,
"Criterion"
);
SetParameterDescription
(
"cri"
,
"Dempster Shafer criterion (by default (belief+plausibility)/2)"
);
MandatoryOff
(
"cri"
);
SetParameterString
(
"cri"
,
"((Belief + Plausibility)/2.)"
);
SetParameterString
(
"cri"
,
"((Belief + Plausibility)/2.)"
,
false
);
AddParameter
(
ParameterType_Float
,
"wgt"
,
"Weighting"
);
SetParameterDescription
(
"wgt"
,
"Coefficient between 0 and 1 to promote undetection or false detections (default 0.5)"
);
MandatoryOff
(
"wgt"
);
SetParameterFloat
(
"wgt"
,
0.5
);
SetParameterFloat
(
"wgt"
,
0.5
,
false
);
AddParameter
(
ParameterType_InputFilename
,
"initmod"
,
"initialization model"
);
SetParameterDescription
(
"initmod"
,
"Initialization model (xml file) to be used. If the xml initialization model is set, the descriptor list is not used (specified using the option -desclist)"
);
...
...
@@ -154,12 +154,12 @@ private:
AddParameter
(
ParameterType_StringList
,
"desclist"
,
"Descriptor list"
);
SetParameterDescription
(
"desclist"
,
"List of the descriptors to be used in the model (must be specified to perform an automatic initialization)"
);
MandatoryOff
(
"desclist"
);
SetParameterString
(
"desclist"
,
""
);
SetParameterString
(
"desclist"
,
""
,
false
);
AddParameter
(
ParameterType_Int
,
"maxnbit"
,
"Maximum number of iterations"
);
MandatoryOff
(
"maxnbit"
);
SetParameterDescription
(
"maxnbit"
,
"Maximum number of optimizer iteration (default 200)"
);
SetParameterInt
(
"maxnbit"
,
200
);
SetParameterInt
(
"maxnbit"
,
200
,
false
);
AddParameter
(
ParameterType_Empty
,
"optobs"
,
"Optimizer Observer"
);
SetParameterDescription
(
"optobs"
,
"Activate the optimizer observer"
);
...
...
Modules/Applications/AppClassification/app/otbKMeansClassification.cxx
View file @
d881d1bd
...
...
@@ -245,7 +245,7 @@ private:
{
otbAppLogWARNING
(
"The available RAM is too small to process this sample size of "
<<
GetParameterInt
(
"ts"
)
<<
" pixels. The sample size will be reduced to "
<<
maxPixNb
<<
" pixels."
<<
std
::
endl
);
this
->
SetParameterInt
(
"ts"
,
maxPixNb
);
this
->
SetParameterInt
(
"ts"
,
maxPixNb
,
false
);
}
this
->
SetMaximumParameterIntValue
(
"ts"
,
maxPixNb
);
...
...
Modules/Applications/AppClassification/app/otbMultiImageSamplingRate.cxx
View file @
d881d1bd
...
...
@@ -161,7 +161,7 @@ private:
SetParameterDescription
(
"strategy.all"
,
"Take all samples"
);
// Default strategy : smallest
SetParameterString
(
"strategy"
,
"smallest"
);
SetParameterString
(
"strategy"
,
"smallest"
,
false
);
AddParameter
(
ParameterType_Choice
,
"mim"
,
"Multi-Image Mode"
);
...
...
Modules/Applications/AppClassification/app/otbOGRLayerClassifier.cxx
View file @
d881d1bd
...
...
@@ -78,7 +78,7 @@ private:
AddParameter
(
ParameterType_String
,
"cfield"
,
"Field containing the predicted class."
);
SetParameterDescription
(
"cfield"
,
"Field containing the predicted class"
);
SetParameterString
(
"cfield"
,
"predicted"
);
SetParameterString
(
"cfield"
,
"predicted"
,
false
);
// Doc example parameter settings
SetDocExampleParameterValue
(
"inshp"
,
"vectorData.shp"
);
...
...
Modules/Applications/AppClassification/app/otbSampleExtraction.cxx
View file @
d881d1bd
...
...
@@ -86,7 +86,7 @@ private:
AddParameter
(
ParameterType_String
,
"outfield.prefix.name"
,
"Output field prefix"
);
SetParameterDescription
(
"outfield.prefix.name"
,
"Prefix used to form the field names that"
"will contain the extracted values."
);
SetParameterString
(
"outfield.prefix.name"
,
"value_"
);
SetParameterString
(
"outfield.prefix.name"
,
"value_"
,
false
);
AddChoice
(
"outfield.list"
,
"Use the given name list"
);
SetParameterDescription
(
"outfield.list"
,
"Use the given name list"
);
...
...
Modules/Applications/AppClassification/app/otbSampleSelection.cxx
View file @
d881d1bd
...
...
@@ -197,7 +197,7 @@ private:
SetParameterDescription
(
"strategy.all"
,
"Take all samples"
);
// Default strategy : smallest
SetParameterString
(
"strategy"
,
"smallest"
);
SetParameterString
(
"strategy"
,
"smallest"
,
false
);
AddParameter
(
ParameterType_ListView
,
"field"
,
"Field Name"
);
SetParameterDescription
(
"field"
,
"Name of the field carrying the class name in the input vectors."
);
...
...
Modules/Applications/AppClassification/app/otbTrainImagesClassifier.cxx
View file @
d881d1bd
...
...
@@ -155,7 +155,7 @@ void DoInit() ITK_OVERRIDE
SetParameterDescription
(
"sample.vtr"
,
"Ratio between training and validation samples (0.0 = all training, 1.0 = "
"all validation) (default = 0.5)."
);
SetParameterFloat
(
"sample.vtr"
,
0.5
);
SetParameterFloat
(
"sample.vtr"
,
0.5
,
false
);
SetMaximumParameterFloatValue
(
"sample.vtr"
,
1.0
);
SetMinimumParameterFloatValue
(
"sample.vtr"
,
0.0
);
...
...
@@ -214,7 +214,7 @@ void DoUpdateParameters() ITK_OVERRIDE
if
(
HasValue
(
"io.vd"
)
)
{
std
::
vector
<
std
::
string
>
vectorFileList
=
GetParameterStringList
(
"io.vd"
);
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"vec"
,
vectorFileList
[
0
]);
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"vec"
,
vectorFileList
[
0
]
,
false
);
UpdateInternalParameters
(
"polystat"
);
}
}
...
...
@@ -289,21 +289,21 @@ void DoExecute() ITK_OVERRIDE
for
(
unsigned
int
i
=
0
;
i
<
nbInputs
;
i
++
)
{
GetInternalApplication
(
"polystat"
)
->
SetParameterInputImage
(
"in"
,
imageList
->
GetNthElement
(
i
));
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"vec"
,
vectorFileList
[
i
]);
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"out"
,
polyStatTrainOutputs
[
i
]);
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"vec"
,
vectorFileList
[
i
]
,
false
);
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"out"
,
polyStatTrainOutputs
[
i
]
,
false
);
ExecuteInternal
(
"polystat"
);
// analyse polygons given for validation
if
(
dedicatedValidation
)
{
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"vec"
,
validationVectorFileList
[
i
]);
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"out"
,
polyStatValidOutputs
[
i
]);
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"vec"
,
validationVectorFileList
[
i
]
,
false
);
GetInternalApplication
(
"polystat"
)
->
SetParameterString
(
"out"
,
polyStatValidOutputs
[
i
]
,
false
);
ExecuteInternal
(
"polystat"
);
}
}
// ---------------------------------------------------------------------------
// Compute sampling rates
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"mim"
,
"proportional"
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"mim"
,
"proportional"
,
false
);
double
vtr
=
GetParameterFloat
(
"sample.vtr"
);
long
mt
=
GetParameterInt
(
"sample.mt"
);
long
mv
=
GetParameterInt
(
"sample.mv"
);
...
...
@@ -348,44 +348,44 @@ void DoExecute() ITK_OVERRIDE
}
// Sampling rates for training
GetInternalApplication
(
"rates"
)
->
SetParameterStringList
(
"il"
,
polyStatTrainOutputs
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"out"
,
rateTrainOut
);
GetInternalApplication
(
"rates"
)
->
SetParameterStringList
(
"il"
,
polyStatTrainOutputs
,
false
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"out"
,
rateTrainOut
,
false
);
if
(
GetParameterInt
(
"sample.bm"
)
!=
0
)
{
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"smallest"
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"smallest"
,
false
);
}
else
{
if
(
fmt
>
-
1
)
{
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"constant"
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"constant"
,
false
);
GetInternalApplication
(
"rates"
)
->
SetParameterInt
(
"strategy.constant.nb"
,
fmt
);
}
else
{
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"all"
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"all"
,
false
);
}
}
ExecuteInternal
(
"rates"
);
// Sampling rates for validation
if
(
dedicatedValidation
)
{
GetInternalApplication
(
"rates"
)
->
SetParameterStringList
(
"il"
,
polyStatValidOutputs
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"out"
,
rateValidOut
);
GetInternalApplication
(
"rates"
)
->
SetParameterStringList
(
"il"
,
polyStatValidOutputs
,
false
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"out"
,
rateValidOut
,
false
);
if
(
GetParameterInt
(
"sample.bm"
)
!=
0
)
{
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"smallest"
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"smallest"
,
false
);
}
else
{
if
(
fmv
>
-
1
)
{
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"constant"
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"constant"
,
false
);
GetInternalApplication
(
"rates"
)
->
SetParameterInt
(
"strategy.constant.nb"
,
fmv
);
}
else
{
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"all"
);
GetInternalApplication
(
"rates"
)
->
SetParameterString
(
"strategy"
,
"all"
,
false
);
}
}
ExecuteInternal
(
"rates"
);
...
...
@@ -393,18 +393,18 @@ void DoExecute() ITK_OVERRIDE
// ---------------------------------------------------------------------------
// Select & extract samples
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"sampler"
,
"periodic"
);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"sampler"
,
"periodic"
,
false
);
GetInternalApplication
(
"select"
)
->
SetParameterInt
(
"sampler.periodic.jitter"
,
50
);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"strategy"
,
"byclass"
);
GetInternalApplication
(
"extraction"
)
->
SetParameterString
(
"outfield"
,
"prefix"
);
GetInternalApplication
(
"extraction"
)
->
SetParameterString
(
"outfield.prefix.name"
,
"value_"
);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"strategy"
,
"byclass"
,
false
);
GetInternalApplication
(
"extraction"
)
->
SetParameterString
(
"outfield"
,
"prefix"
,
false
);
GetInternalApplication
(
"extraction"
)
->
SetParameterString
(
"outfield.prefix.name"
,
"value_"
,
false
);
for
(
unsigned
int
i
=
0
;
i
<
nbInputs
;
i
++
)
{
GetInternalApplication
(
"select"
)
->
SetParameterInputImage
(
"in"
,
imageList
->
GetNthElement
(
i
));
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"vec"
,
vectorFileList
[
i
]);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"out"
,
sampleOutputs
[
i
]);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"instats"
,
polyStatTrainOutputs
[
i
]);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"strategy.byclass.in"
,
ratesTrainOutputs
[
i
]);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"vec"
,
vectorFileList
[
i
]
,
false
);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"out"
,
sampleOutputs
[
i
]
,
false
);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"instats"
,
polyStatTrainOutputs
[
i
]
,
false
);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"strategy.byclass.in"
,
ratesTrainOutputs
[
i
]
,
false
);
// select sample positions
ExecuteInternal
(
"select"
);
// extract sample descriptors
...
...
@@ -412,10 +412,10 @@ void DoExecute() ITK_OVERRIDE
if
(
dedicatedValidation
)
{
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"vec"
,
validationVectorFileList
[
i
]);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"out"
,
sampleValidOutputs
[
i
]);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"instats"
,
polyStatValidOutputs
[
i
]);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"strategy.byclass.in"
,
ratesValidOutputs
[
i
]);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"vec"
,
validationVectorFileList
[
i
]
,
false
);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"out"
,
sampleValidOutputs
[
i
]
,
false
);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"instats"
,
polyStatValidOutputs
[
i
]
,
false
);
GetInternalApplication
(
"select"
)
->
SetParameterString
(
"strategy.byclass.in"
,
ratesValidOutputs
[
i
]
,
false
);
// select sample positions
ExecuteInternal
(
"select"
);