問題タブ [cgaffinetransform]

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 に答える
3575 参照

iphone - なぜ/どのように CGAffineTransformTranslate が機能するのかわかりません

ビューを作成し、画面を左から右に移動させています。思い通りに動作させるのに苦労しましたが、実行したとき、その動作方法に困惑しました.

画面外の左側にビューを作成し、CGAffineTransformTranslate を使用して画面に移動する必要があると思いました。しかし、代わりに画面上で作成していますが、それでもうまく機能します。私は少し混乱しています。

ここで私はビューを作成しています...

ご覧のとおり、原点は 0,0 です。画面上ですよね?

こちらがトランスフォーム...

ご覧のとおり、tx 値を CGAffineTransformTranslate の幅に設定しています。これは、現在の位置から移動したいピクセル数の値であると考えていました。origin.x は 0 です。画面中央のどこか。代わりに、新しい origin.x が必要な場所に 0 でスライドします。

ところで CGAffineTransformIdentity は、ビューを画面からスライドさせて戻すのに最適です。

誰かが私にこれを説明できますか?ドキュメントは別のことを言っているようです。

ありがとう、

ジョン

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

ios - CGAffineTransformが段階的に適用されないようにする

CGAffineTransformRotateとCGAffineTransformTranslateを使用して、画面全体の車の画像(UIImageView)の進行状況をアニメーション化します。アニメーションはUISliderによって制御されるため、ユーザーがスライダーを進めると、車が進み、角を曲がります。UISliderの各ポイントについて、車のCGAffineTransformRotateプロパティとCGAffineTransformTranslateプロパティの絶対値を設定できる必要があります。

ただし、変換が呼び出されるたびに、車の画像は段階的に変換されます。したがって、たとえば、スライダーポイント0.01でこれを使用する場合:

そしてこれはスライダーポイント0.02で:

スライダーの値が0.02の場合、車を10度にし、x値を8、ay値を-20にします。しかし、私が得ているのは、x値が12、ay値が-30の15度の車です。これは、最初の変換後に到達した値に2番目の変換を適用しています。

車のUIImageViewの基本値に各変換を適用するにはどうすればよいですか?つまり、変換されていないUIImageViewに基づいて、各変換を絶対的にする必要があります。変換をインクリメンタルにしたくありません。

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

ios - ピンチしてズーム UILabel

私はピンチ ジェスチャを処理しており、次のUILabelようにスケーリングしています。

問題は、ズームイン (ラベルを大きくする) すると、それ自体が再描画されないことです。つまり、ぼやけてしまいます。またシャープにするにはどうしたらいいですか?

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

iphone - 向きが変わったときに同じ位置で画像を 90 度回転させる

これを行うことになりました: 複数の向きをサポートする最も簡単な方法は? アプリケーションがランドスケープの場合、カスタム NIB をロードするにはどうすればよいですか? 素晴らしい作品!

Photoshop で作成した画像を、iPad アプリケーションの情報画面の背景として使用します。画像にはテキストといくつかのアイコンも含まれています。画像の周りに緑色の境界線があります。

私が達成しようとしている効果は次のとおりです。

ユーザーが縦向きから横向きに移動すると、画像 (フレームとアイコンのみ) を 90 度回転させて、フレームを横向きに縦向きに表示するのではなく、横向きモードで表示するようにします。テキストとアイコンは分離されており (異なる UIImageView で編成した異なるレイヤー)、90 度回転します。

私がすでに行ったことは次のとおりです。

この方法で少し実験しました:

そしてこれをやろうとしました:

正のラジアンを指定しているため、btnFacebook プロパティを右に 90 度回転させると思います (間違っている場合は修正してください)。私はそれを正しく動作させることができないようです。これは、フレーム内の中心座標を中心にボタンを 90 度回転させるべきではありませんか? それはボタンの位置の変化を引き起こさないでしょうか(ボタンは四角です)?

編集

画像を作成しました:

ここに画像の説明を入力

