Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_circle_mask_generator.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2008-2009 Cyrille Berger <cberger@cberger.net>
3 * SPDX-FileCopyrightText: 2022 L. E. Segovia <amy@amyspark.me>
4 *
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 */
7
8#ifndef _KIS_CIRCLE_MASK_GENERATOR_H_
9#define _KIS_CIRCLE_MASK_GENERATOR_H_
10
11#include "kritaimage_export.h"
12
14#include <QScopedPointer>
15
16template <typename V>
18
22class KRITAIMAGE_EXPORT KisCircleMaskGenerator : public KisMaskGenerator
23{
24public:
25 KisCircleMaskGenerator(qreal radius, qreal ratio, qreal fh, qreal fv, int spikes, bool antialiasEdges);
27 ~KisCircleMaskGenerator() override;
28 KisMaskGenerator* clone() const override;
29
30 quint8 valueAt(qreal x, qreal y) const override;
31
32 bool shouldVectorize() const override;
33
35
36 void setSoftness(qreal softness) override;
37 void setScale(qreal scaleX, qreal scaleY) override;
38
39 void setMaskScalarApplicator();
40
41private:
42
43 qreal norme(qreal a, qreal b) const {
44 return a*a + b * b;
45 }
46
47private:
48 struct Private;
49 const QScopedPointer<Private> d;
50
52};
53
54#endif
KisBrushMaskApplicatorBase * applicator() const override
const QScopedPointer< Private > d
qreal norme(qreal a, qreal b) const
virtual void setSoftness(qreal softness)
virtual KisMaskGenerator * clone() const =0
virtual bool shouldVectorize() const
virtual quint8 valueAt(qreal x, qreal y) const =0
virtual void setScale(qreal scaleX, qreal scaleY)