LibreOffice Module vcl (master)
1
vcl
source
bitmap
BitmapSmoothenFilter.cxx
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
/*
3
* This file is part of the LibreOffice project.
4
*
5
* This Source Code Form is subject to the terms of the Mozilla Public
6
* License, v. 2.0. If a copy of the MPL was not distributed with this
7
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
*
9
*/
10
11
#include <
vcl/bitmapex.hxx
>
12
#include <
vcl/BitmapGaussianSeparableBlurFilter.hxx
>
13
#include <
vcl/BitmapSeparableUnsharpenFilter.hxx
>
14
#include <
vcl/BitmapSmoothenFilter.hxx
>
15
16
BitmapEx
BitmapSmoothenFilter::execute
(
BitmapEx
const
& rBitmapEx)
const
17
{
18
BitmapEx
aBitmapEx(rBitmapEx);
19
bool
bRet =
false
;
20
21
if
(
mfRadius
> 0.0)
// Blur for positive values of mnRadius
22
bRet =
BitmapFilter::Filter
(aBitmapEx,
BitmapGaussianSeparableBlurFilter
(
mfRadius
));
23
else
if
(
mfRadius
< 0.0)
// Unsharpen mask for negative values of mnRadius
24
bRet =
BitmapFilter::Filter
(aBitmapEx,
BitmapSeparableUnsharpenFilter
(
mfRadius
));
25
26
if
(bRet)
27
return
aBitmapEx;
28
29
return
BitmapEx
();
30
}
31
32
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
BitmapGaussianSeparableBlurFilter.hxx
BitmapSeparableUnsharpenFilter.hxx
BitmapSmoothenFilter.hxx
bitmapex.hxx
BitmapEx
Definition:
bitmapex.hxx:38
BitmapFilter::Filter
static bool Filter(BitmapEx &rBmpEx, BitmapFilter const &rFilter)
Definition:
bitmapfilter.cxx:20
BitmapGaussianSeparableBlurFilter
Definition:
BitmapGaussianSeparableBlurFilter.hxx:20
BitmapSeparableUnsharpenFilter
Separable Unsharpen Mask filter is actually a subtracted blurred image from the original image.
Definition:
BitmapSeparableUnsharpenFilter.hxx:22
BitmapSmoothenFilter::execute
virtual BitmapEx execute(BitmapEx const &rBitmapEx) const override
Definition:
BitmapSmoothenFilter.cxx:16
BitmapSmoothenFilter::mfRadius
double mfRadius
Definition:
BitmapSmoothenFilter.hxx:29
Generated on Sun Jul 30 2023 04:35:09 for LibreOffice Module vcl (master) by
1.9.3