X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=plugins%2FITKImageGenericFilters_1%2FRegionOfInterestImageFilter.cxx;h=61f2f58ef87049b4f72099e57d9e0c1e13c8a50e;hb=d8d3ef29ab1a1f4f268d28b1040d300b0965abf7;hp=9254bf4d83aa5a0c7f461938bf106b0e88aa71dd;hpb=047bca987b3c26b529561b5ba3918156510501fe;p=cpPlugins.git diff --git a/plugins/ITKImageGenericFilters_1/RegionOfInterestImageFilter.cxx b/plugins/ITKImageGenericFilters_1/RegionOfInterestImageFilter.cxx index 9254bf4..61f2f58 100644 --- a/plugins/ITKImageGenericFilters_1/RegionOfInterestImageFilter.cxx +++ b/plugins/ITKImageGenericFilters_1/RegionOfInterestImageFilter.cxx @@ -48,9 +48,18 @@ _GD0( _TImage* input ) auto bb = this->GetInput< _TBBox >( "BoundingBox" ); + _TRegion in_region = input->GetRequestedRegion( ); + _TIndex in_i0 = in_region.GetIndex( ); + _TIndex in_i1 = in_i0 + in_region.GetSize( ); _TIndex i0, i1; input->TransformPhysicalPointToIndex( bb->GetMinimum< _TPoint >( ), i0 ); input->TransformPhysicalPointToIndex( bb->GetMaximum< _TPoint >( ), i1 ); + for( unsigned int d = 0; d < _TImage::ImageDimension; ++d ) + { + if( i0[ d ] < in_i0[ d ] ) i0[ d ] = in_i0[ d ]; + if( i1[ d ] > in_i1[ d ] ) i1[ d ] = in_i1[ d ]; + + } // rof _TSize size; for( unsigned int d = 0; d < _TImage::ImageDimension; ++d )