問題タブ [cashapelayer]

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 投票する
1 に答える
7851 参照

ios - UIImageViewIOSの上に円を描くための最良の方法

ユーザーがカメラで撮ったばかりの写真を表示するUIImageViewがあります。その画像に、設定されたサイズの透明な可動円を描く必要があります。したがって、ユーザーが画像上で指をドラッグすると、円も一緒に移動します。次に、ユーザーが指の移動を停止すると、円は同じ場所にとどまります。

CAShapeLayerでアップルのドキュメントを読んでいますが、それでも最善の方法がわかりません。UIViewを描画する必要がありますか?

どんな例でも素晴らしいでしょう。ありがとう。

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

ios - CAKeyFrameAnimation を使用した時変描画の効率的なアニメーション

私の現在の目標は、iOS アプリで画像の描画をアニメーション化して、ユーザーが画面でhttp://www.youtube.com/watch?v=xlDmk5WdaHkのようなことが起こっているのを見ることができるようにすることです。

描画の加速は時間とともに変化するため、 と を使用CAKeyFrameAnimationしてアニメーションを作成しkeyTimesました。現時点では、描画のすべてのポイントを指定するベジエ パスが 1 つしかありません。そのパスをCAShapeLayerオブジェクトに追加し、アニメーションを開始するときにそのパスをアニメーション オブジェクトに渡します。

私の問題:完成した図面がすぐに画面に表示され、ペン カーソルがkeyTimes値に従って画像に沿って移動します。ビデオ。

この SO の質問に気付きました。推奨される解決策は、アニメーションのすべてのポイントに対して個別のパスを生成することでした: How to Animate CoreGraphics Drawing of Shape Using CAKeyframeAnimation

100 ~ 300 個の個別のポイントがある場合、次の形式のパスを使用して数百のパス (各パスに数百の値を持つ) の配列を作成するよりも、時変図面を作成するより効率的な方法はありますか?

次に、そのパスの配列を取り、それを my ?に渡してmyAnimation.valuesアニメーション化します。それとも、これが本当に最善の方法ですか?valueskeyTimes

前もって感謝します

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

ios - 画面上で順次 CAKeyFrameAnimations が消える

編集: の添付コードCAAnimationGroup、アニメーションは順次描画されますが、開始するとfirstAnimation消える問題がまだ発生しており、ドキュメントで次のように述べています:secondAnimationCAAnimationGroup

animations プロパティ内のアニメーションの removedOnCompletion プロパティは現在無視されます。

どうすればこれを回避できますか?


CAKeyFrameAnimation同じレイヤーで複数のオブジェクトをアニメーション化して、firstAnimation終了時に描画されたパスが開始されたときに画面に残るようにしようとしsecondAnimationているため、最終結果は画面上で両方のオブジェクトのパスから一緒に作成された画像になります。

現在、両方のアニメーション オブジェクトを (順番に) 同じメソッドに入れて呼び出すとsecondAnimation、画面にのみが描画されます。それらを分割して順番に呼び出すとfirstAnimation、画面に引き込まれ、起動すると消えsecondAnimationます。アニメーション自体は意図したとおりに機能します。

私が探しているもののように見えるCAAnimationGroupので、例を探してみましたが、私が見たいくつかの例から、何が起こっているのか、または私が探している効果をどのように生み出すのかは本当に明らかではありません.両方のアニメーションを連続して描画し、結果を画面に保持する方法を誰か教えてもらえますか?

これが私のレイヤー、2 つのアニメーション、および私のグループです。

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

iphone - CGPathを使用して4つのCALayersで画像を作成しましたが、ズームインおよびズームアウトするにはどうすればよいですか?

CGPathを使用して4つのCALayersで画像を作成しましたが、ズームインおよびズームアウトするにはどうすればよいですか?

写真には、4つの異なる円、長方形、およびより複雑な形状が含まれていましたが、UIRefreshControlのようにズームインおよびズームアウトしたいと思います。すべての形状を同時に制御して、元の形状のように見せることは非現実的です。

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

ipad - 写真ロールから画像をロードし、その上にロールから他の画像を追加し、場合によっては並べ替えて、最終製品を保存するにはどうすればよいですか?

現在、フォト ロールにある既存の画像からいくつかの合成画像を作成しようとしています。写真ロールからUIImageViewに画像をロードしてユーザーに表示するように見えるコードがあります。(これがそれを行うアクションです:)

次に、より多くの写真を選択できるようにしたいのですが、現在の写真を置き換えるのではなく、それらを重ねて配置したいと考えています。最後に、ユーザーが画像のレイヤー化を完了したら、最終製品をフォト ロールに保存できるようにしたいと考えています。

これを実装するにはどうすればよいですか?どこから始めればよいかわからない...

前もって感謝します、

マリーナ

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

ios - サブレイヤー要素へのタッチを検出する

UIControl クラスのサブクラスとして MyCustomView ビューがあります。私は自分のビューに次のようなものを描きます:

とにかく「ライン」のタッチを検出して何らかの作業を行うのですか? たとえば、「行」を移動します。

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

objective-c - 任意の形状の CGPath を長方形にアニメーション化する

CAShapeLayerユーザーが画面上で指をなぞると更新されるパスを表示するために を使用しています。このパスを、パスを囲む長方形に変換したいと思います。長方形をうまく計算できます。トリッキーな部分は、変換をアニメーション化することです。

pathドキュメントでは、プロパティのアニメーション化について次のように述べていますCAShapeLayer

2 つのパスのコントロール ポイントまたはセグメントの数が異なる場合、結果は未定義です。

では、長方形にコントロール ポイントを追加するにはどうすればよいCGPathでしょうか。または、このアニメーションを実現するためのより良い方法はありますか? ありがとう。=)

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

iphone - CAShapeLayerマスクをUIViewに適用する

このコードを使用して、UIviewにレイヤーを適用しています。

切り取りたい長方形が変わるので、UIviewからマスクを削除して別の寸法で再適用するのではなく、マスクのサイズをすばやく変更する方法があるかどうか疑問に思いました。

例えば

と...

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

ios - UIVIewに合うようにCGPathをスケーリングする

UIViewに適合するようにCGPathをスケールダウンまたはスケールアップする方法を知る必要がありますか?

背景色を黄色に設定します。ビューをはっきりと見るには

CAShapeLayerを描画します

それから私はこれを手に入れます: ここに画像の説明を入力してください

私が欲しいのはこれです: ここに画像の説明を入力してください

開発者に感謝します:)

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

iphone - CAShapeLayerパスとfillColorをアニメーション化する方法

CAShapeLayerパスとfillColorをアニメーション化する方法は?

描画されているパスを表示するためにstrokeEndをアニメーション化する方法は?そしてfillColorをアニメーション化する方法は?