|
Krita Source Code Documentation
|
#include <kis_particle_paintop.h>
Inheritance diagram for KisParticlePaintOp:Public Member Functions | |
| KisParticlePaintOp (const KisPaintOpSettingsSP settings, KisPainter *painter, KisNodeSP node, KisImageSP image) | |
| void | paintLine (const KisPaintInformation &pi1, const KisPaintInformation &pi2, KisDistanceInformation *currentDistance) override |
| ~KisParticlePaintOp () override | |
Public Member Functions inherited from KisPaintOp | |
| virtual bool | canPaint () const |
| virtual std::pair< int, bool > | doAsynchronousUpdate (QVector< KisRunnableStrokeJobData * > &jobs) |
| KisPaintOp (KisPainter *painter) | |
| void | paintAt (const KisPaintInformation &info, KisDistanceInformation *currentDistance) |
| virtual void | paintBezierCurve (const KisPaintInformation &pi1, const QPointF &control1, const QPointF &control2, const KisPaintInformation &pi2, KisDistanceInformation *currentDistance) |
| Private (KisPaintOp *_q) | |
| void | updateSpacing (const KisPaintInformation &info, KisDistanceInformation ¤tDistance) const |
| void | updateTiming (const KisPaintInformation &info, KisDistanceInformation ¤tDistance) const |
| virtual | ~KisPaintOp () |
Public Member Functions inherited from Private | |
| Private (KisCanvas2 *c) | |
Public Member Functions inherited from KisShared | |
| bool | deref () |
| bool | ref () |
| int | refCount () |
| QAtomicInt * | sharedWeakReference () |
Protected Member Functions | |
| KisSpacingInformation | paintAt (const KisPaintInformation &info) override |
| KisSpacingInformation | updateSpacingImpl (const KisPaintInformation &info) const override |
| KisTimingInformation | updateTimingImpl (const KisPaintInformation &info) const override |
Protected Member Functions inherited from KisPaintOp | |
| KisFixedPaintDeviceSP | cachedDab () |
| KisFixedPaintDeviceSP | cachedDab (const KoColorSpace *cs) |
| KisPainter * | painter () const |
| KisPaintDeviceSP | source () const |
Protected Member Functions inherited from KisShared | |
| KisShared () | |
| ~KisShared () | |
Private Member Functions | |
| void | doPaintLine (const KisPaintInformation &pi1, const KisPaintInformation &pi2) |
Private Attributes | |
| KisAirbrushOptionData | m_airbrushData |
| KisPaintDeviceSP | m_dab |
| bool | m_first |
| ParticleBrush | m_particleBrush |
| KisParticleOpOptionData | m_particleOpData |
| KisRateOption | m_rateOption |
Additional Inherited Members | |
Static Public Member Functions inherited from KisPaintOp | |
| static void | splitCoordinate (qreal coordinate, qint32 *whole, qreal *fraction) |
Public Attributes inherited from KisPaintOp | |
| KisFixedPaintDeviceSP | dab |
| bool | fanCornersEnabled {false} |
| qreal | fanCornersStep {1.0} |
| KisPainter * | painter {nullptr} |
| KisPaintOp * | q {nullptr} |
Public Attributes inherited from Private | |
| KisCanvas2 * | canvas |
| int | displayedFrame |
| int | intendedFrame |
Definition at line 21 of file kis_particle_paintop.h.
| KisParticlePaintOp::KisParticlePaintOp | ( | const KisPaintOpSettingsSP | settings, |
| KisPainter * | painter, | ||
| KisNodeSP | node, | ||
| KisImageSP | image ) |
Definition at line 32 of file kis_particle_paintop.cpp.
References KisSharedPtr< T >::data(), ParticleBrush::initParticles(), m_airbrushData, m_particleBrush, m_particleOpData, KisAirbrushOptionData::read(), KisParticleOpOptionData::read(), and ParticleBrush::setProperties().
|
override |
Definition at line 48 of file kis_particle_paintop.cpp.
|
private |
Definition at line 82 of file kis_particle_paintop.cpp.
References KisPainter::bitBlt(), KisPaintDevice::clear(), KisPaintDevice::createCompositionSourceDevice(), ParticleBrush::draw(), KisPaintDevice::extent(), m_dab, m_first, m_particleBrush, KisPaintOp::painter, KisPaintInformation::pos(), KisPainter::renderMirrorMask(), ParticleBrush::setInitialPosition(), and KisPaintOp::source().
|
overrideprotectedvirtual |
The implementation of painting of a dab and updating spacing. This does NOT need to update the timing information.
Implements KisPaintOp.
Definition at line 52 of file kis_particle_paintop.cpp.
References doPaintLine(), and updateSpacingImpl().
|
overridevirtual |
Draw a line between pos1 and pos2 using the currently set brush and color. If savedDist is less than zero, the brush is painted at pos1 before being painted along the line using the spacing setting.
Reimplemented from KisPaintOp.
Definition at line 70 of file kis_particle_paintop.cpp.
References doPaintLine(), KisPaintOp::paintLine(), and KisPaintInformation::pos().
|
overrideprotectedvirtual |
Implementation of a spacing update
Implements KisPaintOp.
Definition at line 58 of file kis_particle_paintop.cpp.
References KisPaintOpPluginUtils::effectiveSpacing(), KisLodTransformBase::lodToScale(), m_airbrushData, and KisPaintOp::painter.
|
overrideprotectedvirtual |
Implementation of a timing update. The default implementation always disables timing. This is suitable for paintops that do not support airbrushing.
Reimplemented from KisPaintOp.
Definition at line 65 of file kis_particle_paintop.cpp.
References KisPaintOpPluginUtils::effectiveTiming(), m_airbrushData, and m_rateOption.
|
private |
Definition at line 45 of file kis_particle_paintop.h.
|
private |
Definition at line 43 of file kis_particle_paintop.h.
|
private |
Definition at line 47 of file kis_particle_paintop.h.
|
private |
Definition at line 44 of file kis_particle_paintop.h.
|
private |
Definition at line 42 of file kis_particle_paintop.h.
|
private |
Definition at line 46 of file kis_particle_paintop.h.