0

重複の可能性:
変換と行列を使用してSVG内の要素の実際のx/y位置を取得する方法

SVGで次のように記述された要素のx/y位置を取得する必要があります。

<image
   y="-421.28461"
   x="335.27295"
   id="image2991"
   xlink:href="file:///C:/Users/tom/Documents/t.jpg"
   height="369"
   width="360"
   transform="matrix(0.22297057,0.97482518,-0.97482518,0.22297057,0,0)" />

ここにxy属性が与えられていますが、これは画像の実際の位置を与えるものではありません。私が知っている限り

変換行列[a,b,c,d,e,f] efは、それぞれxとyの移動軸を示します。しかし

問題は、ここでは両方が0であるということです。これで、この画像( e & f )の実際の画像を取得できますか?xy

4

1 に答える 1

5

仮定すると、

x="335.27295"
y="-421.28461"

与えられた変換行列

a              b          e
c              d          f
0              0          1

値を持っている

0.22297057     0.97482518 0
-0.97482518    0.22297057 0
0              0          1

知っている

  • a、dはx、yをそれぞれスケーリングする責任があります
  • e、fはx、yをそれぞれ変換する責任があります

あなたは最終的に得るでしょう

newX = x * a + e
newY = y * d + f

または、

newX = 335.27295 * 0.22297057 + 0 = 74.75
newY = -421.28461 * 0.22297057 + 0 = -93.93
于 2012-07-18T07:21:37.230 に答える