Cocos2d-iPhone で、画面の中心にあるポイントのワールド空間座標を取得するにはどうすればよいですか?
8457 次
2 に答える
9
シンプルに高さと幅を2で割るだけ
CGSize winSize = [[CCDirector sharedDirector] winSize];
CGPoint point = ccp(winSize.width/2, winSize.height/2);
これを行うには、もう少し高度な方法があります。これは、スプライトの親 (この例では =self) で setPosition を呼び出した場合にも機能します。
CGSize winSize = [[CCDirector sharedDirector] winSize];
CCSprite* centerSprite = [CCSprite spriteWithFile:@"sprite"];
CGPoint centerPoint = ccpSub(ccp(winSize.width/2, winSize.height/2), [self position]);
[centerSprite setPosition:centerPoint];
[self addChild: centerSprite];
于 2012-04-16T18:48:22.197 に答える
0
使用しているフレームワークに関係なく、Cocos を使用しているかどうかに関係なく、また、Cocos が画面全体を使用するように設定されていない場合でも、画面の正確な中心を取得できます (広告のスペースを確保するために Cocos をトリミングする場合がそうです)。このようなことをすることによって:
int width=[[UIScreen mainScreen] bounds].size.width
int height=[[UIScreen mainScreen] bounds].size.height
CGPoint center=ccp(width/2,height/2);
ccp
マクロは Cocos でのみ機能することに注意してください。それ以外の場合は、使用CGPointMake
于 2012-04-17T01:29:16.453 に答える