当前位置: 首页>>代码示例>>C++>>正文


C++ Vector2D::getMagnitude方法代码示例

本文整理汇总了C++中Vector2D::getMagnitude方法的典型用法代码示例。如果您正苦于以下问题:C++ Vector2D::getMagnitude方法的具体用法?C++ Vector2D::getMagnitude怎么用?C++ Vector2D::getMagnitude使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Vector2D的用法示例。


在下文中一共展示了Vector2D::getMagnitude方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: spawnPlayer

void Server::spawnPlayer(Player *player)
{
	std::vector<SpawnpointMarker*> validPositions;
	SpawnpointMarker *bestSpawn;
	
	for(SpawnPool::iterator ii = spawns.begin(); ii != spawns.end(); ++ii)
	{
		bool isSpawnOK = true;
		
		for (Entpool::iterator jj = entities.begin(); jj != entities.end(); ++jj)
		{
			if(jj->second->getEntId() == (*ii)->getEntId())
				continue;
			
			Vector2D displacement = (jj->second->getPosition().positionVector() - (*ii)->getPosition().positionVector());
			
			if (displacement.getMagnitude() < 40.0f) {
				isSpawnOK = false;
				break;
			}
		}
		if((*ii)->team != team_free && (*ii)->team != player->getTeam())
			isSpawnOK = false;
		
		if (isSpawnOK)
			validPositions.push_back(*ii);
	}
	if(spawns.size() == 0)
	{
		player->setPosition(Position(0,0));
	}
	else if(validPositions.size() == 0)  // All spawn points are filled, so pick
	{                               // one at random. - This causes ships to spawn on top of each other [eric]
		bestSpawn = spawns[ rand()%spawns.size() ];
		player->setPosition(bestSpawn->getPosition());
	}
	else
	{
		bestSpawn = validPositions[ rand()%validPositions.size() ];
		player->setPosition(bestSpawn->getPosition());
	}

}
开发者ID:yixu34,项目名称:Mastrix,代码行数:43,代码来源:server.cpp

示例2: radiansToDegrees

double Vector2D::getAngleBetween(const Vector2D &other) const {
    double rad = this->dotProduct(other) / (this->getMagnitude() * other.getMagnitude());
    return radiansToDegrees(acos(rad));
}
开发者ID:HubertLegec,项目名称:AAL,代码行数:4,代码来源:Vector2D.cpp


注:本文中的Vector2D::getMagnitude方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。