diff --git a/Modules/Applications/AppClassification/test/CMakeLists.txt b/Modules/Applications/AppClassification/test/CMakeLists.txt index 05a834ae61eb8b106a2de005cc4f728566f4bc81..2bc24e7161831fe9a2bc0ee9426291ba5a8b0a22 100644 --- a/Modules/Applications/AppClassification/test/CMakeLists.txt +++ b/Modules/Applications/AppClassification/test/CMakeLists.txt @@ -606,10 +606,10 @@ otb_test_application(NAME apTvClKMeansImageClassification -maxit 10000 -ct 0.0000001 -rand 121212 - -out ${TEMP}/apTvClKMeansImageClassificationFilterOuptut.tif + -out ${TEMP}/apTvClKMeansImageClassificationFilterOutput.tif VALID --compare-image ${NOTOL} - ${OTBAPP_BASELINE}/apTvClKMeansImageClassificationFilterOuptut.tif - ${TEMP}/apTvClKMeansImageClassificationFilterOuptut.tif ) + ${OTBAPP_BASELINE}/apTvClKMeansImageClassificationFilterOutput.tif + ${TEMP}/apTvClKMeansImageClassificationFilterOutput.tif ) #----------- TrainImagesClassifier TESTS ---------------- diff --git a/Modules/Applications/AppMathParserX/app/otbBandMathX.cxx b/Modules/Applications/AppMathParserX/app/otbBandMathX.cxx index 5af54d5e51264e73001a4bf2c783f13ee8ba52d0..1aa1c471e300c643d8bec640e48b7949cea0b110 100644 --- a/Modules/Applications/AppMathParserX/app/otbBandMathX.cxx +++ b/Modules/Applications/AppMathParserX/app/otbBandMathX.cxx @@ -201,6 +201,8 @@ private: } catch(itk::ExceptionObject& err) { + //trick to prevent unreferenced local variable warning on MSVC + (void)err; // silent catch useContext = false; } diff --git a/Modules/Applications/AppVectorDataTranslation/app/otbRasterization.cxx b/Modules/Applications/AppVectorDataTranslation/app/otbRasterization.cxx index 0428b2dfda3fae1ea314236405af024b22a11afc..045b6b321d445a75680f607a277b1c61f645c9a3 100644 --- a/Modules/Applications/AppVectorDataTranslation/app/otbRasterization.cxx +++ b/Modules/Applications/AppVectorDataTranslation/app/otbRasterization.cxx @@ -73,7 +73,7 @@ private: AddParameter(ParameterType_InputVectorData, "in", "Input vector dataset"); SetParameterDescription( "in", "The input vector dataset to be rasterized" ); - AddParameter(ParameterType_OutputImage, "out", "Ouptut image"); + AddParameter(ParameterType_OutputImage, "out", "Output image"); SetParameterDescription( "out", "An output image containing the rasterized vector dataset" ); AddParameter(ParameterType_InputImage, "im", "Input reference image"); diff --git a/Modules/Detection/RoadExtraction/include/otbNeighborhoodScalarProductFilter.txx b/Modules/Detection/RoadExtraction/include/otbNeighborhoodScalarProductFilter.txx index 727fd0240e2b31c42847e1913767395692405296..e1d1c6afe9b6dbe269f63cb3731840dfe40fea39 100644 --- a/Modules/Detection/RoadExtraction/include/otbNeighborhoodScalarProductFilter.txx +++ b/Modules/Detection/RoadExtraction/include/otbNeighborhoodScalarProductFilter.txx @@ -154,7 +154,7 @@ NeighborhoodScalarProductFilter<TInputImage, TOutputModulus, TOutputDirection> angle -= CONST_PI; } - // Set the ouptut values + // Set the output values outputIt.Set(scalarMaxValue); outputDirIt.Set(angle); ++neighInputIt; diff --git a/Modules/Filtering/Convolution/include/otbOverlapSaveConvolutionImageFilter.txx b/Modules/Filtering/Convolution/include/otbOverlapSaveConvolutionImageFilter.txx index 8bf96a5035db4f9801e3d7d34606f7956de06cff..b19a1919f173d843771a8dbef9de7ef6cf7035e0 100644 --- a/Modules/Filtering/Convolution/include/otbOverlapSaveConvolutionImageFilter.txx +++ b/Modules/Filtering/Convolution/include/otbOverlapSaveConvolutionImageFilter.txx @@ -265,7 +265,7 @@ OverlapSaveConvolutionImageFilter<TInputImage, TOutputImage, TBoundaryCondition> norm = 1.0; } - // Fill the ouptut image + // Fill the output image outputIt.GoToBegin(); while (!outputIt.IsAtEnd()) { diff --git a/Modules/Filtering/Projection/include/otbGenericRSResampleImageFilter.h b/Modules/Filtering/Projection/include/otbGenericRSResampleImageFilter.h index 9aa1e9e57e30e455a9a1479711fa91fb43b8c57e..e755f1f3503847f40d81fcb6039b97e513ccc83c 100644 --- a/Modules/Filtering/Projection/include/otbGenericRSResampleImageFilter.h +++ b/Modules/Filtering/Projection/include/otbGenericRSResampleImageFilter.h @@ -198,7 +198,7 @@ public: void SetOutputParametersFromImage(const ImageBaseType * image); /** Useful to set output parmaters form an existing image with type - * different from input or ouptut image + * different from input or output image */ template <class TImageType> void SetOutputParametersFromImage(const TImageType * image); diff --git a/Modules/Filtering/Projection/test/otbGenericRSTransformGenericTest.cxx b/Modules/Filtering/Projection/test/otbGenericRSTransformGenericTest.cxx index bfd574776151b371a20b2231af6da383437749c7..1af2a5cf296e788c8ed1711c0ef8f957d4d04145 100644 --- a/Modules/Filtering/Projection/test/otbGenericRSTransformGenericTest.cxx +++ b/Modules/Filtering/Projection/test/otbGenericRSTransformGenericTest.cxx @@ -34,7 +34,7 @@ int otbGenericRSTransformGenericTest(int argc, char * argv[]) { if(argc<14) { - std::cerr<<"Usage: "<<argv[0]<<"input_point_x input_point_y output_point_x output_point_y input_projection_type[IMAGE, WKT, EPSG] input_projection_source output_projection_type[IMAGE, WKT, EPSG] output_projection_source input_distance[PHYSICAL, GEO] input_threshold output_distance[PHYSICAL, GEO] ouptut_threshold elevation_flag[NOELEV, AVERAGE, DEM] elevation_source"; + std::cerr<<"Usage: "<<argv[0]<<"input_point_x input_point_y output_point_x output_point_y input_projection_type[IMAGE, WKT, EPSG] input_projection_source output_projection_type[IMAGE, WKT, EPSG] output_projection_source input_distance[PHYSICAL, GEO] input_threshold output_distance[PHYSICAL, GEO] output_threshold elevation_flag[NOELEV, AVERAGE, DEM] elevation_source"; return EXIT_FAILURE; } diff --git a/Modules/IO/IOGDAL/test/otbGDALOverviewsBuilder.cxx b/Modules/IO/IOGDAL/test/otbGDALOverviewsBuilder.cxx index 7eda724510b56bc868dc354317ffcdc6fd08e6ff..a33b294eb3064e39b02bd06657d51e398e166871 100644 --- a/Modules/IO/IOGDAL/test/otbGDALOverviewsBuilder.cxx +++ b/Modules/IO/IOGDAL/test/otbGDALOverviewsBuilder.cxx @@ -54,7 +54,14 @@ int otbGDALOverviewsBuilder(int itkNotUsed(argc), char* argv[]) otb::GDALImageIO::Pointer io = otb::GDALImageIO::New(); io->SetFileName(inputFilename); - io->CanReadFile(inputFilename); + bool canRead = io->CanReadFile(inputFilename); + + if(!canRead) + { + std::cerr<<"Failed to read file "<< inputFilename <<" with GdalImageIO."<<std::endl; + return EXIT_FAILURE; + } + io->ReadImageInformation(); //std::cout << io->GetOverviewsCount() << std::endl; diff --git a/Modules/Learning/LearningBase/test/CMakeLists.txt b/Modules/Learning/LearningBase/test/CMakeLists.txt index 598c6e980656924d4be9b4e268de5240eedd30a5..a069af08ffcfbbc3c9c1596595b95c011a1bde7e 100644 --- a/Modules/Learning/LearningBase/test/CMakeLists.txt +++ b/Modules/Learning/LearningBase/test/CMakeLists.txt @@ -28,11 +28,11 @@ otb_add_test(NAME leTvDecisionTreeWithRealValues COMMAND otbLearningBaseTestDriv otb_add_test(NAME leTvKMeansImageClassificationFilter COMMAND otbLearningBaseTestDriver --compare-image ${NOTOL} - ${BASELINE}/leKMeansImageClassificationFilterOuptut.hdr - ${TEMP}/leKMeansImageClassificationFilterOuptut.hdr + ${BASELINE}/leKMeansImageClassificationFilterOutput.hdr + ${TEMP}/leKMeansImageClassificationFilterOutput.hdr otbKMeansImageClassificationFilter ${INPUTDATA}/poupees_sub.png - ${TEMP}/leKMeansImageClassificationFilterOuptut.hdr + ${TEMP}/leKMeansImageClassificationFilterOutput.hdr 2 0 0 0 0 255 255 255 255 diff --git a/Modules/Learning/SOM/test/CMakeLists.txt b/Modules/Learning/SOM/test/CMakeLists.txt index 50b0cea9685bb72c226e2eba7606c6572ed9ab6b..f0be8a6188bcc4669b85465e8c397803a35ec5ac 100644 --- a/Modules/Learning/SOM/test/CMakeLists.txt +++ b/Modules/Learning/SOM/test/CMakeLists.txt @@ -41,11 +41,11 @@ otb_add_test(NAME leTvSOM COMMAND otbSOMTestDriver otb_add_test(NAME leTvSOMImageClassificationFilter COMMAND otbSOMTestDriver --compare-image ${NOTOL} ${BASELINE}/leSOMPoupeesClassified.hdr - ${TEMP}/leSOMImageClassificationFilterOuptut.hdr + ${TEMP}/leSOMImageClassificationFilterOutput.hdr otbSOMImageClassificationFilter ${INPUTDATA}/poupees_sub.png ${BASELINE}/leSOMPoupeesSubOutputMap1.hdr - ${TEMP}/leSOMImageClassificationFilterOuptut.hdr + ${TEMP}/leSOMImageClassificationFilterOutput.hdr ) otb_add_test(NAME leTvSOMActivationBuilder COMMAND otbSOMTestDriver @@ -112,11 +112,11 @@ otb_add_test(NAME leTvSOMClassifier COMMAND otbSOMTestDriver otb_add_test(NAME leTvSOMbasedImageFilter COMMAND otbSOMTestDriver --compare-image ${NOTOL} - ${BASELINE}/leSOMbasedImageFilterOuptut.hdr - ${TEMP}/leSOMbasedImageFilterOuptut.hdr + ${BASELINE}/leSOMbasedImageFilterOutput.hdr + ${TEMP}/leSOMbasedImageFilterOutput.hdr otbSOMbasedImageFilterTest ${INPUTDATA}/poupees_sub.png ${BASELINE}/leSOMPoupeesSubOutputMap1.hdr - ${TEMP}/leSOMbasedImageFilterOuptut.hdr + ${TEMP}/leSOMbasedImageFilterOutput.hdr ) diff --git a/Modules/Learning/Sampling/include/otbPolygonClassStatisticsAccumulator.h b/Modules/Learning/Sampling/include/otbPolygonClassStatisticsAccumulator.h index 4807effe5c92ee01d3c9c23abc24bfcb7076d41f..0a1e1c2d501812e3a8521c8e5455d905aea72f6e 100644 --- a/Modules/Learning/Sampling/include/otbPolygonClassStatisticsAccumulator.h +++ b/Modules/Learning/Sampling/include/otbPolygonClassStatisticsAccumulator.h @@ -62,9 +62,10 @@ public: protected: /** Constructor */ - PolygonClassStatisticsAccumulator() {} + PolygonClassStatisticsAccumulator(); + /** Destructor */ - virtual ~PolygonClassStatisticsAccumulator() {} + virtual ~PolygonClassStatisticsAccumulator(); private: //Number of pixels in all the polygons diff --git a/Modules/Learning/Sampling/src/otbPolygonClassStatisticsAccumulator.cxx b/Modules/Learning/Sampling/src/otbPolygonClassStatisticsAccumulator.cxx index 28002be97a536a753b502c38d7794a963aadf5c3..0652e9b3a95f768381a918e114eec22928b63b28 100644 --- a/Modules/Learning/Sampling/src/otbPolygonClassStatisticsAccumulator.cxx +++ b/Modules/Learning/Sampling/src/otbPolygonClassStatisticsAccumulator.cxx @@ -21,6 +21,15 @@ namespace otb { +PolygonClassStatisticsAccumulator::PolygonClassStatisticsAccumulator() : + m_NbPixelsGlobal(0UL), + m_ElmtsInClass(), + m_Polygon() +{} + +PolygonClassStatisticsAccumulator::~PolygonClassStatisticsAccumulator() +{} + void PolygonClassStatisticsAccumulator ::Reset() diff --git a/Modules/OBIA/RCC8/include/otbImageMultiSegmentationToRCC8GraphFilter.txx b/Modules/OBIA/RCC8/include/otbImageMultiSegmentationToRCC8GraphFilter.txx index fd25930bc7b48d87af48f9913e7db57eeeb563c8..605a8ace1a1b40067dd43cf0d6794cec8bf92217 100644 --- a/Modules/OBIA/RCC8/include/otbImageMultiSegmentationToRCC8GraphFilter.txx +++ b/Modules/OBIA/RCC8/include/otbImageMultiSegmentationToRCC8GraphFilter.txx @@ -133,7 +133,7 @@ ImageMultiSegmentationToRCC8GraphFilter<TInputImage, TOutputGraph> // Input image list pointer InputImageListPointerType segList = this->GetInput(); - // Ouptut graph pointer + // Output graph pointer OutputGraphPointerType graph = this->GetOutput(); // invert value vector diff --git a/Modules/OBIA/RCC8/include/otbPolygonListToRCC8GraphFilter.txx b/Modules/OBIA/RCC8/include/otbPolygonListToRCC8GraphFilter.txx index bc110e0a0d379e10e4a3da0a11a5508f75e89955..4bcb28a02a93cf180d5c441b03b65ed356ab5f9b 100644 --- a/Modules/OBIA/RCC8/include/otbPolygonListToRCC8GraphFilter.txx +++ b/Modules/OBIA/RCC8/include/otbPolygonListToRCC8GraphFilter.txx @@ -179,7 +179,7 @@ void PolygonListToRCC8GraphFilter<TPolygonList, TOutputGraph> ::BeforeThreadedGenerateData() { - // Ouptut graph pointer + // Output graph pointer OutputGraphPointerType graph = this->GetOutput(); PolygonListConstPointerType inputPtr = this->GetInput(); @@ -227,7 +227,7 @@ PolygonListToRCC8GraphFilter<TPolygonList, TOutputGraph> { //std::cout<<"Starting thread "<<threadId <<" to work on range ["<<startIndex<<", "<<stopIndex<<"]"<<std::endl; - // Ouptut graph pointer + // Output graph pointer OutputGraphPointerType graph = this->GetOutput(); PolygonListConstPointerType inputPtr = this->GetInput(); diff --git a/Modules/OBIA/RCC8/test/CMakeLists.txt b/Modules/OBIA/RCC8/test/CMakeLists.txt index 5454c85c35cc1540abee4e2bc2bdcce663d1f174..4b3e5bfafb833e9f2a3470299e41077ee573a3fa 100644 --- a/Modules/OBIA/RCC8/test/CMakeLists.txt +++ b/Modules/OBIA/RCC8/test/CMakeLists.txt @@ -53,10 +53,10 @@ otb_add_test(NAME srTvRCC8GraphIOEndToEnd COMMAND otbRCC8TestDriver otb_add_test(NAME srTvPolygonListToRCC8GraphFilter COMMAND otbRCC8TestDriver --compare-ascii ${NOTOL} - ${BASELINE_FILES}/srTvPolygonListToRCC8GraphFilterOuptut.dot - ${TEMP}/srTvPolygonListToRCC8GraphFilterOuptut.dot + ${BASELINE_FILES}/srTvPolygonListToRCC8GraphFilterOutput.dot + ${TEMP}/srTvPolygonListToRCC8GraphFilterOutput.dot otbPolygonListToRCC8GraphFilter - ${TEMP}/srTvPolygonListToRCC8GraphFilterOuptut.dot) + ${TEMP}/srTvPolygonListToRCC8GraphFilterOutput.dot) otb_add_test(NAME srTvRCC8VertexBase COMMAND otbRCC8TestDriver otbRCC8VertexBase diff --git a/Modules/Registration/DisparityMap/include/otbDisparityMapEstimationMethod.h b/Modules/Registration/DisparityMap/include/otbDisparityMapEstimationMethod.h index ded18110e7aca6ee33b543c9340179c4f47c7e64..99c547e07e73759eac80f9c0fd9e02509f2fc440 100644 --- a/Modules/Registration/DisparityMap/include/otbDisparityMapEstimationMethod.h +++ b/Modules/Registration/DisparityMap/include/otbDisparityMapEstimationMethod.h @@ -33,7 +33,7 @@ namespace otb * * It uses the ITK registration framework locally for each point and thus * provides the flexibility of this framework. The parameters of each transform - * are stored in the ouptut point set associated data. Optimizer, metric, + * are stored in the output point set associated data. Optimizer, metric, * interpolator and transform fixed parameters have to be set by the user. * * This filters returns the pointset enriched with a set of value as PointData, in order of apparition : @@ -77,7 +77,7 @@ public: typedef typename MovingImageType::Pointer MovingImagePointerType; typedef typename MovingImageType::PixelType MovingPixelType; - /** Typedef for the input and ouptut point set */ + /** Typedef for the input and output point set */ typedef TPointSet PointSetType; typedef typename PointSetType::Pointer PointSetPointerType; diff --git a/Modules/Registration/Stereo/include/otbStereoSensorModelToElevationMapFilter.txx b/Modules/Registration/Stereo/include/otbStereoSensorModelToElevationMapFilter.txx index 40a3289c2b76c0215993cdd8282a168017127797..253a73496a2097d125086d044f10b91350df0f3a 100644 --- a/Modules/Registration/Stereo/include/otbStereoSensorModelToElevationMapFilter.txx +++ b/Modules/Registration/Stereo/include/otbStereoSensorModelToElevationMapFilter.txx @@ -284,7 +284,7 @@ StereoSensorModelToElevationFilter<TInputImage, TOutputHeight> rsTransform->SetInputKeywordList(outputPtr->GetImageKeywordlist()); rsTransform->InstanciateTransform(); - // Fill ouptut + // Fill output itk::ImageRegionIteratorWithIndex<OutputImageType> outputIt(outputPtr, outputPtr->GetBufferedRegion()); for(outputIt.GoToBegin(); !outputIt.IsAtEnd(); ++outputIt) diff --git a/Modules/ThirdParty/6S/src/main.c b/Modules/ThirdParty/6S/src/main.c index 6475b72f7d2eaca32e7206d43d9b74c69829ed66..7c6bf6ecd1d9193dad38689e5c67f95b2259be15 100644 --- a/Modules/ThirdParty/6S/src/main.c +++ b/Modules/ThirdParty/6S/src/main.c @@ -4877,7 +4877,7 @@ L34: */ /* c */ -/* irapp that input parameter allows to activate atmospheric c +/* irapp that input parameter allows activating atmospheric c */ /* correction mode c */ diff --git a/Modules/ThirdParty/6S/src/main.f b/Modules/ThirdParty/6S/src/main.f index 718509233795011c892ae7848816d8cdbe5b39ee..5a60d980f83294fdc43588505a775d2ee04baa4d 100644 --- a/Modules/ThirdParty/6S/src/main.f +++ b/Modules/ThirdParty/6S/src/main.f @@ -2163,7 +2163,7 @@ c**********************************************************************c c**********************************************************************c c c -c irapp that input parameter allows to activate atmospheric c +c irapp that input parameter allows activating atmospheric c c correction mode c c c c -1: No atmospheric Correction is performed c diff --git a/Modules/ThirdParty/6S/src/otb_main6S_function.c b/Modules/ThirdParty/6S/src/otb_main6S_function.c index e59d02e4af82e555fb73fe080a094bc3ca49cd98..af18dffe850da0e4c6c8a7642a467e5b9ee636b5 100644 --- a/Modules/ThirdParty/6S/src/otb_main6S_function.c +++ b/Modules/ThirdParty/6S/src/otb_main6S_function.c @@ -3617,7 +3617,7 @@ rguments*/ */ /* c */ -/* irapp that input parameter allows to activate atmospheric c +/* irapp that input parameter allows activating atmospheric c */ /* correction mode c */ diff --git a/Modules/ThirdParty/6S/src/otb_main6S_function.f b/Modules/ThirdParty/6S/src/otb_main6S_function.f index 5bad2a4178d78d60b477bfe56ddbdb92504e83cc..ce73bba98953ba4eec04d481cdf7c3e86d227af0 100644 --- a/Modules/ThirdParty/6S/src/otb_main6S_function.f +++ b/Modules/ThirdParty/6S/src/otb_main6S_function.f @@ -2282,7 +2282,7 @@ C_otb_adaptation End: inhomo=0 idirec=0 igroun=0 ro=0 c**********************************************************************c c c -c irapp that input parameter allows to activate atmospheric c +c irapp that input parameter allows activating atmospheric c c correction mode c c c c -1: No atmospheric Correction is performed c diff --git a/Modules/Visualization/Ice/include/otbGlView.h b/Modules/Visualization/Ice/include/otbGlView.h index 4d1c87f3635e8fde2c5a6422291a4310919e323f..4538835ec7a0d238059402307c2560db438154eb 100644 --- a/Modules/Visualization/Ice/include/otbGlView.h +++ b/Modules/Visualization/Ice/include/otbGlView.h @@ -698,11 +698,13 @@ GlView // as 1:1 reference). // // MANTIS-1202 + // + // MANTIS-1203: restore sign of axis when applying isotrop spacing. // { if( vcl_abs( spacing[ 0 ] ) < vcl_abs( spacing[ 1 ] ) ) - spacing[ 1 ] = spacing[ 0 ]; + spacing[ 1 ] = ( spacing[ 1 ]<0.0 ? -1 : +1 ) * vcl_abs( spacing[ 0 ] ); else - spacing[ 0 ] = spacing[ 1 ]; + spacing[ 0 ] = ( spacing[ 0 ]<0.0 ? -1 : +1 ) * vcl_abs( spacing[ 1 ] ); // } // MANTIS-1202 diff --git a/Modules/Visualization/Ice/src/otbFragmentShaderRegistry.cxx b/Modules/Visualization/Ice/src/otbFragmentShaderRegistry.cxx index fb17d100af414e098174c4720abc129c8b415387..6cc5b293ccca85eae27c9a875b90a63cc92d6336 100644 --- a/Modules/Visualization/Ice/src/otbFragmentShaderRegistry.cxx +++ b/Modules/Visualization/Ice/src/otbFragmentShaderRegistry.cxx @@ -71,6 +71,8 @@ void FragmentShaderRegistry::RegisterShader(const std::string& name, const std:: char * logs = new char[length]; glGetShaderInfoLog(shader,1000,&length,logs); + std::string slogs = logs; + delete [] logs; // For safety! logs = NULL; @@ -83,7 +85,7 @@ void FragmentShaderRegistry::RegisterShader(const std::string& name, const std:: glDeleteProgram( program ); program = 0; - itkExceptionMacro(<<"Shader "<<name<<" with sources "<<source<<" failed to compile: "<<logs); + itkExceptionMacro(<<"Shader "<<name<<" with sources "<<source<<" failed to compile: "<<slogs); } glAttachShader(program,shader); diff --git a/Modules/Visualization/Ice/src/otbGlImageActor.cxx b/Modules/Visualization/Ice/src/otbGlImageActor.cxx index 7f4097ead63a737a58fdc797551dd88c34c5a03b..efc798505119e415c674aad1548d005f40516973 100644 --- a/Modules/Visualization/Ice/src/otbGlImageActor.cxx +++ b/Modules/Visualization/Ice/src/otbGlImageActor.cxx @@ -348,7 +348,6 @@ void GlImageActor::Render() mins.Fill(0); maxs.Fill(255); - bool useNoData(false); double noData(0.); assert( !m_ImageSettings.IsNull() ); @@ -367,12 +366,14 @@ void GlImageActor::Render() gamma = gamma == 0.0 - ? std::numeric_limits< double >::max() - : 1.0 / gamma; + ? std::numeric_limits< double >::max() + : 1.0 / gamma; // } - + + if( m_ImageSettings->GetUseNoData() ) - noData = m_ImageSettings->GetNoData(); + noData = m_ImageSettings->GetNoData(); + omins.Fill( 0 ); omaxs.Fill( 255 ); @@ -405,7 +406,7 @@ void GlImageActor::Render() ++idx; buffer[idx] = 255; - if(useNoData && (inIt.Get()[0] == noData ||inIt.Get()[1] == noData ||inIt.Get()[2] == noData)) + if(m_ImageSettings->GetUseNoData() && (inIt.Get()[0] == noData ||inIt.Get()[1] == noData ||inIt.Get()[2] == noData)) { buffer[idx] = 0; } diff --git a/Modules/Visualization/IceViewer/src/otbIce.cxx b/Modules/Visualization/IceViewer/src/otbIce.cxx index 8d4f808e810ad4894c6888c79a8c68ef393a05d0..6d3ec67a9470c081c028deff77f377dfeadc9ce8 100644 --- a/Modules/Visualization/IceViewer/src/otbIce.cxx +++ b/Modules/Visualization/IceViewer/src/otbIce.cxx @@ -83,6 +83,11 @@ int main(int argc, char * argv[]) std::cerr << "Could not open file " << argv[i] << " as an image or a vector, skipping." << std::endl; } } + catch(std::runtime_error & err) + { + std::cerr<<"Runtime error: "<< err.what() <<std::endl; + return EXIT_FAILURE; + } } std::cout<<"Press F1 for help"<<std::endl; diff --git a/Modules/Visualization/IceViewer/src/otbIceViewer.cxx b/Modules/Visualization/IceViewer/src/otbIceViewer.cxx index b6fe632b2ee6c9071b179ffb474a6c7c91162027..3782d2705e19383295bb573598d1a92228f4b7f9 100644 --- a/Modules/Visualization/IceViewer/src/otbIceViewer.cxx +++ b/Modules/Visualization/IceViewer/src/otbIceViewer.cxx @@ -1642,7 +1642,7 @@ void IceViewer::CopyActorStyle(otb::GlActor::Pointer srcActor, otb::GlActor::Poi otb::GlImageActor::Pointer srcImgActor = dynamic_cast<otb::GlImageActor*>(srcActor.GetPointer()); otb::GlImageActor::Pointer dstImgActor = dynamic_cast<otb::GlImageActor*>(dstActor.GetPointer()); - if(srcActor.IsNotNull() && srcActor->GetVisible() && dstImgActor.IsNotNull() && dstActor->GetVisible()) + if(srcImgActor.IsNotNull() && srcActor->GetVisible() && dstImgActor.IsNotNull() && dstActor->GetVisible()) { ImageSettings::Pointer srcImageSettings( srcImgActor->GetImageSettings() ); assert( !srcImageSettings.IsNull() ); diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index a8edf18c80ea26155bffaa646b9ef45d9e0275ec..d3b8167f5f86235982ccfb0254ae40d25f45e569 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -1,36 +1,90 @@ -OTB-v.5.4.0 - Changes since version 5.2.1 (2016/03/30) +OTB-v.5.4.0 - Changes since version 5.2.1 (2016/05/04) ------------------------------------------ -* Bugs fixed: - * 0001137: GDALImageIO does not support SENTINEL2 sub-datasets - * 0001142: Fails to build with ITK 4.9.0 (itksys/FundamentalType.h: No such file or directory) - * 0001151: GDAL_SB_EXTRA_OPTIONS can not take multiple options - * 0001150: Can't "easily" deactivate LIBKML from OTB Superbuild - * BUG: Report the correct number of components per pixel in ImportGeoInformationImageFilter - * 0001153: Superimpose app in PHR mode reports wrong origin/spacing/keywordlist - * BUG: Enabling KMeans with more than 255 clusters - * 0001154: Exception raised when opening LUM or LUM+HDR - * 0001157: monteverdi crashes when trying to move the view without any images - * 0001143: Patch for various spelling errors - -* RFC: - * Request for Changes-20: Take screenshot - * Request for Changes-21: Support CDS import - * Request for Changes-22: Add Masked Iterator Decorator - * Request for Changes-23: Ice as an Orfeo ToolBox module - * Request for Changes-25: Disable Ice shaders if OpenGL version is lower than 2.0 - * Request for Changes-27: Merge Software Guide into OTB - * Request for Changes-28: Remove random contributor list functionality - * Request for Changes-29: Sampling Framework - Polygon analysis - * Request for Changes-30: Faster resampling filter - * Request for Changes-31: Modified behavior of reading/writing of TIFF RPC tags - * Request for Changes-32: Allow a module to be built outside the OTB source tree - * Request for Changes-33: Green dashboard cleaning part 1 - * Request for Changes-34: Enhancement of SARDecompositions : Barnes, Huynen, Pauli decompositions - * Request for Changes-24: MVD/OTB GDAL overviews multi-resolution pyramid configuration - +* Core + * Ice is now a regular OTB module (RFC 23) + * Masked iterator decorator (RFC 22) + * Filter to analyse polygons for available samples (part of new sampling framework, RFC 29) + * Faster resampling filter for rigid scaling and translation operations (RFC 30) + * Modified behavior of reading/writing of TIFF RPC tags (RFC 31) + * Allow a module to be built outside the OTB source tree (RFC 32) + * Dashboard cleaning, part 1 (RFC 33) + * Enhancement of SARDecompositions : Barnes, Huynen, Pauli decompositions (RFC 34) + +* Monteverdi + * Take screenshot of current display (RFC 20) + * Allow subdatasets import (RFC 21) + * Disable GLSL shader if OpenGL version is lower than 2.0 (RFC 25) + * Allow generation of gdal overviews when importing images (RFC 24) + +* Documentation: + * Merge software guide into main OTB repository (RFC 17) + * Remove random contributor list generation (RFC 28) + * SuperBuild: * Add Monteverdi and its dependencies (glfw, GLEW, glut) +* Bug fixed + + * Monteverdi2 + * 0001179: Using the Upper Bound mode for resolution lookup in preferences result in wrong resolution used + * 0001197: Clicking on minimap to navigate result in monteverdi crashing + * 0001178: Zoom to full resolution does not zoom to 1 image pixel = 1 screen pixel for georeferenced data + * 0001203: Clicking on 1:1 button several time result in strange cycling behaviour + * 0001205: Gamma slider effect inverted between full and quicklook view + * 0001202: Wrong aspect ratio at loading + * 0001148: OTB-applications not loaded + * 0001196: OTB-application Quit button closes widget but not window when using Mapla + * 0001147: With Monteverdi develop branch of today : opening large images with overview file leads to eating all available memory + * 0001138: Numeric value editing hell + * 0001136: Unable to open sensor products (with RPC) in Monteverdi + * 0001159: TrainImageClassifier sample.vtr parameter is sometime ignored + * 0001173: KDE grabs drag event before monteverdi, making image navigation impossible + * 0001144: Unable to keep unconstrained dynamic mode + * 0001156: Linux standalone package doesn't work on Fedora 22 + * 0001157: monteverdi crashes when trying to move the view without any images + * 0001153: Superimpose app in PHR mode reports wrong origin/spacing/keywordlist + * 0001154: Exception raised when opening LUM or LUM+HDR + * 0001152: maximum number of class in KMean application limited to 255 + * 0001140: Lost pixel position informations in layer stack + + * OTB-Packaging + * 0001141: muparser 2.2.4 is missing in superbuild archive 5.2.1 + * 0001171: Crash in OGR : libproj-0.dll not found + * 0001150: Can't "easily" deactivate LIBKML from OTB Superbuild + + * Orfeo Toolbox (OTB) + * 0001206: Cannot maximize monteverdi window in standalone package + * 0001177: SuperBuild fails at MVD configure step (release-5.4 branch) + * 0001194: freeglut required x11 extension on osx + * 0001188: deactivate openldap, openssl, libssh2 when building superbuild curl. + * 0001190: use same compiler for all builds in the superbuild + * 0001184: superbuild libtiff is using libjbig from system without warning + * 0001185: minimal build of GDAL in superbuild + * 0001187: superbuild cannot find Qt4 during OTB configure on osx + * 0001193: deactivate finding osx framework for library + * 0001163: Windows MinGW packages do not contain the libsvm classifier + * 0001164: Monteverdi crashes when opening a tif without projection information + * 0001167: GUI applications visual response after clicking the "Execute" button is slow and confusing + * 0001158: Missing field in RefineSensorModel statistics file + * 0001166: otbgui_MeanShiftSmoothing problem with Mode Search parameter + * 0001169: add libsvm package to mxe and enable OTB_USE_LIBSVM + * 0001143: Patch for various spelling errors + * 0001151: GDAL_SB_EXTRA_OPTIONS can not take multiple options + * 0001142: Fails to build with ITK 4.9.0 (itksys/FundamentalType.h: No such file or directory) + + * OTB-lib + * 0001145: Ice doesn't clamp rendered values to the specified minimum of the range + * 0001139: OGRLayerStreamStitchingFilter CommitTransaction fail is some cases + * 0001137: GDALImageIO does not support SENTINEL2 sub-datasets + + * OTB-applications + * 0001149: ReadImageInfo application crash with Sentinel1 (SLC SM product) + * 0001162: Unable to perform Sentinel-1 SAR calibration on extract + * 0001183: Unable to edit image path in Qt GUI wrapper with complex image + * 0001182: Crash when editing InputImageParameter Qt widget + * 0001161: Inconsistency of SAR calibration applications denomination + + OTB-v.5.2.1 - Changes since version 5.2.0 (2016/01/19) ------------------------------------------ * Bugs fixed: diff --git a/SuperBuild/Packaging/PackageHelper.cmake b/SuperBuild/Packaging/PackageHelper.cmake index 7b643955f7092eacda5c6186a2f127d7c489d650..438815ae911fad1875e05345aa49652f63321cf4 100644 --- a/SuperBuild/Packaging/PackageHelper.cmake +++ b/SuperBuild/Packaging/PackageHelper.cmake @@ -611,7 +611,6 @@ function(func_process_deps infile) message(STATUS "Processing ${SEARCHDIR}/${infile}") is_file_executable("${SEARCHDIR}/${infile}" is_executable) if(is_executable) - #install(PROGRAMS "${SEARCHDIR}/${infile}" DESTINATION ${PKG_STAGE_DIR}/bin) file(APPEND ${CMAKE_BINARY_DIR}/install_to_${DEST_BIN_DIR} "${SEARCHDIR}/${infile}\n") else(is_executable) get_filename_component(bn_we ${infile} NAME_WE)