diff --git a/Code/Common/otbPolyLineImageConstIterator.txx b/Code/Common/otbPolyLineImageConstIterator.txx index fa82b3596d84c86a3b0d4f2c12930d63792075f7..2016bf5dc466c1fe9bbdd7963c69356fdb2248fb 100644 --- a/Code/Common/otbPolyLineImageConstIterator.txx +++ b/Code/Common/otbPolyLineImageConstIterator.txx @@ -39,7 +39,7 @@ PolyLineImageConstIterator<TImage, TPath> IndexType source, target; for (unsigned int i = 0; i < ImageType::ImageDimension; ++i) { - source[i] = static_cast<unsigned int> (m_InternalVertexIterator.Value()[i]); + source[i] = static_cast<unsigned int> (vcl_floor(m_InternalVertexIterator.Value()[i] + 0.5)); } ++m_InternalVertexIterator; if (m_InternalVertexIterator != m_Path->GetVertexList()->End()) @@ -47,7 +47,7 @@ PolyLineImageConstIterator<TImage, TPath> for (unsigned int i = 0; i < ImageType::ImageDimension; ++i) { - target[i] = static_cast<unsigned int> (m_InternalVertexIterator.Value()[i]); + target[i] = static_cast<unsigned int> (vcl_floor(m_InternalVertexIterator.Value()[i] + 0.5)); } } else @@ -78,7 +78,7 @@ PolyLineImageConstIterator<TImage, TPath> IndexType source, target; for (unsigned int i = 0; i < ImageType::ImageDimension; ++i) { - source[i] = static_cast<unsigned int> (m_InternalVertexIterator.Value()[i]); + source[i] = static_cast<unsigned int> (vcl_floor(m_InternalVertexIterator.Value()[i] + 0.5)); } ++m_InternalVertexIterator; if (m_InternalVertexIterator != m_Path->GetVertexList()->End()) @@ -86,7 +86,7 @@ PolyLineImageConstIterator<TImage, TPath> for (unsigned int i = 0; i < ImageType::ImageDimension; ++i) { - target[i] = static_cast<unsigned int> (m_InternalVertexIterator.Value()[i]); + target[i] = static_cast<unsigned int> (vcl_floor(m_InternalVertexIterator.Value()[i] + 0.5)); } } else @@ -110,7 +110,7 @@ PolyLineImageConstIterator<TImage, TPath> IndexType source; for (unsigned int i = 0; i < ImageType::ImageDimension; ++i) { - source[i] = static_cast<unsigned int> (m_InternalVertexIterator.Value()[i]); + source[i] = static_cast<unsigned int> (vcl_floor(m_InternalVertexIterator.Value()[i] + 0.5)); } // otbMsgDebugMacro(<<"Source: "<<source); ++m_InternalVertexIterator; @@ -119,7 +119,7 @@ PolyLineImageConstIterator<TImage, TPath> IndexType target; for (unsigned int i = 0; i < ImageType::ImageDimension; ++i) { - target[i] = static_cast<unsigned int> (m_InternalVertexIterator.Value()[i]); + target[i] = static_cast<unsigned int> (vcl_floor(m_InternalVertexIterator.Value()[i] + 0.5)); } // otbMsgDebugMacro(<<"Target: "<<target); m_InternalImageIterator = InternalImageIteratorType(const_cast<ImageType *> (m_Image.GetPointer()), source,