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

#include <KisMirrorOption.h>

+ Inheritance diagram for KisMirrorOption:

Public Member Functions

MirrorProperties apply (const KisPaintInformation &info) const
 
 KisMirrorOption (const KisPropertiesConfiguration *setting)
 
- Public Member Functions inherited from KisCurveOption
qreal computeRotationLikeValue (const KisPaintInformation &info, qreal baseValue, bool absoluteAxesFlipped, qreal scalingPartCoeff, bool disableScalingPart) const
 
qreal computeSizeLikeValue (const KisPaintInformation &info, bool useStrengthValue=true) const
 
ValueComponents computeValueComponents (const KisPaintInformation &info, bool useStrengthValue) const
 
bool isChecked () const
 
bool isRandom () const
 
 KisCurveOption (const KisCurveOptionData &data)
 
 KisCurveOption (KisCurveOption &)=delete
 
KisCurveOptionoperator= (KisCurveOption &)=delete
 
qreal strengthMaxValue () const
 
qreal strengthMinValue () const
 
qreal strengthValue () const
 

Private Member Functions

 KisMirrorOption (const KisMirrorOptionData &data)
 

Private Attributes

bool m_enableHorizontalMirror
 
bool m_enableVerticalMirror
 

Detailed Description

Definition at line 14 of file KisMirrorOption.h.

Constructor & Destructor Documentation

◆ KisMirrorOption() [1/2]

KisMirrorOption::KisMirrorOption ( const KisPropertiesConfiguration * setting)

Definition at line 19 of file KisMirrorOption.cpp.

20 : KisMirrorOption(kpou::loadOptionData<KisMirrorOptionData>(setting))
21{
22}
KisMirrorOption(const KisPropertiesConfiguration *setting)

◆ KisMirrorOption() [2/2]

KisMirrorOption::KisMirrorOption ( const KisMirrorOptionData & data)
private

Definition at line 24 of file KisMirrorOption.cpp.

25 : KisCurveOption(data)
26 , m_enableHorizontalMirror(data.enableHorizontalMirror)
27 , m_enableVerticalMirror(data.enableVerticalMirror)
28{
29}
KisCurveOption(const KisCurveOptionData &data)

Member Function Documentation

◆ apply()

MirrorProperties KisMirrorOption::apply ( const KisPaintInformation & info) const

Definition at line 31 of file KisMirrorOption.cpp.

32{
33 int mirrorXIncrement = info.canvasMirroredH();
34 int mirrorYIncrement = info.canvasMirroredV();
35 bool coordinateSystemFlipped = false;
36
38
39 qreal sensorResult = computeSizeLikeValue(info);
40
41 bool result = (sensorResult >= 0.5);
42
43 mirrorXIncrement += result && m_enableHorizontalMirror;
44 mirrorYIncrement += result && m_enableVerticalMirror;
45 coordinateSystemFlipped = result &&
47 }
48
49 MirrorProperties mirrors;
50
51 mirrors.verticalMirror = mirrorYIncrement % 2;
52 mirrors.horizontalMirror = mirrorXIncrement % 2;
53 mirrors.coordinateSystemFlipped = coordinateSystemFlipped;
54
55 return mirrors;
56}
bool isChecked() const
qreal computeSizeLikeValue(const KisPaintInformation &info, bool useStrengthValue=true) const

References KisPaintInformation::canvasMirroredH(), KisPaintInformation::canvasMirroredV(), KisCurveOption::computeSizeLikeValue(), MirrorProperties::coordinateSystemFlipped, MirrorProperties::horizontalMirror, KisCurveOption::isChecked(), m_enableHorizontalMirror, m_enableVerticalMirror, and MirrorProperties::verticalMirror.

Member Data Documentation

◆ m_enableHorizontalMirror

bool KisMirrorOption::m_enableHorizontalMirror
private

Definition at line 24 of file KisMirrorOption.h.

◆ m_enableVerticalMirror

bool KisMirrorOption::m_enableVerticalMirror
private

Definition at line 25 of file KisMirrorOption.h.


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