Objective c 如何使用NSPointArray?
因此,我想在NSBezierPath中使用方法Objective c 如何使用NSPointArray?,objective-c,cocoa,nsbezierpath,Objective C,Cocoa,Nsbezierpath,因此,我想在NSBezierPath中使用方法appendBezierPathWithPoints:count:。但该方法要求我使用NSPointArray。这部纪录片并没有太多关于它的内容,我所能得到的只是它是一系列的N点,我不知道如何做到这一点。我认为它使用了c数组机制,但我不确定 谢谢。是的,您需要一个C样式的点数组来传递给appendBezierPathWithPoints:count:。例如,您可以执行以下操作: NSPoint pointArray[3]; pointArray[0
appendBezierPathWithPoints:count:
。但该方法要求我使用NSPointArray。这部纪录片并没有太多关于它的内容,我所能得到的只是它是一系列的N点,我不知道如何做到这一点。我认为它使用了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];
其中,line
是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];
希望能有帮助