创建点并将其与线连接

时间:2014-02-03 11:59:36

标签: ios iphone ipad

我希望在随机坐标的屏幕上创建多个点,然后将点连接到最近的点

或者说,我们有一个10(视图的x,y位置)的数组比?

for (int i=0; i<MATRIX_SIZE; i++) {
    for (int j=0; j<MATRIX_SIZE; j++) {
        UIImage *dotImage = [UIImage imageNamed:@"dot_off.png"];
        UIImageView *imageView = [[UIImageView alloc] initWithImage:dotImage
                                                   highlightedImage:[UIImage imageNamed:@"Icon.png"]];
        imageView.frame = CGRectMake(0, 0, dotImage.size.width, dotImage.size.height);
        imageView.userInteractionEnabled = YES;
        imageView.tag = j*MATRIX_SIZE + i + 1;
        [self.view addSubview:imageView];
    }
}

指导我在随机位置绘制或放置相同的图像。

由于

2 个答案:

答案 0 :(得分:0)

随机生成图像视图的origin。假设您希望随机放置在self.view内的任何位置:

// Set the maximum x and y based on the parent view size
CGFloat maximumX = self.view.frame.size.width;
CGFloat maximumY = self.view.frame.size.height;

在循环内部,将imageView.frame = ...更改为:

float randomX = ((float)rand() / RAND_MAX) * maximumX;
float randomY = ((float)rand() / RAND_MAX) * maximumY;
imageView.frame = CGRectMake(randomX, randomY, dotImage.size.width, dotImage.size.height);

如果您希望整个图片都在self.view范围内,请分别从randomXrandomY减去宽度和高度的一半。

答案 1 :(得分:0)

使用时间间隔调用arc4random()方法,根据随机值获取随机值显示图像。

like int randomNumber =(arc4random()%(toNumber-fromNumber))+ fromNumber;

使用屏幕的最小值和最大值调用方法。