問題タブ [quartz-2d]

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

iphone - Quartz で方程式を描く

iPhone プログラミングの経験はありますが、グラフィックス プログラミングの経験はありません。

私は 2D ゲームを作成し、この目的のために Quartz 2D を選択することにしました (私は Open GL に精通していますが、2D ゲームには Quartz の方が簡単なようです)。

Quartz で数式のグラフを描画する組み込みの方法はありますか? 最初は放物線 (y=ax^2+bx+c) だけですが、方程式自体は将来的にもっと複雑になります。

独自のアルゴリズムを使用して (別々の線または点から) 放物線を描画すると、かなり遅くなる可能性があります。

前もって感謝します。

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

iphone - UIImageViewのCALayerのanchorPoint「プロパティの不明なコンポーネントにアクセスしています」エラー

右下隅を中心に画像を回転させようとしています。これを行うには、レイヤーのアンカーポイントを設定する必要があることはわかっていますが、アクセスできません。プロジェクトにQuartzCoreフレームワークを含めました。問題を可能な限り単純化するために、メソッドをこれらの3行に減らしましたが、それでも「エラー:プロパティの不明な「anchorPoint」コンポーネントにアクセスしています」というエラーがスローされます(2行目)。

それは本当に愚かなことであるに違いありません。私はこれの他の例を見ました、そしてそれらは同じように見えます。私は何が欠けていますか?

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

cocoa - NSBezierPathを削除する方法

私はNSBezierPath自分で作成したものを持っていて、それに-strokeと呼びました。オブジェクトの割り当てを解除せずにビューから削除/削除するにはどうすればよいですか?

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

iphone - iphone クォーツ線の周りに境界線を引く

iphoneのクォーツで線の周りに(黒い)境界線を描く最良の方法は何ですか? マップ上の道路に線を引いていますが、線が黄色の場合 (これは正当な使用例です)、道路の色に溶け込んでいます。私ができることの 1 つは、線を少し太い黒い線の上に置くことですが、これはあまり効率的ではないように思えます。

0 投票する
4 に答える
2766 参照

iphone - 互いの上に2本の線を描くiPhoneクオーツがワーム効果を引き起こす

iPhone用のQuartz-2Dを使って地図上にルートを表示しています。ルートは気温に応じて色分けされています。一部の道路は黄色に着色されているため、ルート ラインの下に少し太めの黒線を使用してボーダー効果を作成し、黄色の道路上でルートの黄色の部分が目立つようにしています。しかし、黒い線がルート線と同じくらい太くても、ルート全体がワームのように見えます (非常に醜い)。これは、最後のウェイポイントを次の開始ウェイポイントとして使用する代わりに、ウェイポイントからウェイポイントまで線を引いていたためだと思いました。そうすれば、いくつかのウェイポイントが欠落している場合でも、ルートにカットはありません。

ワーム効果なしで両方の行を表示するにはどうすればよいですか?

また、私は

エラー、でたらめだと思います。

ヒントください!:)


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

iphone - setNeedsDisplayInRect の問題 (quartz2d、iPhone)

2秒ごとにx個の正方形をランダムな位置に描画する関数を作成しました。同じ位置に正方形を 2 回描くことはできません。アプリがサイクルを完了すると、グリッドが塗りつぶされます。これで、描画される正方形の数が <=8 の場合は問題なく動作しますが、これより多い場合は、前の正方形と同じ位置に正方形がランダムに描画されます。

正方形をランダムな位置に描画する代わりに、上から下に描画しようとしましたが、これは完全に機能します。

これを数日間デバッグしてきましたが、問題はsetNeedsDisplayInRectにあると思います。

誰かが助けてくれることを願っています。取り乱してすみません、遅くなって頭がつぶれてしまいました、笑:)

以下はコードです....

}

}

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

iphone - いくつかのCATransformの後で、画面上のサブレイヤーの位置を見つけますか?

私のiPhoneアプリにはmainViewがあります。このMainViewにサブレイヤーとして追加されたのはCircleViewです。CircleViewは、3つの連結されたCATransform3D変換を使用して、電話が回転すると回転し、電話が傾斜すると傾斜します。DotViewはCircleViewのサブレイヤーとして追加されます。これらすべてのトランスフォームの後で、mainView座標系のdotViewの座標を知る簡単な(または明白な)方法がありません。

また、メインビューに追加された別のビュー、squareViewもあります。mainViewの座標系でsquareViewの座標を知っています。

Quartz 2Dを使用して、dotViewとsquareViewの間に線を描画したいと思います。2つの間に線を引くためにsquareViewの座標を見つけるにはどうすればよいですか?

ありがとう。

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

iphone - Quartz 2D の「ベベル」形状

基本的な形状やグラデーションの描画など、Quartz 2D 描画の基本のいくつかには精通していますが、次のように「面取り」された形状を描画する方法がわかりません。

ベベルサークル http://www.shaggyfrog.com/junk/beveled-circle.jpg

基本的に、1 つのコーナーに輝きがあり、反対側のコーナーに陰影があるかもしれません。この画像は私が作成したものではありませんが、近似できるようにしたいと考えています。

何か案は?これは iPhone 上にあり、組み込みのフレームワークを使用し、可能な限り外部ライブラリを避けたいと考えています。

0 投票する
4 に答える
8499 参照

iphone - buffer->CGImageRef->UIImage の正しいメモリ管理パターンは何ですか?

ビットマップデータを取得して UIImage * を返す関数があります。次のようになります。

ここで誰がどのメモリを所有しているかを正確に説明できる人はいますか? きれいに片付けたいけど、どうやって安全に片付けたらいいのかわからない。ドキュメントはこれらについて曖昧です。UIImagefreeを作成した後、この関数の最後でピクセル化してから UIImage を使用すると、クラッシュします。UIImage を作成した後にプロバイダーまたは imageRef を解放すると、クラッシュは見られませんが、明らかにピクセルがずっと通過しているように見えるため、これらの中間状態を解放することに慎重です。

(CF ドキュメントごとに、Create 関数から来ているため、後者の両方で release を呼び出す必要があることを知っていますが、UIImage が使用される前にそれを行うことはできますか?) おそらく、プロバイダーの dealloc コールバックを使用して、ピクセル バッファーをクリーンアップできます。 、しかし、他には何ですか?

ありがとう!

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

iphone - 画面上に動く吹き出しを描くための最速/最も効率的な方法-CoreAnimation、Quartz2D?

私はiPhoneアプリにいくつかの機能を追加しており、この問題を解決するための最速/最も効率的/ベストプラクティスのアプローチを選択するのに役立つ可能性があります。

画面の上半分には、画面全体(動的なxとyの位置)に変換されるUIImageViewである吹き出し(漫画本を考えてください)があります。ふきだしの背景に画像があるのでUIImageViewです。

各吹き出しには、画面の下部(レイヤーツリーの他の場所)を移動する一致する画像があります

尾(吹き出しからの三角形のビット)を描画して、三角形のポイントが下の画像を追跡し、三角形の底が上のUIImageViewの下部に接続されるようにします。(技術的には、ベースを突き合わせる必要はありません。背景画像の色を三角形に一致させることができる限り、ベースを重ねることができます)。

私はすでにすべての追跡を行い、CGContextStrokePathメソッドを使用して線を描画しましたが、線を三角形に置き換える方法に固執しています。

私はクォーツで三角形を描き、それを埋めることを見てきました。私の懸念は、吹き出しが1/10秒ごとに再配置されることです。概念実証に使用される線だけを描くと、パフォーマンスや視覚的な滑らかさにかなりの影響があったようです。

私が持っているアイデアの1つは、三角法を自分で行い、三角形の画像を伸ばして回転させて、これらの吹き出しのそれぞれを下のスポットに接続することです。より効率的でエレガントなソリューションがあるとのことですが、ドキュメントを見るとわかりません。この問題にどのように取り組んでいるか、またはどのように取り組むかについての助けをいただければ幸いです。ありがとう。