それは静かな複雑です。私は4つのUIViewを持っています。3つのビュー間で座標系を変換する簡単な方法は?
viewAはルートコンテナとして機能します。 viewBとviewCはviewAの子です。 したがって、viewAにはviewBとviewCが含まれています。
viewDはビューBの子です。
私はあなたのためにそれを "描く" ことを試みる:
viewA OWNS ((viewB OWNS viewD) && viewC)
私はviewBの層のtransform.rotation.zを回転させます。したがって、viewBは少し回転します。 ViewDはviewBに比べて少し回転しています。
また、viewCも他の値と同じように回転します。したがって、viewBとviewCの両方は、viewAに対して相対的に回転が異なります。 viewDはviewBに対して少し回転します。
viewCの回転をviewDを基準にして指定できるように、これらの座標系をすべて変換する必要があります。つまり、viewCのtransform.rotation.zがviewDと同じ場合、両方のビューが同じように(画面上で視覚的に)回転しているように見えます。
数週間前、私はUIKitが座標系の変換をサポートしていることをいくつかの論文で読んでいました。彼らはこの問題を解決するのに適しているかどうか?
私はviewBを回転させると、viewDはまったく同じ方法で遅れなく回転する必要があります。そのため、viewDはviewBのサブビューです。私は、異なる回転を伴うviewDの5つの「コピー」があることに言及しなかった。しかし、それらのすべてはviewBと一緒に回転しなければなりません。 –
viewBを回転するとviewDの回転につながる場合、viewCの回転とviewDの回転を等しくしたいので、viewCを回転させる必要もあります。あるいは私は誤解していますか? – hatfinch