2012-04-26 86 views
1

我想在屏幕中心創建一個矩形網格,在邊緣留下一些空間。這種需要的出現是因爲我在隨機點噴出不同的精靈,並且他們不斷在其他人身上產卵。所以我想如果有一種方法創建一個創建網格的類,並返回一個隨機矩形,並將其標記爲只要精靈停留在該矩形中並在之後釋放它。屏幕上CGRect網格?

如果我可以得到一些幫助或任何提示它會很好。任何其他解決方案也可以實現這一目標。

謝謝。

+0

你是要求我們爲你做你的編碼嗎?這個網站是針對特定的編程問題,而不是模糊的邀請來爲你的代碼編寫你的項目 – johnbakers 2012-04-26 16:32:06

+0

我可以自己編寫代碼,只需要一些幫助就如何實現我上面提到的。 – jahan 2012-04-26 16:34:01

+0

請問你能更具體一點嗎?到底需要幫助的是什麼? – starbugs 2012-04-26 16:35:13

回答

1

您可以嵌套兩個for循環,一個用於行,一個用於列,使它們都運行5次,並且在每個循環中將x位置和y位置遞增1/5的屏幕寬度和高度,並放入這些座標變成CGRrect。那會做你想做的。

0

感謝@andrewx的幫助。這將在給定範圍內創建CGRect,然後返回一個隨機值。

-(void) makeCGRectArray{ 

rectsArray = [[NSMutableArray alloc] init]; 

for (int x = 30; x<=420; x= x+60) { 
    for (int y=40; y<=280; y=y+40) { 

     CGRect newRect = CGRectMake(x, y, 60, 40); 
     [rectsArray addObject:[NSValue valueWithCGRect:newRect]]; 
    } 
} 

[self getRandomCgrect:rectsArray]; 

} 

-(CGRect) getRandomCgrect:(NSMutableArray*) rectArray{ 

    NSInteger randomPoint = (arc4random() % (49)); 

    CGRect randomRect = [[rectsArray objectAtIndex:randomPoint] CGRectValue]; 

    self.isOccupied = YES; 
    return randomRect; 
}