我有一条线,这是在我的碰撞检测代码,使用此代码的CGRect与角度
CGPoint diff = ccpSub(startLocation, endLocation);
float rads = atan2f(diff.y, diff.x);
float degs = -CC_RADIANS_TO_DEGREES(rads);
float dist = ccpDistance(endLocation, startLocation);
CCSprite *line = [CCSprite spriteWithFile:@"line.png"];
[line setAnchorPoint:ccp(0.0f, 0.5f)];
[line setPosition:endLocation];
[line setScaleX:dist/line.boundingBox.size.width];
[line setRotation: degs];
line.tag = 1;
[_lines addObject:line];
[self addChild:line];
现在雪碧我使用下面的代码来创建的CGRect:
CGRect lineRect = CGRectMake(
line.position.x - (line.contentSize.width/2),
line.position.y - (line.contentSize.height/2),
line.contentSize.width,
line.contentSize.height);
这当然是错误的,因为这条线是用一个角度制作的。
我想比较长方形,正方形精灵,这个矩形。 这个想法是一个角色在移动,玩家可以绘制一条线,如果角色击中它的方向,它会反方向弹起。
我有角度,线的一侧的x & y位置和线的长度。 如何获得另一侧的其他x &位置?
希望你们能帮助我。
在此先感谢!
什么是你想测试碰撞? 2线段?线段和矩形?线段和多边形?请详细说明。 –
感谢您的回复,追问更新: 我想比较长方形,正方形精灵,这个矩形。这个想法是一个角色在移动,玩家可以画出一条线,如果角色击中该线,则反方向弹跳。 – Falcko