2016-10-26 6 views
0

私はsvgjsを使って自分の形を作る。どのようにsvgシェイプの中心点を見つけてそこに要素を追加できますか?私の場合、赤い点。私は、この状況で役立つ方法や何かのためのドキュメンテーションの情報を見つけることができません。svgの形状の中心を見つける

答えて

0

getBBoxの代わりにgetBoundingClientRectの方法を使用できます。どちらのメソッドも、プロパティを持つオブジェクトを提供しますx, y, width, height、あなたはあなたの中心を計算するために使用することができます。

あなたの質問にsvg.jsとタグ付けしたので、私はあなたにsvg.jsという解決策も与えます。

// Vanilla 
node = document.getElementById('myEl').getBBox() 

// with svg.js 
SVG.adopt(document.getElementById('myEl')).bbox() 

第2の解決策は、cx、すでにあなたのために計算cyを持つオブジェクトをあなたに戻っています。

このメソッドは、私は、この位置に要素を設定する方法を座標を取得した後、答えをdocs

+0

どうもありがとう、1つの最後の質問で見つけることができますか? – Pedro

+0

私は 'center'関数を使って、要素の中心をshaoeの中心に設定します。例えば。 'circleEl.center(cx、cy)'です。それはすべて文書に書かれている。どうぞrtfm! – Fuzzyma

+0

SVG.adopt(this.svgElement).bbox()を呼び出すと、2つの座標しか与えられていないことがわかり、iの後にconsole.log(this.svgElement )、私は2つのsvgがあることに気づきます。それぞれのテーマでは、内部が2つの図形、矩形と円ですが、私はsvgの中の図形の中心に要素を配置する必要があります。 – Pedro

関連する問題