1

SVG でパスをスケーリングしようとしています。そうするために、私は javascript-library Raphaël を使用しています。スケーリング自体は問題なく機能しますが、中心でスケーリングしていて、別のポイントでスケーリングしたい (パスの図は円セクターであり、「円」の中心でスケーリングしたい)。

パスの高さと幅を取得する方法はありますか? もしそうなら、私は円の中心を計算することができます. または、そのポイントを見つける別の方法はありますか?

パス:

var path = "M "+center.x+" "+center.y;

path += "L "+(center.x+startX)+" "+(center.y+startY);

path += "A "+Math.floor(dist)+" "+Math.floor(dist)+" 0 " +(this.endAngle-this.startAngle > Math.PI ? "1 1" :"0 1" )+ (center.x+endX)+ " "+(center.y+endY);

path += "L "+center.x + ""+center.y; パス += "z";

this.shape = paper.path(パス);

4

1 に答える 1

1

要素の高さと幅は次のように取得できます.getBBox(): http://raphaeljs.com/reference.html#Element.getBBox

どのようにパスをスケーリングしていますか? .scale()スケーリングの中心のオプションの座標を取ることができます: http://raphaeljs.com/reference.html#Element.scale

于 2012-07-24T12:51:03.717 に答える