画像が画像の背景 (両方の向きで見栄えのするいくつかのカスタム グラフィック) を示しているため、縦向きから横向きになり、回転するため、横向きでは縦向きとして表示されません。アイコンは背景から切り離されているため、次のように回転する必要があります。正しい向きにする必要があるためです(ソーシャルアイコンです)。ただし、テキストは同じ位置にあります。位置を変更せずに 90 度回転するだけです。

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

ios - iOS 2D Transforms: 使用するライブラリ

iOS で 2D 変換を実行する必要があります。UIView の transform プロパティを使用して変換を適用できることを知っているので、呼び出し可能な最適化されたコードがどこかにあると想定しています。ただし、これがopenGLの上にあることもかなり確信しているので...

iOS で簡単な変換を (高速に) 実行するには、何を使用できますか? ポイントを移動して回転させるだけです。

0 投票する
3 に答える
3087 参照

xcode - UIImageView のアニメーション回転

ボタンを押した後(360度)、UIImageViewを中心に時計回りに回転させたい...

それを行うには多くの方法があることがわかりましたが、何もうまくいきませんでした... :-)

CABasicAnimation にフレームワークを追加する必要はありますか?

UIImageView をその中心を中心に (360 度) 回転させるためのサンプル コードを誰かに教えてもらえますか?!?

前もって感謝します

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

ios - UITextView への変換の適用 - コンテンツのサイズ変更を防ぐ

に回転変換を適用し、UITextView内側をクリックして編集を開始すると、コンテンツのサイズが自動的に拡大されているように見えます。コンテンツ ビューの新しい幅は、回転したビューの境界ボックスの幅です。たとえば、幅 500、高さ 400 のテキスト ボックスを 30 度回転させた場合、新しいコンテンツの幅は次のようになります。

またはグラフィカルに:

ここに画像の説明を入力

興味深いことに、既にテキスト ビューを編集してから変換を適用すると、コンテンツ サイズに変更が加えられていないように見えます。そのため、テキスト編集の開始前後で、テキスト ビューはそのframeプロパティを参照し、フレーム幅に基づいてコンテンツ サイズを調整するようです。これに対する解決策は、bounds代わりにプロパティを使用するように指示することだと思いますが、テキストビューがコンテンツサイズを変更することを決定している場所が正確にわからないため、どこでこれを行うべきかわかりません。

私はグーグルで検索しましたが、変換された UITextViews を使用するための参照が見つからないようです。これについて何か考えがある人はいますか?

EDIT(テストプロジェクトからのボタンアクション):

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

iphone - CGAffineTransformMakeScale とサブビューの挿入

ビューに(たとえば、スケール= 3.0)を適用した後 CGAffineTransformMakeScale(scale,scale)、スケーリングは問題ありません。しかし、スケーリング後にサブビューをプログラムで挿入しようとすると、サブビューも3倍にスケーリングされ、スケーリングしたくありません。私が間違っていることは何ですか?

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

iphone - 「-setTransform:」という名前の複数のメソッドが見つかりました

-setTransformという名前の複数のメソッドが見つかりましたという警告エラーが表示されます。ヘッダー ファイルに #import AVFoundation/AVFoundation.h がある場合にのみ表示されます。助言がありますか?ありがとう

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

iphone - UISlider Xcode を使用するロジック

現在、XCode で UISlider を制御しているところに行き詰まっています。Interface Builder で水平スライダーを作成し、コントロールを xcode でコーディングしました。今のところ、ロジックをコーディングする方法がわかりません。ユーザーがペン先を左にスライドすると、画像が反時計回りに回転し、右にスライドすると画像が時計回りに回転します。

設定したスライダーの最小値は 0 で、最大値は 100 です。初期値は 50 です。

変換には CGAffineTransformMakeRotation(myAngle) を使用しています。myAngle を float に設定しました。条件については、コードのスニペットを次に示します。

ペン先をスライドさせると、反時計回りにしか回転しません。使用できる最適なロジックは何ですか? 誰かが助けてくれることを願っています。ありがとう。

-ハキモ