diff --git a/Documentation/Cookbook/rst/Installation.rst b/Documentation/Cookbook/rst/Installation.rst index e747ac0a01ed6ba10cfe72ad06d97e6b66d06db1..973783f63321df3fded8e591a0dec9846a751304 100644 --- a/Documentation/Cookbook/rst/Installation.rst +++ b/Documentation/Cookbook/rst/Installation.rst @@ -24,7 +24,7 @@ Windows .. include:: Installation_Windows.txt Linux x86_64 ------------ +------------ .. include:: Installation_Linux.txt @@ -33,7 +33,7 @@ MacOS X ------- .. include:: Installation_Macx.txt - + Other packages -------------- diff --git a/Documentation/Cookbook/rst/Installation_Linux.txt b/Documentation/Cookbook/rst/Installation_Linux.txt index f686070355efb684f03c96b22b6bddd16bc09001..f86681bd63bad76344e1fea96780ac4cc3342953 100644 --- a/Documentation/Cookbook/rst/Installation_Linux.txt +++ b/Documentation/Cookbook/rst/Installation_Linux.txt @@ -1,5 +1,7 @@ -We provide binary package for GNU/Linux x86_64. This package include +We provide a binary package for GNU/Linux x86_64. This package includes all of OTB applications along with commandline and graphical launchers. +Download it from `OTB's download page +<https://www.orfeo-toolbox.org/download>`__. This package is a self-extractible archive. You may uncompress it with a double-click on the file, or with the command line : diff --git a/Documentation/Cookbook/rst/Installation_Windows.txt b/Documentation/Cookbook/rst/Installation_Windows.txt index 9d8edbc443781bbd7efc3670bf870924e7dec3f3..164a75b2410f65c81e7af2da618f1b9f019a2a2b 100644 --- a/Documentation/Cookbook/rst/Installation_Windows.txt +++ b/Documentation/Cookbook/rst/Installation_Windows.txt @@ -1,12 +1,9 @@ - -We provide for Windows Seven and later through standalone packages. They -are cross-compiled with MinGW, for 32 bits and 64 bits platforms. They -contain all applications and their launchers (both command line and graphical -launchers are provided). -Check the `Download page <https://www.orfeo-toolbox.org/download>`__ +We provide standalone packages for Windows 7 and later. Download it from the +`here <https://www.orfeo-toolbox.org/download>`__, and pick the correct version +(32 bit or 64 bit) depending on your system. -There is a 32 bits and a 64 bits version. They contain the same directory -structure: +Extract the archive and use one of the launchers, they contain all applications +and their launchers (both command line and graphical launchers are provided): - ``monteverdi.bat`` : A launcher script for Monteverdi diff --git a/Documentation/Cookbook/rst/index.rst b/Documentation/Cookbook/rst/index.rst index 0951932b64a6f9e2d98045151235bbff378ddd65..a6dd9166030abeec0faf31ade3c3805c104d7cfa 100644 --- a/Documentation/Cookbook/rst/index.rst +++ b/Documentation/Cookbook/rst/index.rst @@ -6,7 +6,7 @@ Welcome to OTB CookBook's documentation! ======================================== -`Orfeo ToolBox (OTB) <http://orfeo-toolbox.org>` is an open-source project for +`Orfeo ToolBox (OTB) <http://orfeo-toolbox.org>`_ is an open-source project for state-of-the-art remote sensing. Built on the shoulders of the open-source geospatial community, it can process high resolution optical, multispectral and radar images at the terabyte scale. A wide variety of applications are @@ -28,8 +28,15 @@ how to start using Monteverdi and OTB applications to view and process your data, and recipes on how to accomplish typical remote sensing tasks. Finally, there is also documentation on every application shipped with OTB. +Get started now with the :doc:`Installation` chapter. + +Get help, share your experience and contribute to the Orfeo-Toolbox project by +joining `our community <https://www.orfeo-toolbox.org/community/>`_ and +`users mailing list <https://groups.google.com/forum/?hl=fr#!forum/otb-users/join>`_. + For other documentation, be sure to read: +- OTB's website: `www.orfeo-toolbox.org <https://www.orfeo-toolbox.org/>`_ - `OTB Software Guide <http://orfeo-toolbox.org/SoftwareGuide/>`_ for advanced users and developers. The software guide contains documented code examples, descriptions of the ITK pipeline model, multithreading and @@ -37,6 +44,3 @@ For other documentation, be sure to read: - `Doxygen <http://orfeo-toolbox.org/doxygen/>`_, for exhaustive documentation of the C++ API. -* :ref:`genindex` -* :ref:`modindex` -* :ref:`search` diff --git a/Modules/ThirdParty/SiftFast/src/libsiftfast.cpp b/Modules/ThirdParty/SiftFast/src/libsiftfast.cpp index f566e8565c54dadf69a9fc32a898d590603ad14c..631ab4e49ad25cc320706f70eb9ff7a340bd136c 100644 --- a/Modules/ThirdParty/SiftFast/src/libsiftfast.cpp +++ b/Modules/ThirdParty/SiftFast/src/libsiftfast.cpp @@ -613,7 +613,7 @@ void ConvHorizontalFast(Image imgdst, Image image, float* kernel, int ksize) int width = (ksize >= 0 ? ksize : ksize-1)>>1; float* _pixels = image->pixels, *_pdst = imgdst->pixels; - int convsize = std::max(100000,4*(cols + ksize)+36); + int convsize = (std::max)(100000,4*(cols + ksize)+36); if( s_listconvbuf.size() == 0 || s_convbufsize < convsize ) { for(LISTBUF::iterator it = s_listconvbuf.begin(); it != s_listconvbuf.end(); ++it) @@ -762,7 +762,7 @@ void ConvVerticalFast(Image image, float* kernel, int ksize) DVSTARTPROFILE(); - int convsize = std::max(100000,32*(image->rows + ksize+4)); + int convsize = (std::max)(100000,32*(image->rows + ksize+4)); if( s_listconvbuf.size() == 0 || s_convbufsize < convsize ) { for(LISTBUF::iterator it = s_listconvbuf.begin(); it != s_listconvbuf.end(); ++it) diff --git a/Modules/Visualization/Ice/src/otbGlImageActor.cxx b/Modules/Visualization/Ice/src/otbGlImageActor.cxx index 6298db6920b040b85efd7728271ff6806c88038d..8b4f0e851291eba85f248730bfa7dcd5b0aed4cf 100644 --- a/Modules/Visualization/Ice/src/otbGlImageActor.cxx +++ b/Modules/Visualization/Ice/src/otbGlImageActor.cxx @@ -139,7 +139,8 @@ void GlImageActor::Initialize(const std::string & filename) m_FileReader = ReaderType::New(); m_FileReader->SetFileName(m_FileName); - m_FileReader->UpdateOutputInformation(); + m_FileReader->GetOutput()->UpdateOutputInformation(); + std::cout<<"GlImageActor::Initialize"<<std::endl; m_LargestRegion = m_FileReader->GetOutput()->GetLargestPossibleRegion(); @@ -983,7 +984,7 @@ void GlImageActor::UpdateResolution() // Arbitrary higher than any distance we will compute here double minDist = 50000.; - m_CurrentResolution = 0; + unsigned int newResolution = 0; // OTB always include full resolution level in available resolutions. assert( !m_AvailableResolutions.empty() ); @@ -1015,9 +1016,9 @@ void GlImageActor::UpdateResolution() isFound = true; minDist = vcl_abs(diff); - m_CurrentResolution = std::distance(m_AvailableResolutions.begin(),it); + newResolution = std::distance(m_AvailableResolutions.begin(),it); - // std::cout << "found: " << m_CurrentResolution << std::endl; + // std::cout << "found: " << newResolution << std::endl; } } @@ -1026,23 +1027,28 @@ void GlImageActor::UpdateResolution() { assert( m_AvailableResolutions.size() > 0 ); - m_CurrentResolution = m_AvailableResolutions.size() - 1; + newResolution = m_AvailableResolutions.size() - 1; // std::cout << "not found: " << m_CurrentResolution << std::endl; } } - std::ostringstream extFilename; - extFilename<<m_FileName<<"?&resol="<<m_CurrentResolution; - - // ReaderType::New() is forced because of warning message - // 'Duplicated option detected: <option>. Using value <value>.' - // output by otb::ExtendedFilenameHelper. - m_FileReader = ReaderType::New(); - m_FileReader->SetFileName(extFilename.str()); - m_FileReader->UpdateOutputInformation(); - - // std::cout << "Switched to resolution: " << m_CurrentResolution << std::endl; + if(newResolution != m_CurrentResolution) + { + m_CurrentResolution = newResolution; + + std::ostringstream extFilename; + extFilename<<m_FileName<<"?&resol="<<m_CurrentResolution; + + // ReaderType::New() is forced because of warning message + // 'Duplicated option detected: <option>. Using value <value>.' + // output by otb::ExtendedFilenameHelper. + m_FileReader = ReaderType::New(); + m_FileReader->SetFileName(extFilename.str()); + m_FileReader->GetOutput()->UpdateOutputInformation(); + // std::cout << "Switched to resolution: " << m_CurrentResolution << + // std::endl; + } } void GlImageActor::UpdateTransforms()