0
我用下面的代码绘制了两个圆圈,我必须在这两个圆圈之间绘制一条线条,但棘手的一点是,当我开始从第一个圆圈绘制一条线时,应该第二圈的可用性,那么只有它应该画,否则它不应该画线,反之亦然。如果我点击圆圈之外,那么还应该也不行,我下面的代码绘制如何在两个圆圈之间动态绘制线条
或拨弄检查我可以在画一条线我的条件是不工作
var line;
var svg = d3.select("body").append("svg")
.attr("width", 600)
.attr("height", 400).on("mousedown", mousedown).on("mouseup", mouseup);
function mousedown() {
var m = d3.mouse(this);
line = vis.append("line")
.attr("x1", m[0])
.attr("y1", m[1])
.attr("x2", m[0])
.attr("y2", m[1]);
svg.on("mousemove", mousemove);
}
function mousemove() {
var m = d3.mouse(this);
line.attr("x2", m[0])
.attr("y2", m[1]);
}
function mouseup() {
svg.on("mousemove", null);
}
var inputs = [
{ "x" : 200, "y" : 150, r : 50},
{ "x" : 300, "y" : 250, r : 50},
]
svg.selectAll("circle").data(inputs).enter().append("circle")
.attr("r", function(d, i){ return d.r })
.attr("cx", function(d, i){ return d.x })
.attr("cy", function(d, i){ return d.y })
.attr("stroke", "red")
.attr("fill", "white")
这里是我的小提琴:https://jsfiddle.net/34j6pkn9/1/
mybe这将帮助https://bl.ocks.org/cjrd/6 863459 – KEKUATAN
没有错误,但行不是绘图 –