[librsvg] gaussian_blur: shorten code
- From: Paolo Borelli <pborelli src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [librsvg] gaussian_blur: shorten code
- Date: Wed, 1 Jan 2020 18:50:19 +0000 (UTC)
commit 2258df1a5863d284b31b19002a391338bf0b740d
Author: Paolo Borelli <pborelli gnome org>
Date: Wed Jan 1 19:46:19 2020 +0100
gaussian_blur: shorten code
rsvg_internals/src/filters/gaussian_blur.rs | 20 ++++++++------------
1 file changed, 8 insertions(+), 12 deletions(-)
---
diff --git a/rsvg_internals/src/filters/gaussian_blur.rs b/rsvg_internals/src/filters/gaussian_blur.rs
index 751e7cad..35d2692f 100644
--- a/rsvg_internals/src/filters/gaussian_blur.rs
+++ b/rsvg_internals/src/filters/gaussian_blur.rs
@@ -223,25 +223,21 @@ impl FilterEffect for FeGaussianBlur {
// channels.
// Horizontal convolution.
- let horiz_result_surface = if std_x != 0.0 {
+ let horiz_result_surface = if std_x >= 2.0 {
// The spec says for deviation >= 2.0 three box blurs can be used as an optimization.
- if std_x >= 2.0 {
- three_box_blurs::<Horizontal>(input.surface(), bounds, std_x)?
- } else {
- gaussian_blur(input.surface(), bounds, std_x, false)?
- }
+ three_box_blurs::<Horizontal>(input.surface(), bounds, std_x)?
+ } else if std_x != 0.0 {
+ gaussian_blur(input.surface(), bounds, std_x, false)?
} else {
input.surface().clone()
};
// Vertical convolution.
- let output_surface = if std_y != 0.0 {
+ let output_surface = if std_y >= 2.0 {
// The spec says for deviation >= 2.0 three box blurs can be used as an optimization.
- if std_y >= 2.0 {
- three_box_blurs::<Vertical>(&horiz_result_surface, bounds, std_y)?
- } else {
- gaussian_blur(&horiz_result_surface, bounds, std_y, true)?
- }
+ three_box_blurs::<Vertical>(&horiz_result_surface, bounds, std_y)?
+ } else if std_y != 0.0 {
+ gaussian_blur(&horiz_result_surface, bounds, std_y, true)?
} else {
horiz_result_surface
};
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]