所以我想使用 appendBezierPathWithPoints:count:
NSBezierPath中的方法。但该方法需要我使用 NSPointArray。这部纪录片并没有真正谈论它,我所能得到的只是它是一个 NSPoints 数组,我不知道该怎么做。我认为它使用了 c 数组机制,但我不确定。
谢谢。
所以我想使用 appendBezierPathWithPoints:count:
NSBezierPath中的方法。但该方法需要我使用 NSPointArray。这部纪录片并没有真正谈论它,我所能得到的只是它是一个 NSPoints 数组,我不知道该怎么做。我认为它使用了 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];
希望能帮助到你。