0

2 つの CGPoints があります。私は一方から他方へ曲線を描く必要があります。どうすればそれを描くことができますか?コア グラフィックまたはベジエ パス? もしそうなら、私はいくつかのガイダンスが必要です。よろしくお願いいたします。

4

1 に答える 1

2

UIBezierPathまたは CGPath を使用します。UIBezierPathOS X のようNSBezierPathに動作します。ビューの drawRect: メソッドで、オブジェクトを宣言します。

UIBezierPath *aPath = [UIBezierPath bezierPath];

次に、最初のポイントを開始します。

[aPath moveToPoint: startPoint];

次に、制御点を含む曲線セグメントを追加します。これは、コントロール ポイントが必要な場所を把握するのが難しい部分です。

2種類あります。三次曲線

[aPath addCurveToPoint: aDestinationPoint controlPoint1: aControlPoint controlPoint2: anotherControlPoint];

二次曲線

[aPath addQuadCurveToPoint:aDestinationPoint  controlPoint: aLonelyControlPoint];

最後に、UIColor (Mac では NSColor) で set メソッドを呼び出します。次に、パスをストロークまたは塗りつぶします。

[aPath stroke];

ストローク幅を設定することもできます。

描画は手続き的に前に戻ることを覚えておいてください。別の色呼び出しを別の色に設定したい場合は、塗りつぶしまたは線の次の描画コマンドの前に行います。

イベントの CG バージョンは似ていますが、より複雑です。

http://developer.apple.com/library/ios/documentation/2ddrawing/conceptual/drawingprintingios/BezierPaths/BezierPaths.html

于 2013-05-27T09:23:53.910 に答える