本文整理汇总了C++中Obstacle::getOrigin方法的典型用法代码示例。如果您正苦于以下问题:C++ Obstacle::getOrigin方法的具体用法?C++ Obstacle::getOrigin怎么用?C++ Obstacle::getOrigin使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Obstacle
的用法示例。
在下文中一共展示了Obstacle::getOrigin方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: objectWithinBoundingBox
//test if object is within BoundingBox
bool Obstacle::objectWithinBoundingBox(Obstacle testObj)
{
if ( (testObj.getOrigin().x>=minX && testObj.getOrigin().x<=maxX)
&& (testObj.getOrigin().y>=minY && testObj.getOrigin().y<=maxY)
&& (testObj.getOrigin().z>=minZ && testObj.getOrigin().z<=maxZ))
{
return true;
}
return false;
}
示例2: objectWithinBoundingBox
bool BezierPatch::objectWithinBoundingBox(Obstacle testObj)
{
//test each bounding box
for(int i=0;i<levelOfDetail;i++)
{
if ( testObj.getOrigin().x>=boundingBoxes[i].minPoints.x
&& testObj.getOrigin().x<=boundingBoxes[i].maxPoints.x
&& testObj.getOrigin().y>=boundingBoxes[i].minPoints.y
&& testObj.getOrigin().y<=boundingBoxes[i].maxPoints.y
&& testObj.getOrigin().z>=boundingBoxes[i].minPoints.z
&& testObj.getOrigin().z<=boundingBoxes[i].maxPoints.z)
{
return true;
}
}
return false;
}
示例3: objectWithinRadius
bool Obstacle::objectWithinRadius(Obstacle testObj)
{
float actualDistance= getDistanceFromObject(testObj.getOrigin());
if( actualDistance < (spaceDimensions.x ) &&
actualDistance < (spaceDimensions.y ) &&
actualDistance < (spaceDimensions.z ) )
return true;
return objectWithinBoundingBox(testObj);
}
示例4: getDistanceFromObject
float Obstacle::getDistanceFromObject(Obstacle testObj)
{
float distance = ( sqrt( (testObj.getOrigin().x-getOrigin().x)*(testObj.getOrigin().x-getOrigin().x) +
(testObj.getOrigin().y-getOrigin().y)*(testObj.getOrigin().y-getOrigin().y) +
(testObj.getOrigin().z-getOrigin().z)*(testObj.getOrigin().z-getOrigin().z) ));
return distance;
}
示例5: Point
bool processCollision(Obstacle &tmpObject)
{
if (!gameInPlay)
return false;
Point pointOnField = tmpObject.getOrigin() +tmpObject.getVelocity();
tmpObject.setOrigin(pointOnField);
//Point pointOnField = currentOrigin +velocity;
//Point currentVehicleOrigin = vehicle.getOrigin();
//pointOnField = pointOnField + originInSpace;
//vehicle.setOrigin(pointOnField);
//collision with Wall/Floor
if ( abs(pointOnField.x) > courseDepth
||abs(pointOnField.z) > courseDepth
||abs(pointOnField.y) > courseDepth )
{
//velocity=Point(0,0,0);
//speed=0;
tmpObject.setSpeed(0);
//adjust the course Velocity so we don't get stuck in a wall
if ( tmpObject.getOrigin().x > courseDepth)
tmpObject.setOrigin(Point( courseDepth,tmpObject.getOrigin().y,tmpObject.getOrigin().z));
if ( tmpObject.getOrigin().x < -courseDepth)
tmpObject.setOrigin(Point( -courseDepth,tmpObject.getOrigin().y,tmpObject.getOrigin().z));
if ( tmpObject.getOrigin().z > courseDepth)
tmpObject.setOrigin(Point(tmpObject.getOrigin().x,tmpObject.getOrigin().y, courseDepth));
if ( tmpObject.getOrigin().z < -courseDepth)
tmpObject.setOrigin(Point(tmpObject.getOrigin().x,tmpObject.getOrigin().y, -courseDepth));
if ( tmpObject.getOrigin().y > courseDepth)
tmpObject.setOrigin(Point(tmpObject.getOrigin().x, courseDepth,tmpObject.getOrigin().z));
if ( tmpObject.getOrigin().y < -courseDepth)
tmpObject.setOrigin(Point(tmpObject.getOrigin().x, -courseDepth,tmpObject.getOrigin().z));
//cout <<"Collision with Wall "<<pointOnField <<" x> depth("<<courseDepth<<endl;
return true;
}
//collision vehicle With Pond
//if(pond.objectWithinBoundingBox(tmpObject))
pond.setOrigin(pond.getOrigin()+Point(0,-30,0));
if( pond.objectWithinRadius(tmpObject))
{
pond.setOrigin(pondOrigin);
tmpObject.setSpeed(0);
//cout << "collision with pond vehicle at "<<pointOnField<<endl;
return true;
}
pond.setOrigin(pondOrigin);
//collision with snowdrift 2;
if(snowcave2.objectWithinBoundingBox(tmpObject))
{
velocity = Point(0,0,0);
tmpObject.setSpeed(0);
//cout << "collision with snowcave2 at "<<pointOnField<<endl;
return true;
}
if(snowcave.objectWithinBoundingBox(tmpObject))
{
velocity = Point(0,0,0);
tmpObject.setSpeed(0);
//cout << "collision with snowcave at "<<pointOnField<<endl;
return true;
}
//collision with snowman
if(snowman.objectWithinBoundingBox(tmpObject)
|| snowman2.objectWithinBoundingBox(tmpObject)
|| snowman3.objectWithinBoundingBox(tmpObject))
{
tmpObject.setSpeed(0);
//cout << "collision with snowman at "<<pointOnField<<endl;
return true;
}
//put back the vehicleOrigin()
//vehicle.setOrigin(currentVehicleOrigin);
return false;
}//end of processCollision