appendBezierPathWithPoints:count:
そこで、NSBezierPathのメソッドを使用したいと思い ます。ただし、このメソッドではNSPointArrayを使用する必要があります。ドキュメンタリーはそれについてあまり語っていません。私が得ることができるのは、それがNSPointの配列であり、その方法がわからないということだけです。c配列メカニズムを使っていると思いますが、よくわかりません。
ありがとう。
appendBezierPathWithPoints:count:
そこで、NSBezierPathのメソッドを使用したいと思い ます。ただし、このメソッドではNSPointArrayを使用する必要があります。ドキュメンタリーはそれについてあまり語っていません。私が得ることができるのは、それがNSPointの配列であり、その方法がわからないということだけです。c配列メカニズムを使っていると思いますが、よくわかりません。
ありがとう。
はい、に渡すポイントのCスタイルの配列が必要ですappendBezierPathWithPoints:count:
。たとえば、次のようなことを行うことができます。
NSPoint pointArray[3];
pointArray[0] = NSMakePoint(0, 0);
pointArray[1] = NSMakePoint(0.5, 0.25);
pointArray[2] = NSMakePoint(1, 1);
[lines appendBezierPathWithPoints:pointArray count:3];
ここlines
で、はのインスタンスですNSBezierPath
。
より複雑なケースでは、可変数のポイントを使用します。
Objective-Cスタイルの配列を使用する場合は、この目的でNSValueクラスを使用する必要があります。
NSMutableArray *array = [NSMutableArray array];
CGPoint myPoint;
myPoint.x = 100;
myPoint.y = 200;
[array addObject:[NSValue valueWithPoint:myPoint]];
アレイからNSPointを取得するには、次のようにします。
myPoint = [array[0] pointValue];
それが役に立てば幸い。