2013-06-03 116 views
1

我搜索并发现了像我这样的问题,但没有正确的答案我需要。我想在我的应用程序中做这样的事情。当我触摸一个形状的内容空间时,会出现4个红点,然后在我们按Ctrl + T时允许调整(变换)它在Photoshop中的样子。如何检测是另一个精灵的孩子的精灵的触摸

This is how it looks

这是它的外观

我不知道如何来检测触摸时上一个红点,然后改变它。 任何人都可以向我解释如何做到这一点或示例代码。

我想让它在cocos2d或kobold2d 这是如何使我的形状

DragSprite *sprite = [DragSprite spriteWithFile:@"SpriteBGAlpha1.png" rect:CGRectMake(point.x, point.y, 100, 100)]; 
sprite.position = point; 
sprite.color = ccRED; 
[shapeArray addObject:sprite]; 
[self addChild:sprite z:0 tag:1]; 

CCSprite *s = [CCSprite spriteWithFile:@"Shape-Icon_Elevation-Triangle.png"]; 
s.position = ccp(sprite.boundingBox.size.width/2, sprite.boundingBox.size.height/2); 
[sprite addChild:s]; 

dotBlueArea1 = [CCSprite spriteWithFile:@"bluedotimage.png"]; 
dotBlueArea1.position = ccp(0, 0); 
[shapeArray addObject:dotBlueArea1]; 
[sprite addChild:dotBlueArea1 z:10 tag:1]; 

回答

1

试试这个..

CGPoint location = [touch locationInView: [touch view]]; 

location = [[CCDirector sharedDirector] convertToGL: location]; 

CGPoint convertedNodeSpacePoint = [aMainSpr convertToNodeSpace:location]; 
if (CGRectContainsPoint([child_Sprite boundingBox],convertedNodeSpacePoint)) 
{ 
NSLog(@"Touch"); 
} 
+0

在我的情况下,它不能用,你可以再检查一遍? – user2434837