我正在尝试根据鼠标移动画一条线来连接两个形状。我知道如何使用原生画布重新利用它。但是不知道如何使用 KonvaJS 来实现它。请帮我解决这个问题。
此图像显示了我的结果:在此处输入图像描述
这是我试图实现我想要的代码。但它不起作用。
stage.on('mousedown', function(e) {
const a = e.target instanceof Konva.Rect;
if (!a) {
return;
} else {
group.draggable(false);
group2.draggable(false);
clickdot1 = e.target;
drawingLine = true;
}
});
stage.on('mousemove', function(e) {
if (!drawingLine) {
return;
}else{
if(clickdot1!=null&&drawingLine){
let lastLine = new Konva.Line({
stroke: '#df4b26',
strokeWidth: 5,
lineCap: 'round',
lineJoin: 'round',
points: [e.target.x(), e.target.y()],
});
connections.push(lastLine);
drawthings();
}
}
});
function drawthings(){
for(let i = 0;i<connections.length;i++){
animLayer.add(connections[i]);
animLayer.batchDraw();
}
}
Smart猫小萌
青春有我
相关分类