在D3力导向图中计算曲线路径链接的控制点
D3力导向图曲线路径链接控制点问题
我在D3中实现了一个力导向图,尝试使用path元素在两个圆形节点之间创建符合预期样式的曲线路径,预期路径样式如下:
同时要求拖拽节点时,路径在变宽或变窄的过程中保持原有结构,示例如下:

我已获取到节点正确的x/y坐标,但难以找到合适的控制点来实现上述需求。
当前尝试的代码如下:
const controlPoint1X = sourceX + (targetX - sourceX) / 2; const controlPoint1Y = sourceY + 20; const controlPoint2X = targetX - (targetX - sourceX) / 2; const controlPoint2Y = targetY - 60; // Create the curve return curve([ [sourceX, sourceY], [controlPoint1X, controlPoint1Y], [controlPoint2X, controlPoint2Y], [targetX, targetY] ]);
内容的提问来源于stack exchange,提问作者Ace
相关产品推荐
相关产品推荐

