Files
DoP/main.qml
2019-10-02 10:37:38 +02:00

115 lines
2.7 KiB
QML

import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls 2.12
import bla 1.0
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
property var valuesX: [];
property var valuesY: [];
property int numBalls: 3;
Painty {
id: painty;
anchors.fill: parent;
Row {
Button {
text: "+";
onClicked: {
++numBalls;
}
}
Button {
text: "-";
onClicked: {
--numBalls;
}
}
Slider {
from: 10;
to: 200;
onValueChanged: {
painty.setSigma(value);
}
}
}
Repeater {
model: numBalls;
Rectangle {
width: 16;
height: 16;
x: (index+3) * 32;
y: (index+3) * 32;
color: "red"
//Drag.active: parent
MouseArea {
anchors.fill: parent;
drag.target: parent;
onPositionChanged: {
//valuesX[index] = parent.x;
//valuesY[index] = parent.y;
//console.log(parent.x + " " + parent.y);
//can.requestPaint();
painty.setXY(index, parent.x, parent.y);
}
}
}
}
/*
onPaint: {
var ctx = getContext("2d");
ctx.fillStyle = Qt.rgba(0, 0, 0, 1);
ctx.fillRect(0, 0, width, height);
var w = 300;
var h = 300;
var img = context.createImageData(w, h);
var s = 1;
for (var y = 0; y < h; ++y) {
for (var x = 0; x < w; ++x) {
var sum = 0;
for (var idx in valuesX) {
var x1 = valuesX[idx];
var y1 = valuesY[idx];
var dx = x-x1;
var dy = y-y1;
var dist = Math.sqrt(dx*dx + dy*dy);
//var p = 1/Math.sqrt(2*Math.PI*s*s)*Math.exp(-(dist*dist)/(2*s*s));
sum += 0;
}
img.data[(x+y*w)*4+0] = 128;
img.data[(x+y*w)*4+1] = 64;
img.data[(x+y*w)*4+2] = 32;
img.data[(x+y*w)*4+3] = 255;
}
}
ctx.putImageData(img, 0, 0);
}
*/
}
}