如何将值转换为CGPoint?

时间:2011-05-01 10:19:51

标签: iphone cgpoint

我的Xcode-Project出了问题,希望你能帮助我! 我刚刚开始编码,所以我的问题应该很容易解决。

我想用两个桨和一个球做一个乒乓球比赛。我有一个值,介于0和1之间。如果值很高,那么桨也应该上升。可以使用“CGPoint”更改球拍位置,但如何将我的值转换为点?

请帮帮我。 谢谢和来自德国的问候:)

3 个答案:

答案 0 :(得分:6)

CGPoint是一个二维点。

struct CGPoint {
  CGFloat x;
  CGFloat y;
};
typedef struct CGPoint CGPoint;

您可以使用CGPoint创建CGPointMake(x,y)。 当您的值介于0和1之间时,您可能希望通过乘以常数因子来缩放x或y。

答案 1 :(得分:0)

我对桨控件有了更好的想法:

您可以使用用户触摸输入来控制球拍:

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {

    UITouch *touch = [touches anyObject];
    CGPoint pointToMove = [touch locationInView:self.view];

    yourImage.center = CGPointMake(yourImage.center.x, pointToMove.y);

}

当用户触摸屏幕时,拨片移动到触摸的.y位置,但保持在其默认状态x坐标!

这样,控制器就会更加流畅。试试吧!

Viel Spass beim programmieren:D

答案 2 :(得分:0)

这是我的应用程序执行此作业的确切代码

for (id obj in points) {
[self moveToPoint:[((NSValue*) obj) CGPointValue]];