問題タブ [cgpath]
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.
ios - How to reverse the point order of a CGPath
I want to draw a Circle with Letter punched out of it. to do this, I need to stroke the circle clockwise and the letter counterclockwise.
That is all good and well, but when I get the letter path using Core Text I can't figure out how to essentially reverse the path. NOT MIRROR or ROTATE or anything...that is straightforward enough. I want the point stroke order to be counterclockwise.
it is actually hilariously difficult. I've had entirely too many visual 'off by one' errors.
ios - CGPathCreateCopyByStrokingPath は iOS4 で同等ですか?
iOS 5.0 で CGPathCreateCopyByStrokingPath を使用すると非常に便利であることがわかりましたが、iOS 5 以降で使用できます。
iOS 4 で同じパスをコピーする簡単な方法はありますか?
ios - CGPath を持つ UIView と、最初のものを含む別の UIView。最初のビューを2番目のビューに合わせる方法は?
問題は...
パスがあり、それを描画するビューを作成します。ビューは同じ次元のパスを持っています。次に、 sizeThatFit: メソッドをオーバーライドする 2 番目のビューを作成して、2 番目のビューのすべてのスペースがいっぱいになるまで最初のビューがスケーリングされるようにします (sizeThatFit: メソッドが何をするかについての私の考えです!それが正しいかどうかはわかりません)。それがコードです:
SecondView では、 sizeThatFit: メソッドをオーバーライドしました!
なぜうまくいかないのかわからない!パスは常に同じ次元です。私は道を取り、道が彼の次元を取るビューでそれを描きます. したがって、たとえば、パスのboundingBoxが[10,10]でビューが[100,100]の場合、そのパスはビューの次元と同じ大きさになります。どのようにできるのか ??
問題が十分に明確であることを願っています。私の英語でごめんなさい:)
これは FirstView.m です。
編集:
私が行った場合
SecondView.mi オーバーライド sizeThatFit メソッドでは、最初のビューが適合されます!!! 問題は、パスも適合していないことです!!! それは常に同じ次元を持っています:(
EDIT2
私もこの方法で試しました:
しかし、何も!すごいストレスです(´;ω;`)
Pls 私は助けが必要です!
core-graphics - CGPathの起点を特定するにはどうすればよいですか?
内にテキストを描画しています。CGPath
テキストのヒットテストを行うために、を使用していCTFrameGetLineOrigins
ます。ドキュメントの内容は次のとおりです。
各CGPointは、フレームのパスの原点を基準にして、CTFrameGetLinesによって返される線の配列内の対応する線の原点です。
フレームのパスの原点を見つけるにはどうすればよいですか?例私が見つけたのは、パスが最初に作成されたときに、パスの起点をすべて保存することです。これには2つの問題があります。
- 私のパスの作成は、ヒットテストを行っている場所からかなり離れています。
CGPoint
に加えて、を渡していることを確認する必要がありCGPath
ます。醜いですが、乗り越えられないわけではありません。 - 長方形ではない形状の起源は何ですか?円形のCGPathの起源は何ですか?
objective-c - iOS Core Graphics: CGPath の影のみを描画する
Core Graphics を使用して iOS 5 で簡単なパスを描画しています。
今、次のようにオーバーレイモードで塗りつぶしたいと思います:
これにより、まさに期待される結果が得られます。しかし、次はエンボス効果を作りたいと思います。この効果を実現するために、白と黒のドロップ シャドウを次のように使用することを考えました。
問題は、アルファが 0 に設定されている場合、影が描画されないことです
。ここで質問:塗りつぶしの色を使用せずに完全なアルファで影のみを描画する方法はありますか? どうにかパスの内側が描画されないようにすることはできますか? それとも、1 つのパスに 2 つの影を描く簡単な方法はありますか?
iphone - CAEmitterLayer を使用して、円または CGPath の周りにパーティクルを描画します
iOS 5 のパーティクル システム (CAEmitterLayer および CAEmitterCell) を使用して、円 (CGPath) の周りにパーティクルを描画しようとしていますが、その方法がわかりません。私ができる最善の方法は (CAEmitterCell の yAcceleration プロパティを変更して) 円弧を作成することですが、完全な円を作成することはできません。もちろん、円をシミュレートするために複数の円弧を作成することもできますが、「結び目」が非常に目立ちます。また、エッジのパーティクルがトリミングされているように見えるため、マスクを使用したくありません。それを行う方法はありますか?
objective-c - パスが同じままになるように CGPathCreateMutable() を移動しますか?
画面全体に 9 つの六角形のスプライトがあり、それらの領域をタッチ可能にするために、それらの周りに特定のパスを指定する必要があります。すべての単一パスの座標をそれぞれ設定したくないので、最初のパス (六角形はすべて同じサイズ) を使用して、その原点を別の位置に移動することはできませんか? (今それを行うと、CGPathAddLineToPoint(); は前の六角形から六角形のポイントを追加します。アイデアが理解できたと思います... (写真を参照... 注: 右上の灰色の八角形は黒いものとまったく同じサイズと形状)![移動パスの座標と形状][1]
hex2TouchArea=CGPathCreateMutable();
ここに画像でそれを示す写真を載せます
http://666kb.com/i/bz2ysevuw8n65rh3i.gif
*編集:投稿から解決策を得て、少し変更しました:*
objective-c - CGPathを埋めることができません
私は自分の道を埋めるのに助けが必要です。CGContextFillPath(path);
たとえば、どこに置くべきかわかりません。私は描画(およびiOS開発)にかなり慣れていないので、2時間近くすべてを実際に試しました。しかし、私はただあきらめなければならないところに到達しました...あなたが私の問題にいくらかの光を当てることができることを願っています。次のエラーが発生します:invalid context
cocoa-touch - 画像からの CGPath
画像(可能な形状)に基づいてマスクを作成する必要があります。する必要がある:
- 適切なマスクとして CGPath を使用して CALayer を作成します。
- [UIView.layer setMask: 上のレイヤーで] を呼び出します
主な大きな問題は、白黒画像に基づいて CGPath を設定する方法ですか? または、画像から直接マスクを配置することは可能ですか?
ありがとう!
マスクの画像例: