我想在两个可移动节点之间画一条线。线起点和终点坐标绑定到中心点。但节点在中间是透明的,所以你看到了这条线。帽子里面的小点。
该行应该在中心开始和结束,但是在startNode中心之后说25px(半径),在endNode中心之前说25px ......怎么能这样做?
答案 0 :(得分:4)
给定起点和终点,请执行以下操作:
这为您提供了从开始到结束的向量。
Point2D vector = new Point2D(end.x, end.y).substract(start.x, start.y);
vector = vector.normalize().multiply(25); // 25 is the radius here
这就是你需要开始行的地方
Point2D newStart = new Point2D(start.x, start.y).add(vector);
这就是你需要结束行的地方
Point2D newEnd = new Point2D(end.x, end.y).subtract(vector);