diff --git a/Testing/Code/IO/CMakeLists.txt b/Testing/Code/IO/CMakeLists.txt index 23b89030039992f1808db694df17a7586f0f2cd2..dda43aef1a4ffa075edaa88d602236b91742a7d4 100755 --- a/Testing/Code/IO/CMakeLists.txt +++ b/Testing/Code/IO/CMakeLists.txt @@ -1886,6 +1886,14 @@ ADD_TEST(ioTvPointSetFileReader ${IO_TESTS17} otbPointSetFileReader ${INPUTDATA}/srs.las ${TEMP}/ioPointSetFileReader.txt) + +ADD_TEST(ioTvPointSetFileReader2 ${IO_TESTS17} + --compare-ascii ${EPSILON_9} ${BASELINE_FILES}/ioPointSetFileReader2.txt + ${TEMP}/ioPointSetFileReader2.txt + otbPointSetFileReader2 + ${INPUTDATA}/srs.las + ${TEMP}/ioPointSetFileReader2.txt) + ENDIF(OTB_USE_LIBLAS) @@ -2076,6 +2084,7 @@ otbImageSeriesFileReader.cxx SET(BasicIO_SRCS17 otbPointSetFileReaderNew.cxx otbPointSetFileReader.cxx +otbPointSetFileReader2.cxx otbImageMetadataInterfaceNew.cxx otbImageMetadataInterfaceTest.cxx otbImageMetadataInterfaceTest2.cxx diff --git a/Testing/Code/IO/otbIOTests17.cxx b/Testing/Code/IO/otbIOTests17.cxx index 5e340857b17b8752a325b5c8948b7b2e2e3c7c10..58cdbe81e4b75cb980bb2b57fafe5647533de87d 100644 --- a/Testing/Code/IO/otbIOTests17.cxx +++ b/Testing/Code/IO/otbIOTests17.cxx @@ -30,6 +30,7 @@ void RegisterTests() { REGISTER_TEST(otbPointSetFileReaderNew); REGISTER_TEST(otbPointSetFileReader); +REGISTER_TEST(otbPointSetFileReader2); REGISTER_TEST(otbImageMetadataInterfaceNew); REGISTER_TEST(otbImageMetadataInterfaceTest); REGISTER_TEST(otbImageMetadataInterfaceTest2); diff --git a/Testing/Code/IO/otbPointSetFileReader2.cxx b/Testing/Code/IO/otbPointSetFileReader2.cxx new file mode 100644 index 0000000000000000000000000000000000000000..ae952b218aea339f9ceabe1bd09347773bb7a453 --- /dev/null +++ b/Testing/Code/IO/otbPointSetFileReader2.cxx @@ -0,0 +1,53 @@ +/*========================================================================= + + Program: ORFEO Toolbox + Language: C++ + Date: $Date$ + Version: $Revision$ + + + Copyright (c) Centre National d'Etudes Spatiales. All rights reserved. + See OTBCopyright.txt for details. + + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the above copyright notices for more information. + +=========================================================================*/ + +#include "otbPointSetFileReader.h" +#include "itkPointSet.h" +#include "itkNumericTraits.h" +#include <fstream> + +int otbPointSetFileReader2(int argc, char * argv[]) +{ + typedef itk::PointSet <double, 3> PointSetType; + typedef otb::PointSetFileReader<PointSetType> PointSetFileReaderType; + PointSetFileReaderType::Pointer reader = PointSetFileReaderType::New(); + + reader->SetFileName(argv[1]); + reader->Update(); + + PointSetType::Pointer data = reader->GetOutput(); + + + std::ofstream fout (argv[2]); + unsigned long nPoints = data->GetNumberOfPoints(); + fout << std::setprecision(15) << "Number of points: " << nPoints << std::endl; + + for (unsigned long i=0; i < nPoints; ++i) + { + PointSetType::PointType point; + data->GetPoint(i,&point); + fout << point << " : "; + PointSetType::PixelType value(itk::NumericTraits<PointSetType::PixelType>::Zero); + data->GetPointData(i,&value); + fout << value << std::endl; + } + fout << std::endl; + fout.close(); + return EXIT_SUCCESS; +} +