2009-05-13 8 views
3

よく定義された軸でビューを回転させるために、anchorPointプロパティを設定しようとしています。 しかし:レイヤーの境界矩形のanchorPointの設定が奇妙になるのはなぜですか?

myView.layer.anchorPoint = CGPointMake(myView.layer.anchorPoint.x - 1.0, myView.layer.anchorPoint.y); 

Wenn私は-1.0でそれをシフトし、それだけで左に1単位移動しません。代わりに、私の全体の視点はビューの幅だけ右に動いています。

どのような座標系ですか?それは逆転しているようです。しかし、ユニットもmyView.frame.size.widthなどのユニットと一致しません。

答えて

12

anchorPointは、レイヤ内の正規化された位置です。つまり、(0.0、0.0)はレイヤーの左上隅です(iPhoneの反転UIViewレイヤー座標系内)。(1.0,1.0)は右下隅です。 (0.5、0.5)はレイヤーの中央です。これらの位置は、サイズに依存しないため、単に相対位置です。

これにより、anchorPointが絶対座標であった場合、そのanchorPointの縮尺を変えることができます。

+0

ありがとうございました。私は層内の正規化された位置の意味について考える必要がありました。しかし、今私はそれを得る。これらはパーセント値です。 – Thanks

+0

編集:まあ、ある種のパーセント。あんまり。 – Thanks

+0

合計の長さまたは幅の一部はかなり近い解釈になります。これはCGColorのようなもので、RGBAコンポーネントのそれぞれに対して0から255の代わりに、0.0から1.0になります。 「標準化された」は専門用語のビットです。 –

関連する問題