パーセンテージに基づいて配置された 2 つの円の間にパスを描画しようとしています。このように配置されているのは、紙を拡大縮小して位置を維持したいからです。
これは円でうまく機能しますが、次のようなパスを描画しようとすると:
paper.path("M55% 70%L25% 20%")
私が得るのは次のとおりです。
Error: Problem parsing d="M,0,0"
どうすればこれを手に入れることができますか?
また、手動で計算せずに要素のパーセンテージの位置を取得する方法はありますか?
ありがとう!
アップデート:
私は自分の問題を解決することになりましたが、かなり手動で回避策があります。
var canvasX = $('#worldmap svg').width() / 100;
var canvasY = $('#worldmap svg').height() / 100;
mapCanvas.path("M" + Math.floor(parseFloat(from.attr("cx")) * canvasX) + " "
+ Math.floor(parseFloat(from.attr("cy")) * canvasY) + "L"
+ Math.floor(parseFloat(to.attr("cx")) * canvasX) + " "
+ Math.floor(parseFloat(to.attr("cy")) * canvasY));
言うまでもなく、これは素晴らしいことではありません。