22 *x = ((*x - floor(*x)) >= 0.5) ? ceil(*x) : floor(*x);
26 : m_settings(settings)
27 , separation(m_settings->separation)
28 , origin_x(m_settings->origin_x)
29 , origin_y(m_settings->origin_y)
51 thickness = qMax(1, qRound(additionalScale * tempthickness));
97 double xdraw[2] = {0, 0};
98 double ydraw[2] = {0, 0};
101 int append_index = 0;
102 bool remaininginnerlines =
true;
104 while (remaininginnerlines) {
109 remaininginnerlines =
false;
128 xdraw[append_index] = 0;
130 remaininginnerlines =
true;
135 xdraw[append_index] =
width_;
137 remaininginnerlines =
true;
143 ydraw[append_index] = 0;
144 remaininginnerlines =
true;
151 remaininginnerlines =
true;
156 if (!remaininginnerlines)
170 if (append_index == 2) {
197 double ydraw[2] = {0,
height_};
200 bool remaininginnerlines =
true;
202 while (remaininginnerlines) {
205 remaininginnerlines =
false;
217 remaininginnerlines =
true;
221 if (!remaininginnerlines)
248 if ((numintervals < 2) || (numintervals > 7)) {
249 dbgKrita <<
"Fix your function" << numintervals <<
"<> 2-7" ;
253 double sizeinterval = 1 / double(numintervals);
254 double lowerlimit = 0;
255 double upperlimit = 0;
258 int basefactor = numintervals / 2;
260 if ((numintervals % 2) == 0)
263 for (quint8 currentinterval = 0; currentinterval < numintervals; currentinterval++) {
264 lowerlimit = upperlimit;
265 upperlimit += sizeinterval;
266 if (currentinterval == (numintervals - 1))
268 if ((parameter >= lowerlimit) && (parameter <= upperlimit)) {
269 factor = pow(2.0, (basefactor - currentinterval));
275 dbgKrita <<
"Fix your function" << parameter <<
">" << upperlimit ;
HatchingBrush(KisHatchingPaintOpSettingsSP settings)
void iterateLines(bool forward, int lineindex, bool oneline)
KisHatchingPaintOpSettingsSP m_settings
void iterateVerticalLines(bool forward, int lineindex, bool oneline)
double cursorLineIntercept
void hatch(KisPaintDeviceSP dev, qreal x, qreal y, double width, double height, double givenAngle, const KoColor &color, qreal additionalScale)
double separationAsFunctionOfParameter(double parameter, double separation, int numintervals)
double separationsensorvalue
double thicknesssensorvalue
bool enabledcurveseparation
@ FillStyleForegroundColor
void setMaskImageSize(qint32 width, qint32 height)
void drawThickLine(const QPointF &start, const QPointF &end, int startWidth, int endWidth)
void setBackgroundColor(const KoColor &color)
void setFillStyle(FillStyle fillStyle)
Set the current style with which to fill.
void begin(KisPaintDeviceSP device)
void drawLine(const QPointF &start, const QPointF &end)
void setPaintColor(const KoColor &color)