問題タブ [catransform3d]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
646 参照

objective-c - UILayer カスタム 'コンパクト' アニメーション、アンカー ヘルプを探しています

レイヤーの下部が跳ね上がるレイヤーのアニメーションを作成しようとしています。上部に蝶番を付けたビューを考えてみてください。次に、ボタンが上下にアニメーションします。コンパクトの表紙みたいな。私が望むのは、標準的なフリップ アニメーションのようなものですが、片面だけを表示することです。アニメーションの構成に問題があります。

問題は、「ヒンジ」部分を作成できないように見えるアニメーションを正しく受け入れたことです。つまり、ヒンジは上部ではなく中央にあります。私は何が欠けていますか?

コードは次のとおりです。

上記のようにレイヤーをアニメーション化し、完了時にレイヤーのビューを他のすべてのビューの背後に送り、レイヤーを元の状態に戻して、後で前面に表示できるようにします。

助けてくれてありがとう!

0 投票する
5 に答える
3759 参照

opengl-es - Projection および ModelView マトリックスから CATransform3D を取得する方法は?

すべて、

特定のモデル ビュー マトリックスと特定の投影マトリックスに対して OpenGL-ES を使用して 3D モデルを描画する iphone プロジェクトがあります。3D モデルを CALayer に置き換える必要があったため、モデル ビュー マトリックスの値を CATransform3D 構造体に入れ、 に割り当てましたlayer.transform。それはうまく機能し、レイヤーが表示され、期待どおりに画面上で移動しましたが、しばらくして、レイヤーの動作が十分に正確ではないことに気付き、射影行列を考慮する必要があります。そして、問題が発生しました.2つのマトリックスを単純に連結すると、レイヤーが奇妙に見えるか(遠く離れているため、約300であるはずですが、非常に小さく、約2ピクセルです)、まったく見えません. どうすれば解決できますか?

コードの一部は次のとおりです。

どんな助けでも大歓迎です。

0 投票する
1 に答える
1124 参照

iphone - 3Dキューブ問題!パート1

を使用してiPhoneで3Dキューブを作成しましたCALayer's。ここで、ユーザーがそのcube()をダブルタップしたときにそのcube( CALayer)を回転させたいと思いました。90˚

CALayerそのcube( )を1回回転させることができまし90˚たが、ダブルタップするとcube(CALayer)が回転しません。

これが私がcube(CALayer)を回転させるために使用したコードです

誰もがこれを助けることができますか?私が間違っていること。


PS。どうやって学位を取得したのか疑問に思っている人のために、ここにトリックがあります

Option+K

0 投票する
1 に答える
1568 参照

iphone - UIView(内部にUIImageViewを含む)がスケーリングされた後にアンカーポイントをリセットする方法は?

UIImageView を含む UIView で catransform3dmakerotation を実行して、回転しているように見せたいです。それは機能しますが、UIViewをスケーリングした後(したがって、その中の画像を引き伸ばした後)、アンカーポイントが間違っています(グラフィックスの中心ではなくなりました)。

アンカーポイントをリセットするには?つまり、本当にリセットします。私はこれを試したので:

また、加速度計の値が変更されるたびに、再スケーリング後ほぼ 0.1 秒ごとに更新されます。画像は回転していますが、もはや中心ではなく、(0.5,0.5 ではなく、原点 (0,0) で回転しているように見えます)。 )、accelerometer: didAccelerate:メソッドで更新する必要があります。しかし、うまくいきませんでした。再スケーリングのコードは次のとおりです。

ありがとうございました!

0 投票する
2 に答える
18968 参照

iphone - CATransform3DRotateを使用してUIImageViewを回転させると、ドアが開くような効果が得られますか?

この記事を読んで試してみました(Core Animationを使用してドアを開く効果)

そして、アプリに次のコードを実装します。

threeHomeViewはUIImageViewです。

私の質問は、画像は画像の中央の垂直線でのみ回転できますが、画像の左の垂直線で回転させたいです。

0 投票する
1 に答える
3928 参照

uiview - CATransform3Dを理解する

UIViewでCATransform3DMakeRotationを使用していて、45度、後方に配置されているように変換しようとしています。

http://cl.ly/2A2p1W1e2N3a1W181r35

これは私が持っている「コード」ですが、明らかにそれをしていません。

パラメータを理解するのを手伝ってください。ありがとう。

0 投票する
1 に答える
441 参照

ios - CATransformLayer で動作するように OpenGL 変換マトリックスを変換する

