問題タブ [cgpathref]

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

ios - Objective C で CGPathRef をストロークする

ここで同様の質問を見てきましたが、例をうまく機能させることはできません。このパスを作成する方法は前の例とは少し異なるため、問題を説明します。

SpriteKit ゲームでスプライトがたどるパスを視覚化しようとしています。

これを別のメソッドで呼び出しますshipPathSKAction

CGPathRef shipPath = [self buildEnemyShipMovementPath:enemy];

パス作成方法:

これを考えると、画面上のパスを「見る」にはどうすればよいでしょうか。デバッグの目的で、パスのオンとオフを切り替えたいと思うかもしれません。

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

sprite-kit - パスをたどる方法: 長方形のパスの時計回りの方向?

SKAction を使用して Circle CGPathRef を時計回りにたどる方法について、 この回答を見ました。

長方形のパスはどうですか?デフォルトは反時計回りです。

エンドポイントを変更しようとしましたが、結果は同じです。

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

ios - X を指定して、CGPathRef の Y 値を取得するにはどうすればよいでしょうか?

ベジエ曲線である CGPathRef を扱っています。パスref上で等間隔のX、Y座標を100個取得したいと思います。

たとえば、この行では、等間隔の X 値に対して 100 個の Y 値を取得したいと考えています。

CGPathRef 現在、私は UIView を作成し、それを speed = 0.f でアニメーション化してから、アニメーションが停止するのを待ってから、ビューの x、y 座標を取得しています:

しかし、これは非常にハックであることは言うまでもありません。これを行うより良い方法はありますか?

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

ios - Touch iOS Sprite Kit で線を引く

次のコードを使用してスプライト キット シーンで線を描画していますが、何も表示されません。しかし、ノード数は増えます。何が問題なのか誰でもわかりますか。私は永遠にこのコードと戦ってきました

編集 ------ バックグラウンド ノードが削除されたときにコードが機能します。ありがとう

0 投票する
5 に答える
3085 参照

swift - SwiftでnilでCGPathMoveToPoint()を呼び出すことができません

CGMutablePathRef と CGPoint を入力として使用し、このような CGAffineTransformation の代わりに NULL/nil を使用して、Swift で CGPathMoveToPoint() を呼び出そうとしました。

ただし、式を NilLiteralConvertible 型に変換できないというエラーが常に表示されます。このコードが機能しない理由がわかりましたか? nil引数の代わりにSwiftで何を使用する必要がありますか? nil の代わりに CGAffineTransformidentity を使用してみましたが、どちらも機能しません。ありがとう!

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

ios - UICollectionViewCell に影を設定できず、角が丸くなっています。一度に 1 つの作品しか作成できない

サブクラスがUICollectionViewCellあり、その角を丸めて影も追加する必要があります。セルは正方形のカードのように見え、セル間に十分なスペースがあります。

したがって、すべてのセルの「下」に、影を追加したいと思います。私はこれをうまく行うことができますが、私のセルは底の角だけが丸くなっています。上部には通常の角があります。四隅すべてに丸みのある角が必要です。

ここで、別の を としてUIViews追加することを推奨する解決策を見つけましたが、パフォーマンス上の理由からこれを避けたいと思います。UIViewsubview

以下のコードにあるこのメソッドを使用する解決策が1つ見つかりました。

[UIBezierPath bezierPathWithRoundedRect: cornerRadius:]

しかし、それは私にとってもうまくいきませんでした。セルの「下」/下部にのみ影を追加しようとしているために、それが機能しない可能性はありますか? これらの回答のほとんどは、開発者がセル全体に影を追加したいという質問に対して提供されているようです。

subviewサブクラスにスペシャルを追加しても構わないと思いますがUICollectionViewCell、それは最後の手段として使用したいと思います。

狙っiOS 7+て使っていますXcode 6.1.1.

UICollectionViewCellこれは、サブクラス内で使用して、影と丸い角の両方を実現しようとしているコードです。

編集: に設定self.layer.masksToBoundsするNOと、影は機能しますが、上部の角は丸くなりません。に設定self.layer.masksToBoundsするYESと、影は機能しませんが、四隅すべてが丸くなりました。四隅すべてを丸めて影を機能させる方法がわかりません。

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

sprite-kit - CGPathMoveToPoint/CGPathAddLineToPoint メソッドのパラメーターがわかりにくい

ここで提供されている回答SpriteKit の SKPhysicsBody とポリゴン ヘルパー ツールを使用して、スプライト ノードの物理ボディのポリゴンを作成しています。

しかし、CGPathMoveToPoint/CGPathAddLinetoPoint メソッドのオフセット パラメータは紛らわしいです (Apple のドキュメントにも参照が見つかりません)。

そこでスクリプトによって生成されたコードでは、offsetX と offsetY は次のように定義されています。

デモンストレーション用に提供されている gif では、次のようになっています。

これらのオフセットは両方とも、次のような CGPathMoveToPoint/CGPathAddLinetoPoint メソッドのパラメーターを修正するために使用されます。

  1. なぜこのオフセットが必要なのですか?

  2. テクスチャの左下隅に、次のように (0,0) だけを指定できないのはなぜですか。

    CGPathMoveToPoint(パス、NULL、0、0);

  3. このオフセット (必要な場合) は、スプライト ノードが画面上を移動するときに変更されますか?

  4. 親シーンのアンカー ポイントが左上隅にある場合、これらのメソッドのオフセットはいくつになりますか?

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

ios - CGPathCreateCopyByStrokingPath の反対ですか?

パス オブジェクトの Fill 部分を表す CGPath または何らかのタイプのコレクションを返すためのコアまたはその他のフレームワーク メソッドはありますか?

基本的にCGPathCreateCopyByStrokingPathの反対を行うものを探しています。

低レベル テキスト レンダリングに関する記事の助けを借りて、アルファベットの各文字を表すパスを思いつくことができました。

問題は、パスが文字のアウトラインであり、実際に必要なのは、ストロークではなく文字の塗りつぶし部分のみを表すパスであることです。たとえば、文字「A」は 3 つの異なる行で構成されます。

私は現在、複雑すぎる 16 セグメント ディスプレイのように動作するクラスでこの問題を回避しようとしています。興味のある人のために、その努力からのサンプルコードを次に示します。