問題タブ [uibezierpath]

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

core-graphics - コア グラフィックス - 継ぎ目が斜めに結合された側面に表示されます

Core Graphics で問題が発生しています。2 つの図形が一緒に収まるはずですが、それらの辺が斜めになっていると、それらの間に継ぎ目が表示されます。これが問題を引き起こしています。形状を重ねることでこれを「修正」できます。これは単純なものには機能しますが、形状がより複雑になると、うまくいきません。

簡単な例を次に示します。

これにより、次のような継ぎ目が生成されます。 シームのスクリーンショット

これは、CGPathApply私が形状を処理するために使用しているコールバック関数で発生しているため、非常に問題があります (形状を分割し、いくつかの処理を行い、それらを再びまとめます)。このため、形状を歪ませずに継ぎ目を (オーバーラップによって) 除去するために、これらの形状をどのようにシフトする必要があるかを判断することは非常に困難です。特に、これらの形状の一部はかなり複雑です (単純な四角形ではありません)。

アンチエイリアシングをオフにすると(CGContextSetShouldAntialias(context, NO);)見た目が削除されることがわかりましたが、そうすると見苦しくなるだけなので、実際にはオプションではありません。

何か案は?

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

iphone - UIBezierPath を使用した六角形の描画

ポイント(または交点)が変化し、スライダーによって制御される UIBezierPath を使用して六角形を描画しています。お願いします。ここのスクリーンショットを参照してください: http://postimage.org/image/tq8z8t9qb/

ここでの問題は、最後のポイントが描画または移動されると、すでに間違っていることです(スクリーンショットを丸で囲みました)。ベジェパスの原点/中心点から余分な線が引かれていると思います。コードを確認していただければ幸いです:

お願いします。何が悪いのか教えてください。ありがとう

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

objective-c - 接続されたUIBezierPathsをマージします

任意の数の接続された個別のを単一の大きなパスに「マージ」UIBezierPathするようなインスタンスメソッドを利用する方法(コードまたは擬似コードアルゴリズム)はありますか?パスが多いドキュメントでは、冗長な情報が確実に存在するため、パスの数を減らすことで、エンコードされたファイルサイズを削減しようとしています。間違った木を吠えている場合は、知らせてください。appendPathUIBezierPath

0 投票する
0 に答える
195 参照

ios - CG パスが常にフェードアウトするのはなぜですか?

ここでいくつかの基本的な描画コードに奇妙な問題があります:

これは、for ループ内の多くの 1 つの 1 つのストロークです。

このためのコードは、for ループで次のとおりです。ビューにいくつかの垂直線を描画したいだけです。

その理由が思いつきません。あなたはできる?

前もって感謝します、クリスチャン

EDIT:水平線の描画は完全にうまく機能し、通常の幅でフェードアウトしません。

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

ios - UIBezierPathからUIImage

円グラフを描く必要があります。ここで素敵なチュートリアルを見つけましたhttp://mac-objective-c.blogspot.com/2009/04/drawing-pie-charts.html

この例ではNSBezierPathを使用していますが、IOSのグラフィックが必要なため、UIBezierPathを使用しています。

UIImageでそのグラフィックを取得してUIImageViewで表示できるようにする方法はありますか?

このチュートリアルhttp://blog.gafmediastudio.com/2010/07/02/draw-a-pie-chart-with-iphone-ipod-ipad/では、CGContextを使用し、最終的にUIImageを返す関数を使用します。 。

UIBezierPathクラスの方が使いやすいようですが、UIImageでその描画を取得するにはどうすればよいですか?私が読んだことから、drawRectを変更することはあまりお勧めできません。少なくとも、私がやろうとしていることではありません。

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

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

algorithm - ベジェ スプラインが座標軸を超えないようにする方法は?

私の iOS アプリでは、連続する 2 つの点を結ぶベジェ曲線ごとに 1 番目と 2 番目の制御点のセットを計算するアルゴリズムを使用して、一連の 2D ポイントを通るベジェ スプラインを描画します。アルゴリズムは見事に機能しますが、私の問題は、この曲線を X 軸と Y 軸のグラフに表示していることです。

点または軸上にいくつかの点があり、残りの点が内側にある場合は常に、曲線が U ターンして軸を超え、点と内側の点の両方を通過して 2 つに戻っているように見えます。

アルゴリズムの観点からは、何も問題はありません。このような場合の制御点は、座標軸の外側に生成されます。

ポイントを通過して、それらのいくつかが軸上にあるかどうかを確認し、曲線が曲線の外側に出るのではなく、軸上の両方の点を直線として通過するように制御点を変更する方法はありますか?座標軸。

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

ios - UIBezierPath上で複数のUIImageを均等に移動する

UIBezierPathを含むビューを作成しようとしています。これは現在機能しています。そのUIBezierPathにUIImages(ランダムな数の画像)を配置し、要求に応じて次のステップまたは前のステップにアニメーション化します。すべての画像を一度に、すべて同じ方向に向けます。

今、すべてのドキュメントを見てきましたが、理解できません。

だからうまくいけば、誰かが私を助けたり、正しい方向に私を向けたりすることができます。

お互いを追いかけている、お互いを獲得していない、すべてが異なる場所で始まっているいくつかのレースカーと比較できると思います。タッチで次のポイントに移動したいので、ループは必要ありません。

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

ios - iOS:逆UIBezierPath(bezierPathWithOvalInRect)

長方形に丸いオブジェクトを含むjpg画像があり、丸いオブジェクトの環境を透明にしたい...

例

(この例では赤い領域を削除します)

このiOSの助けを借りて、UIImageの一部を透明にし、「UIBezierPath bezierPathWithOvalInRect」で少し成功しましたが、これでオブジェクトの周りにパスが作成され、オブジェクトの内側ではなく外側を作成するために、オブジェクトを反転する必要があります。パスは透過的です。

正しい結果を得るためにコードをどこで変更しなければならないのかわからない。

これが私のコードです:

誰かが解決しましたか?

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

ios - iOS でパスをグラデーションで塗りつぶす

CAShapeLayerに、閉じた を描きましたUIBezierPath。を設定することでこの形状を塗りつぶすことができますがfillColor、形状をグラデーションで塗りつぶしたいと考えています。CAGradientLayerベジエ パスで輪郭を描かれた形状にクリップするように設定するにはどうすればよいですか?

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

objective-c - UIBezierPath に沿って UIImage を 2 つの部分に分割します

これUIImageを黒線で2分割する方法。の上部輪郭セットUIBezierPath

結果の 2 つの s を取得する必要がありますUIImage。それで、それは可能ですか?