Inkscape
Vector Graphics Editor
Loading...
Searching...
No Matches
morphology.h
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-2.0-or-later
/*
5 * Authors:
6 * Hugo Rodrigues <haa.rodrigues@gmail.com>
7 *
8 * Copyright (C) 2006 Hugo Rodrigues
9 *
10 * Released under GNU GPL v2+, read the file 'COPYING' for more information.
11 */
12
13#ifndef SP_FEMORPHOLOGY_H_SEEN
14#define SP_FEMORPHOLOGY_H_SEEN
15
16#include "sp-filter-primitive.h"
17#include "number-opt-number.h"
19
20class SPFeMorphology final
21 : public SPFilterPrimitive
22{
23public:
24 int tag() const override { return tag_of<decltype(*this)>; }
25 Geom::Rect calculate_region(Geom::Rect const &region) const override;
26
27private:
30
31protected:
32 void build(SPDocument *doc, Inkscape::XML::Node *repr) override;
33 void set(SPAttr key, char const *value) override;
34
35 std::unique_ptr<Inkscape::Filters::FilterPrimitive> build_renderer(Inkscape::DrawingItem *item) const override;
36};
37
38#endif // SP_FEMORPHOLOGY_H_SEEN
39
40/*
41 Local Variables:
42 mode:c++
43 c-file-style:"stroustrup"
44 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
45 indent-tabs-mode:nil
46 fill-column:99
47 End:
48*/
49// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
SPAttr
Definition attributes.h:27
constexpr int tag_of
Convenience function to retrieve the tag (class id) of a given type.
Definition cast.h:26
Axis aligned, non-empty rectangle.
Definition rect.h:92
SVG drawing item for display.
Interface for refcounted XML nodes.
Definition node.h:80
Typed SVG document implementation.
Definition document.h:101
int tag() const override
Definition morphology.h:24
NumberOptNumber radius
Definition morphology.h:29
void build(SPDocument *doc, Inkscape::XML::Node *repr) override
std::unique_ptr< Inkscape::Filters::FilterPrimitive > build_renderer(Inkscape::DrawingItem *item) const override
Geom::Rect calculate_region(Geom::Rect const &region) const override
Calculate the region taken up by a mophoplogy primitive.
Inkscape::XML::Node * repr
Definition sp-object.h:193
Operator
Definition cr-term.h:64
SPItem * item
static cairo_user_data_key_t key
<number-opt-number> implementation.
Document level base class for all SVG filter primitives.