本文整理汇总了C++中WorldObject::isCenterCircle方法的典型用法代码示例。如果您正苦于以下问题:C++ WorldObject::isCenterCircle方法的具体用法?C++ WorldObject::isCenterCircle怎么用?C++ WorldObject::isCenterCircle使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WorldObject
的用法示例。
在下文中一共展示了WorldObject::isCenterCircle方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: drawRelativeObjects
// Only drawn in 2d at the moment
void LocalizationGL::drawRelativeObjects(WorldObjectBlock* worldObjects, RobotStateBlock* robotState) {
if (worldObjects == NULL || robotState == NULL){
//cout << "no wo or robotstate to draw seen objects" << endl;
return;
}
WorldObject* wo;
WorldObject* self = &(worldObjects->objects_[robotState->WO_SELF]);
for (int i = 0; i < NUM_WORLD_OBJS; i++){
wo = &(worldObjects->objects_[i]);
// if seen, get vision dist and bearing
if (wo->seen){
// use vision distance and bearing to figure out image loc
AngRad orient = (self->orientation + wo->visionBearing);
Point2D obsLocFd (wo->visionDistance, orient, POLAR);
obsLocFd += self->loc;
Vector3<float> start(self->loc.x, self->loc.y, 250);
Vector3<float> end(obsLocFd.x, obsLocFd.y,250);
if (wo->isGoal() && wo->isGoalPost()) {
drawObservationLine(start,end,basicGL.yellowRGB);
objectsGL.drawYellowPost(obsLocFd,0.25);
} else if (wo->isGoal() && !wo->isGoalPost()) {
drawObservationLine(start,end,basicGL.yellowRGB);
objectsGL.drawYellowGoal(obsLocFd,0.25);
} else if (wo->isUnknownIntersection()) {
end.z=0.0;
drawObservationLine(start,end,basicGL.pinkRGB);
objectsGL.drawIntersection(obsLocFd,0.5);
} else if (wo->isIntersection() && !wo->isUnknownIntersection()){
end.z=0.0;
drawObservationLine(start,end,basicGL.whiteRGB);
objectsGL.drawIntersection(obsLocFd,0.5);
} else if (wo->isLine() || wo->isUnknownLine()) {
end.z=0.0;
drawObservationLine(start,end,basicGL.whiteRGB);
objectsGL.drawLinePoint(obsLocFd,0.5);
//draw the line segment
// unknown - black
if (wo->isUnknownLine())
basicGL.colorRGBAlpha(basicGL.blackRGB,1.0);
// known - red
else
basicGL.colorRGBAlpha(basicGL.redRGB,1.0);
Point2D sP=wo->visionPt1;
Point2D eP=wo->visionPt2;
sP=sP.relativeToGlobal(self->loc,self->orientation);
eP=eP.relativeToGlobal(self->loc,self->orientation);
basicGL.drawLine(sP,eP,2.0);
} else if (wo->isBall()) {
end.z=BALL_RADIUS;
drawObservationLine(start,end,basicGL.orangeRGB);
objectsGL.drawBall(obsLocFd,0.5);
} else if (wo->isCenterCircle()){
// draw center cirlce
end.z = 0.0;
drawObservationLine(start,end,basicGL.whiteRGB);
objectsGL.drawCenterCircle(obsLocFd,0.5);
} else if (wo->isUnknownPenaltyCross() || wo->isKnownPenaltyCross()){
// draw penalty cross
end.z = 0.0;
drawObservationLine(start,end,basicGL.whiteRGB);
objectsGL.drawPenaltyCross(obsLocFd,0.5);
}
}
}
}