0

x = 10、y = 20の場合、これらの座標に変換を適用すると(xとyを10倍に拡大)、新しい座標x = 100、y = 200となります。 したがって、xのスケーリングに-1を適用すると、x = -10、y = 20になります。しかし、なぜこのアクションによってビューが鏡映されるのでしょうか?ビューを新しい座標に再描画するべきではありませんか? 私はここで何が欠けていますか?iOSとparticullaryでの変換

+1

問題を解決する答えを覚えておいてください。私はあなたに答えがいくつかあるが、どれも受け入れられていないことを知っている。回答を受け入れることで、自分自身やこのサイトの他のユーザーに役立ちます。おかげで – Fogmeister

答えて

2

1つの座標について考えるのではなく、座標の範囲について考えてください。

0、1、2、3、4の座標値(ここではx値のみ)を10ずつスケールすると、それぞれ0,10,20,30,40にマッピングされます。これはx軸を伸ばして、元のビューよりも10倍大きく見えます。

これらの同じx座標をとり、-1でスケールすると、それぞれ0、-1、-2、-3、-4にマップされます。

つまり、原点(4)から最も遠いピクセルは原点から最も離れていますが、現在は-4です。

各ピクセルは原点を通ってミラーリングされます。

これは、iOS、Android、一般的な数学でスケーリングがどのように機能するかを示しています。

サイズを変更せずにビューをスライドさせたい場合は、代わりにtranslationを使用できます。

+0

あなたはx軸を伸ばして何を意味するのですか?それは良い説明ですが、まだ何かが明確ではなく、私は何を正確に伝えることができません。 –

+0

@DanielRahamimは数字だけを考えようとしています。スケールを10にすると、数値ラインを引き伸ばす効果があります。その結果、1が元の0よりも10倍離れたところになります。 -1でスケールすると、1は0から同じ距離だけ離れていて、他の方向にあります。 – Fogmeister

+0

@DanielRahamimここを見てください。これでうまく説明できます... https://www.youtube.com/watch?v=Rw7DBXZs_k0 – Fogmeister