以下是在方法中使用ccpClamp的示例。
-(void) moveCamera:(CGPoint)pos
{
CGPoint to = ccpClamp(pos, cameraMin, cameraMax);
to = ccpSub(to, cameraOffset);
[self.camera setCenterX:to.x centerY:to.y centerZ:0];
[self.camera setEyeX:to.x eyeY:to.y eyeZ:[CCCamera getZEye]];
// update hud-level sprites
[(HudLayer*)[self.parent getChildByTag:kTagHudLayer] moveSprites:[self getCameraPosition]];
}
答案 0 :(得分:5)
official documentation并未解释 clamp 这个词的含义,但是 它用于将值限制为设定边界(低,高)。 在您的示例中,它等同于:
if (pos < cameraMin)
return cameraMin;
else if (pos > cameraMax)
return cameraMax;
else
return pos;
根据dictionary.com, clamp 表示:
- 一种装置,通常是一些刚性材料,用于加固或支撑物体或将它们固定在一起。
- 具有相对侧面或部件的器具,可以调节或靠近在一起以固定或压缩物品。
醇>