2016-04-08 10 views

答えて

19

は、画像の中心である

matrix.postScale(1, -1, cx, cy); 
+0

どのように画像の中心を見つけるのですか? –

+2

@MayurRokade 'source.getWidth()/ 2f'' source.getHeight()/ 2f' – weston

-1

あなたが使用しているマトリックスに関するすべてのこと。 x軸の周りを反転するには、[[-1,0]、[0、1]]を使用します。 y軸については、[[1,0]、[0、-1]]を使用します。ここで重要なのは、行列式の絶対値が1であるため、スケールされないことです。そして、 - 基本的に、与えられた軸の周りの位置を逆転させます。 xの

フリップ:

matrix.postScale(-1, 1, cx, cy); 

フリップyの:cx,cy考える

+0

問題であり、100のXはXになります - 100の場合は、原点ではなく画像の中心付近で発生する必要があります。 – weston

+0

次にキャンバスを最初に翻訳します。 –

+1

翻訳をマトリックスに適用することを意味する場合は、後で翻訳する必要があります。つまり、(-cx/2、-cy/2)、縮尺変換、翻訳(cx/2、cy/2) 'を行うことができます。 – weston