Krita Source Code Documentation
Loading...
Searching...
No Matches
KisDynamicSensorDistance Class Reference

#include <KisDynamicSensorDistance.h>

+ Inheritance diagram for KisDynamicSensorDistance:

Public Member Functions

 KisDynamicSensorDistance (const KisSensorWithLengthData &data, std::optional< KisCubicCurve > curveOverride)
 
qreal value (const KisPaintInformation &pi) const override
 
- Public Member Functions inherited from KisDynamicSensor
KoID id () const
 
virtual bool isAbsoluteRotation () const
 
virtual bool isAdditive () const
 
 KisDynamicSensor (const KoID &id, const KisSensorData &data, std::optional< KisCubicCurve > curveOverride)
 
qreal parameter (const KisPaintInformation &info) const
 
virtual ~KisDynamicSensor ()
 

Private Attributes

int m_length
 
bool m_periodic
 

Additional Inherited Members

- Static Public Member Functions inherited from KisDynamicSensor
static qreal additiveToScaling (qreal x)
 
static qreal scalingToAdditive (qreal x)
 

Detailed Description

Definition at line 13 of file KisDynamicSensorDistance.h.

Constructor & Destructor Documentation

◆ KisDynamicSensorDistance()

KisDynamicSensorDistance::KisDynamicSensorDistance ( const KisSensorWithLengthData & data,
std::optional< KisCubicCurve > curveOverride )

Definition at line 14 of file KisDynamicSensorDistance.cpp.

15 : KisDynamicSensor(DistanceId, data, curveOverride)
17 , m_length(data.length)
18{
19}
const KoID DistanceId("distance", ki18nc("Context: dynamic sensors", "Distance"))
generate a number that increase with distance
KisDynamicSensor(const KoID &id, const KisSensorData &data, std::optional< KisCubicCurve > curveOverride)

Member Function Documentation

◆ value()

qreal KisDynamicSensorDistance::value ( const KisPaintInformation & pi) const
overridevirtual

Implements KisDynamicSensor.

Definition at line 21 of file KisDynamicSensorDistance.cpp.

22{
23 if (pi.isHoveringMode()) return 1.0;
24
25 const qreal distance =
27 fmod(pi.totalStrokeLength(), m_length) :
28 qMin(pi.totalStrokeLength(), (qreal)m_length);
29
30 return distance / m_length;
31}
qreal distance(const QPointF &p1, const QPointF &p2)
qreal totalStrokeLength() const
The length of the stroke before painting the current dab.

References distance(), KisPaintInformation::isHoveringMode(), m_length, m_periodic, and KisPaintInformation::totalStrokeLength().

Member Data Documentation

◆ m_length

int KisDynamicSensorDistance::m_length
private

Definition at line 22 of file KisDynamicSensorDistance.h.

◆ m_periodic

bool KisDynamicSensorDistance::m_periodic
private

Definition at line 21 of file KisDynamicSensorDistance.h.


The documentation for this class was generated from the following files: