|
Krita Source Code Documentation
|
#include <kis_grid_interpolation_tools.h>
Public Member Functions | |
| void | copyPreviousRects () |
| void | fastCopyArea (QRect areaToCopy) |
| void | fastCopyArea (QRect areaToCopy, bool lazy) |
| void | finalize () |
| void | operator() (const QPolygonF &srcPolygon, const QPolygonF &dstPolygon) |
| void | operator() (const QPolygonF &srcPolygon, const QPolygonF &dstPolygon, const QPolygonF &clipDstPolygon) |
| PaintDevicePolygonOp (KisPaintDeviceSP srcDev, KisPaintDeviceSP dstDev) | |
| void | setCanMergeRects (bool newCanMergeRects) |
| ~PaintDevicePolygonOp () | |
Public Attributes | |
| KisPaintDeviceSP | m_dstDev |
| const qreal | m_epsilon {0.001} |
| KisPaintDeviceSP | m_srcDev |
Private Attributes | |
| bool | m_canMergeRects {false} |
| QVector< QRect > | m_rectsToCopy |
Definition at line 169 of file kis_grid_interpolation_tools.h.
|
inline |
Definition at line 171 of file kis_grid_interpolation_tools.h.
|
inline |
When setCanMergeRects() is set to true, the caller should call finalize() to process all the postponed rects, which would clear the vector
Definition at line 174 of file kis_grid_interpolation_tools.h.
References KIS_SAFE_ASSERT_RECOVER_NOOP, and m_rectsToCopy.
|
inline |
Definition at line 313 of file kis_grid_interpolation_tools.h.
References fastCopyArea(), m_rectsToCopy, and KisRegion::mergeSparseRects().
|
inline |
Definition at line 184 of file kis_grid_interpolation_tools.h.
References fastCopyArea(), and m_canMergeRects.
|
inline |
Definition at line 188 of file kis_grid_interpolation_tools.h.
References KisPaintDevice::colorSpace(), KisPainter::copyAreaOptimized(), KoColorSpace::fromQColor(), m_dstDev, m_rectsToCopy, m_srcDev, KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::nextPixel(), KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::oldRawData(), KisPaintDevice::pixelSize(), KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::rawData(), and KisAlgebra2D::wrapValue().
|
inline |
Definition at line 323 of file kis_grid_interpolation_tools.h.
References copyPreviousRects().
|
inline |
Definition at line 215 of file kis_grid_interpolation_tools.h.
References operator()().
|
inline |
We need to make sure that the destination polygon is not too small, otherwise even small rounding will send the src-accessor into infinity
Definition at line 219 of file kis_grid_interpolation_tools.h.
References KisPaintDevice::colorSpace(), copyPreviousRects(), KisPaintDevice::createRandomSubAccessor(), dstPoint, fastCopyArea(), KoColorSpace::fromQColor(), KisAlgebra2D::fuzzyPointCompare(), interp(), KisAlgebra2D::isPolygonPixelAlignedRect(), m_dstDev, m_epsilon, m_srcDev, KisRandomSubAccessor::moveTo(), KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::nextPixel(), KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::rawData(), KisRandomSubAccessor::sampledOldRawData(), KisAlgebra2D::wrapValue(), KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::x(), and KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::y().
|
inline |
IMPORTANT: When setCanMergeRects() is set to true, the caller should calls finalize() in the end of the processing action to actually copy all the lazily postponed rects.
Definition at line 333 of file kis_grid_interpolation_tools.h.
References m_canMergeRects.
|
private |
Definition at line 350 of file kis_grid_interpolation_tools.h.
| KisPaintDeviceSP GridIterationTools::PaintDevicePolygonOp::m_dstDev |
Definition at line 338 of file kis_grid_interpolation_tools.h.
| const qreal GridIterationTools::PaintDevicePolygonOp::m_epsilon {0.001} |
Definition at line 339 of file kis_grid_interpolation_tools.h.
|
private |
Definition at line 351 of file kis_grid_interpolation_tools.h.
| KisPaintDeviceSP GridIterationTools::PaintDevicePolygonOp::m_srcDev |
Definition at line 337 of file kis_grid_interpolation_tools.h.