Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_pixel_selection.cpp File Reference
#include "kis_pixel_selection.h"
#include <QImage>
#include <QVector>
#include <QMutex>
#include <QPoint>
#include <QPolygon>
#include <KoColorSpace.h>
#include <KoColorSpaceRegistry.h>
#include <KoColorModelStandardIds.h>
#include <KoIntegerMaths.h>
#include <KoCompositeOpRegistry.h>
#include "kis_layer.h"
#include "kis_debug.h"
#include "kis_image.h"
#include "kis_fill_painter.h"
#include "kis_outline_generator.h"
#include <kis_iterator_ng.h>
#include "kis_lod_transform.h"
#include "krita_utils.h"
#include "kundo2command.h"

Go to the source code of this file.

Classes

class  KisPixelSelection
 

Functions

QImage deviceToQImage (KisPaintDeviceSP device, const QRect &rc, const QColor &maskColor)
 

Function Documentation

◆ deviceToQImage()

QImage deviceToQImage ( KisPaintDeviceSP device,
const QRect & rc,
const QColor & maskColor )

Definition at line 518 of file kis_pixel_selection.cpp.

521{
522 QImage image(rc.size(), QImage::Format_ARGB32);
523
524 QColor color = maskColor;
525 const qreal alphaScale = maskColor.alphaF();
526
527 KisSequentialConstIterator it(device, rc);
528 while(it.nextPixel()) {
529 quint8 value = (MAX_SELECTED - *(it.rawDataConst())) * alphaScale;
530 color.setAlpha(value);
531
532 QPoint pt(it.x(), it.y());
533 pt -= rc.topLeft();
534
535 image.setPixel(pt.x(), pt.y(), color.rgba());
536 }
537
538 return image;
539}
float value(const T *src, size_t ch)
const quint8 MAX_SELECTED
Definition kis_global.h:32

References MAX_SELECTED, KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::nextPixel(), KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::rawDataConst(), value(), KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::x(), and KisSequentialIteratorBase< IteratorPolicy, SourcePolicy, ProgressPolicy >::y().