|
Krita Source Code Documentation
|
#include <KoMeshPatchesRenderer.h>
Public Member Functions | |
| void | calculateAlpha (const SvgMeshArray *mesharray, const int row, const int col, const SvgMeshPatch *patch) |
| bool | checkColorVariance (quint8 c[4][4]) |
| void | configure (QRectF gradientRect, const QTransform &painterTransform) |
| QVector< qreal > | derivative (const SvgMeshStop &stop0, const SvgMeshStop &stop1, const SvgMeshStop &stop2) |
| QVector< QVector< qreal > > | derivativeEdgeBeginX (const SvgMeshPatch *patch0, const SvgMeshPatch *patch1) |
| Derivative in the X direction. The edge has to be in left-most column. | |
| QVector< QVector< qreal > > | derivativeEdgeBeginY (const SvgMeshPatch *patch0, const SvgMeshPatch *patch1) |
| Derivative in the Y direction. The edge has to be in top row. | |
| QVector< QVector< qreal > > | derivativeEdgeEndX (const SvgMeshPatch *patch1, const SvgMeshPatch *patch0) |
| QVector< QVector< qreal > > | derivativeEdgeEndY (const SvgMeshPatch *patch1, const SvgMeshPatch *patch0) |
| QVector< QVector< qreal > > | derivativeX (const SvgMeshPatch *patch0, const SvgMeshPatch *patch1, const SvgMeshPatch *patch2) |
| Derivative in the X direction, but the patch should not be on an edge. | |
| QVector< QVector< qreal > > | derivativeY (const SvgMeshPatch *patch0, const SvgMeshPatch *patch1, const SvgMeshPatch *patch2) |
| Derivative in the Y direction, but the patch should not be on an edge. | |
| QVector< qreal > | difference (const QVector< qreal > &v1, const QVector< qreal > &v2) |
| void | fillPatch (const SvgMeshPatch *patch, SvgMeshGradient::Shading type, const SvgMeshArray *mesharray=nullptr, const int row=-1, const int col=-1) |
| QVector< qreal > | getAlpha (const QVector< qreal > &X) |
| Naming convention adopted from: https://en.wikipedia.org/wiki/Bicubic_interpolation#Computation. | |
| QVector< QColor > | getColorsBicubic (const SvgMeshPatch *patch) |
| QVector< QColor > | getColorsBilinear (const SvgMeshPatch *patch) |
| QColor | getColorUsingAlpha (const QVector< QVector< qreal > > &alpha, QPointF p) |
| qreal | getValue (const QVector< qreal > &alpha, const QPointF p) |
| KoMeshPatchesRenderer () | |
| QColor | midPointColor (QColor first, QColor second) |
| QVector< qreal > | multiply (const QVector< qreal > &v1, qreal n) |
| QImage * | patchImage () |
| QVector< qreal > | secant (const SvgMeshStop &stop1, const SvgMeshStop &stop2) |
| QVector< qreal > | split (QColor c) |
Private Attributes | |
| QVector< QVector< qreal > > | m_alpha |
| QImage | m_patch |
| QPainter | m_patchPainter |
Definition at line 21 of file KoMeshPatchesRenderer.h.
|
inline |
Definition at line 24 of file KoMeshPatchesRenderer.h.
|
inline |
Definition at line 458 of file KoMeshPatchesRenderer.h.
References SvgMeshPatch::Bottom, SvgMeshStop::color, derivativeEdgeBeginX(), derivativeEdgeBeginY(), derivativeEdgeEndX(), derivativeEdgeEndY(), derivativeX(), derivativeY(), getAlpha(), SvgMeshArray::getPatch(), SvgMeshPatch::getStop(), SvgMeshPatch::Left, m_alpha, multiply(), SvgMeshArray::numColumns(), SvgMeshArray::numRows(), SvgMeshStop::point, SvgMeshPatch::Right, secant(), split(), and SvgMeshPatch::Top.
|
inline |
Definition at line 150 of file KoMeshPatchesRenderer.h.
References KoColorSpace::difference(), KoColorSpace::differenceA(), KoColorSpaceRegistry::instance(), and KoColorSpaceRegistry::rgb8().
|
inline |
Definition at line 27 of file KoMeshPatchesRenderer.h.
References m_patch, and m_patchPainter.
|
inline |
Definition at line 303 of file KoMeshPatchesRenderer.h.
References secant().
|
inline |
Derivative in the X direction. The edge has to be in left-most column.
Definition at line 378 of file KoMeshPatchesRenderer.h.
References SvgMeshPatch::Bottom, derivative(), difference(), SvgMeshPatch::getStop(), SvgMeshPatch::Left, multiply(), SvgMeshPatch::Right, secant(), and SvgMeshPatch::Top.
|
inline |
Derivative in the Y direction. The edge has to be in top row.
Definition at line 398 of file KoMeshPatchesRenderer.h.
References SvgMeshPatch::Bottom, derivative(), difference(), SvgMeshPatch::getStop(), SvgMeshPatch::Left, multiply(), SvgMeshPatch::Right, secant(), and SvgMeshPatch::Top.
|
inline |
Definition at line 418 of file KoMeshPatchesRenderer.h.
References SvgMeshPatch::Bottom, derivative(), difference(), SvgMeshPatch::getStop(), SvgMeshPatch::Left, multiply(), SvgMeshPatch::Right, secant(), and SvgMeshPatch::Top.
|
inline |
Definition at line 438 of file KoMeshPatchesRenderer.h.
References SvgMeshPatch::Bottom, derivative(), difference(), SvgMeshPatch::getStop(), SvgMeshPatch::Left, multiply(), SvgMeshPatch::Right, secant(), and SvgMeshPatch::Top.
|
inline |
Derivative in the X direction, but the patch should not be on an edge.
Definition at line 330 of file KoMeshPatchesRenderer.h.
References SvgMeshPatch::Bottom, derivative(), SvgMeshPatch::getStop(), SvgMeshPatch::Left, SvgMeshPatch::Right, and SvgMeshPatch::Top.
|
inline |
Derivative in the Y direction, but the patch should not be on an edge.
Definition at line 354 of file KoMeshPatchesRenderer.h.
References SvgMeshPatch::Bottom, derivative(), SvgMeshPatch::getStop(), SvgMeshPatch::Left, SvgMeshPatch::Right, and SvgMeshPatch::Top.
|
inline |
Definition at line 168 of file KoMeshPatchesRenderer.h.
|
inline |
Definition at line 56 of file KoMeshPatchesRenderer.h.
References SvgMeshGradient::BICUBIC, SvgMeshPatch::Bottom, calculateAlpha(), checkColorVariance(), SvgMeshStop::color, fillPatch(), KoColorSpace::fromQColor(), getColorsBicubic(), getColorsBilinear(), SvgMeshPatch::getPath(), SvgMeshPatch::getStop(), KoColorSpaceRegistry::instance(), SvgMeshPatch::isDivisibleHorizontally(), SvgMeshPatch::isDivisibleVertically(), SvgMeshPatch::Left, m_patchPainter, KoMixColorsOp::mixColors(), KoColorSpace::mixColorsOp, p, KoColorSpaceRegistry::rgb8(), SvgMeshPatch::Right, SvgMeshPatch::subdivide(), SvgMeshPatch::subdivideHorizontally(), SvgMeshPatch::subdivideVertically(), SvgMeshPatch::Top, and KoColorSpace::toQColor().
Naming convention adopted from: https://en.wikipedia.org/wiki/Bicubic_interpolation#Computation.
Definition at line 251 of file KoMeshPatchesRenderer.h.
References A.
|
inline |
Definition at line 568 of file KoMeshPatchesRenderer.h.
References SvgMeshPatch::Bottom, getColorUsingAlpha(), SvgMeshPatch::getMidpointParametric(), SvgMeshPatch::Left, m_alpha, SvgMeshPatch::Right, and SvgMeshPatch::Top.
|
inline |
Definition at line 598 of file KoMeshPatchesRenderer.h.
References SvgMeshPatch::Bottom, SvgMeshStop::color, SvgMeshPatch::getStop(), SvgMeshPatch::Left, midPointColor(), SvgMeshPatch::Right, and SvgMeshPatch::Top.
|
inline |
Definition at line 226 of file KoMeshPatchesRenderer.h.
|
inline |
Definition at line 192 of file KoMeshPatchesRenderer.h.
References KIS_ASSERT, and p.
|
inline |
Definition at line 586 of file KoMeshPatchesRenderer.h.
Definition at line 178 of file KoMeshPatchesRenderer.h.
|
inline |
Definition at line 616 of file KoMeshPatchesRenderer.h.
References m_patch.
|
inline |
Definition at line 283 of file KoMeshPatchesRenderer.h.
References SvgMeshStop::color, distance(), and SvgMeshStop::point.
|
inline |
Definition at line 187 of file KoMeshPatchesRenderer.h.
Definition at line 624 of file KoMeshPatchesRenderer.h.
|
private |
Definition at line 621 of file KoMeshPatchesRenderer.h.
|
private |
Definition at line 622 of file KoMeshPatchesRenderer.h.