![](/img/trans.png)
[英]How to make a building (view: top down) that looks like a “3d” building with cocos2d and cocos3d? (for iphone)
[英]How make a interface that looks like this Cortex interface? (Circle,cocos2d,iphone)
如何使用cocos2d for iPhone建立這樣的界面? 皮質接口
我已經做了CCSprite的子類並覆蓋了繪制
像這樣的方法:
-(void)draw {
ccDrawCircle(CGPointMake(480/2, 320/2), 70, 0, 50000, NO);
ccDrawCircle(CGPointMake(480/2, 320/2), 25, 0, 50000, NO);
ccDrawLine(CGPointMake(480/2, 320/2+25), CGPointMake(480/2, 320/2+70));
ccDrawLine(CGPointMake(480/2+25, 320/2), CGPointMake(480/2+70, 320/2));
ccDrawLine(CGPointMake(480/2, 320/2-25), CGPointMake(480/2, 320/2-70));
ccDrawLine(CGPointMake(480/2-25, 320/2), CGPointMake(480/2-70, 320/2));
}
問題是我對圓沒有任何控制(無法設置圓的位置)...而且我不知道如何將文本/圖像放置到這些“單元格”中。 另一個問題是觸摸檢測..可能只是cgrects? 但是,如果我有4個以上的單元格並且一個單元格被“旋轉”,該怎么辦?
有任何想法嗎?
我認為您在這里有兩個選擇,但是我不建議將CCSprite子類化,實際上很少會推薦這樣做,幾乎沒有必要。
我認為,您可以選擇其中任何一種來獲得自己的形象。
1.使用OpenGL繪制圖像。
2.使用CCSprite繪制圖像。 (清潔器)
繪制后,只需在屏幕上按下即可創建它。 在屏幕(或任何指定的物體)上按下后,我將采用簡單的三角解決方案。
這是我將使用的算法:
(PSUDOCODE):
dx = currentpos.x - sourcepos.x
dy = currentpos.y - sourcepos.y
mag = sqrt(dx*dx + dy*dy);
ang = CC_RADIANS_TO_DEGREES(atan2f(dy/dx));
if (ang > 0 && ang < 80 && mag > kMinMagnitude) //Load Twitter
if (ang > 80 && ang < 120 && mag > kMinMagnitude) //Load facebook
我不認為在這里創建CCSprite的子類是正確的選擇。 您可能需要一個NSObject為您創建CCSprites。
同樣, CCSprite.position = CGPointMake( X, Y )
應該允許您設置子畫面的位置。 別忘了像其他CCNode對象一樣將其添加到圖層中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.