diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2012-11-15 02:15:45 +0400 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2012-11-15 02:15:45 +0400 |
commit | 42db4fb50a847197ab83c00dd799d9645d761b01 (patch) | |
tree | 5164cdd946760b938dd05f09a527dbc20a3ee278 /source/blender/compositor/operations/COM_MapRangeOperation.cpp | |
parent | 67f0a4b4242abe15bf7ec5530231966da2fd0dd9 (diff) |
fix range map node clipping when max < min
(useful for flipping the values inside the node)
Diffstat (limited to 'source/blender/compositor/operations/COM_MapRangeOperation.cpp')
-rw-r--r-- | source/blender/compositor/operations/COM_MapRangeOperation.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/source/blender/compositor/operations/COM_MapRangeOperation.cpp b/source/blender/compositor/operations/COM_MapRangeOperation.cpp index 3facaaebc9c..c25b056130b 100644 --- a/source/blender/compositor/operations/COM_MapRangeOperation.cpp +++ b/source/blender/compositor/operations/COM_MapRangeOperation.cpp @@ -65,8 +65,14 @@ void MapRangeOperation::executePixel(float output[4], float x, float y, PixelSam value = (value - source_min) / (source_max - source_min); value = dest_min + value * (dest_max - dest_min); - if (this->m_useClamp) - CLAMP(value, dest_min, dest_max); + if (this->m_useClamp) { + if (dest_max > dest_min) { + CLAMP(value, dest_min, dest_max); + } + else { + CLAMP(value, dest_max, dest_min); + } + } output[0] = value; } |