本文整理汇总了C++中Point2f::DotProduct方法的典型用法代码示例。如果您正苦于以下问题:C++ Point2f::DotProduct方法的具体用法?C++ Point2f::DotProduct怎么用?C++ Point2f::DotProduct使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Point2f
的用法示例。
在下文中一共展示了Point2f::DotProduct方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: step
void Bullet::step(float gameTime, float deltaTime)
{
Point2f delta = dest_pos - pos;
float len;
if (!bExplode)
{
len = delta.DotProduct();
if (len < 1)
{
bExplode = false;
explodePos = pos;
Explode(gameTime);
return;
}
}
else
{
bExplode = false;
Explode(gameTime);
return;
}
Point2f vel = delta.Normalize(min(sqrtf(len) / deltaTime, speed));// 可能引发爆发事件
collisionEntity.getBody().setVelocity(vel);
collisionEntity.getBody().Update(deltaTime);
}
示例2: Explode
void Bullet::Explode(float gameTime)
{
Explosive *e = new Explosive(graphicEntity.animResManager);
Point2f delta = dest_pos - pos;
float len = delta.DotProduct();
if (len > 1)
{
delta = delta.Normalize(speed);
}
e->orientation = orientation;
e->init("data/tank/bulletexplode.xml", gameTime, gun->explosive);
e->setPostion(explodePos, explodePos + delta);
EntityManager::getSingleton().attach(e);
active = false;
}