プロジェクトで Stringの Augmented Reality SDK を使用しています。基本的に、この SDK は、認識した画像の一連のマーカーと、iPhone のカメラ ビュー内の 3D 空間でマーカー画像が配置されている場所を概説する関連する OpenGL マトリックス変換を返します。私がやろうとしているのはCATransformLayer、シーンに対してマップして、マーカー画像上で適切な向きに表示され、その場所でビデオを再生することです。マトリックス変換 ( に変換) が適用された a のAVPlayerLayer中に座って、これを行うことができると思いました。CATransformLayerCATransform3D

私が知る限り、これは特にうまく機能しません — 元の OpenGL マトリックスと の背後にあるマトリックスの間の論理マッピングを取得できないようですCATransform3D

マーカー変換とオブジェクトの間の直接変換を行うと、かなり混乱していることがわかりCATransform3Dます (青いビットは私のレイヤーです)。

この問題の現在の状態のスクリーンショット

CALayer私はそれらが同じであると仮定しました( GLのバッキングのためにそれらが同一であると何度か言われました)。これは本当ですか?何か不足していますか?

ビデオをテクスチャとしてシーンにレンダリングすることに戻ることもできますが、可能であれば、物事を高レベルに維持することをお勧めします — アイデア/コメント/考えはありますか?

0 投票する
1 に答える
5433 参照

ios - CATransform3DIdentityの基本的な説明を教えてもらえますか?

私はゆっくりとCoreAnimationについて真剣になりつつあり、CATransform3DIdentityをゆっくりと説明する短い単語(入力された?)で構成される説明と、次のコードがそれを実行する理由(「3D」スペースでレイヤーを反転する)を大いに感謝します

考え直して、すばやく入力し、心ゆくまで多音節の単語を使用しますが、優しくしてください。

PS。アニメーションをもっと上手くやるなら、線形代数をもっと快適にすべきだという印象を受けます...これは正しいですか?

0 投票する
2 に答える
1038 参照

uiview - UITableViewCell 内の CATransform3D を使用した UIView = チョッピー スクロール

私はカスタムUITableViewCellを使用しており、そこにサブクラス化されたUIViewを配置しています (内contentView、ナッチ)。問題のUIViewには、方向矢印と 2 行のサポート テキストが表示されます。

矢印は、背景色と矢印形のマスクを持つレイヤーによって表示されます。矢印が指している方向に応じて、背景色が 2 つの可能性のいずれかに変化します。

ビューは、矢印を更新する必要があるたびにNSNotificationを受け取ります (現在の見出しに基づいていますが、同一ではありません - 各セルとビューは異なります)。通知を受け取ると、ビューはプライベート メソッドを呼び出して変換を実行します。これにより、矢印レイヤーがアニメーション化され、次のように、その中心を中心に新しい方向に効果的に回転します。

(注:_arrowLayer内部使用のみであり、プロパティを通じて公開されません。)

UIViewには、サポート テキストの作成に使用される情報を設定するためのプロパティもあります。これが変更されsetNeedsDisplayて呼び出されると、drawRect:メソッドは計算を行い、結果のテキストを描画します。

それはすべて順調です。ただし、私が直面している大きな問題が 1 つあります。

矢印がアニメーション化されているのと同時にテーブルビューをスクロールすると、メジャーリーグのスクロールが途切れ途切れになり、スクロールが短く停止することがよくあります。これが (最小限のテスト ケースの名前で) の唯一のビューであってもcontentView、問題ではありません。

デバイスを動かさない場合、スクロールはある程度許容されますが、改善の余地があります。

私は単に根本的な誤りを犯していることを願っています (使用しないでdrawRect:ください。他の方法で変換しますか?上記のどれもありませんか?)

手がかり/アドバイスをよろしくお願いします!

2011 年 10 月 4 日更新: UITableViewControllerにUIScrollViewDelegate ( UIScrollViewプログラミング ガイドに従って) を監視させて、スクロールの開始/停止を試みた後、各方向矢印ビューがデリゲート (この場合はテーブル VC) にアニメーション化してもよいかどうかを尋ねます。これもあまり役に立ちません。アニメーションが進行中の場合は、運が悪いです。おそらく、方向矢印ビューで特定の通知を探しているNSNotificationが適切です。(少し逆に聞こえますね。他のオブジェクトに、送信できることを通知するということですか?うーん。)

0 投票する
1 に答える
1280 参照

iphone - CATransform3DMakeTranslation で設定された期間

スタックオーバーフローに関する私の最初の質問:)

CALayer で y 軸の変換を行いたいです。私は大きな背景を手に入れました:320x4000px。翻訳は次のコードで動作しています:

しかし、このコードでは、期間を設定することは不可能です...

私はそれで試しました:

しかし、うまくいきません...

手伝ってくれてありがとう :)