本文整理汇总了C++中Cat::getY方法的典型用法代码示例。如果您正苦于以下问题:C++ Cat::getY方法的具体用法?C++ Cat::getY怎么用?C++ Cat::getY使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Cat
的用法示例。
在下文中一共展示了Cat::getY方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: data
//---------------------------------------------------------------------------
// TESTS:
//---------------------------------------------------------------------------
TEST( CatClass, Serialize_tests )
{
// initial data
Cat data(2,3,4,5,6,7,8);
// Check the data before the save
CHECK( data.getX() == 2 );
CHECK( data.getA() == 3 );
CHECK( data.getB() == 4 );
CHECK( data.getY() == 5 );
CHECK( data.getZ() == 6 );
CHECK( data.getC() == 7 );
CHECK( data.getD() == 8 );
// create a local buffer
char buff[ 1024 ];
// serialize the data
data.serialize( buff );
// Create a new
Cat newData;
// deserialize the data
newData.deserialize( buff );
// validate that data is the same
CHECK( newData.getX() == 2 );
CHECK( newData.getA() == 3 );
CHECK( newData.getB() == 4 );
CHECK( newData.getY() == 5 );
CHECK( newData.getZ() == 6 );
CHECK( newData.getC() == 7 );
CHECK( newData.getD() == 8 );
// check the size of the data structure
CHECK( sizeof(Cat) == 24 );
}
示例2: main
int main(int argc, char **argv)
{
// Initialize the cat robot with the correct position position
ros::init(argc,argv,"Animal");
std::string xPosArg = argv[1];
std::string spacingArg = argv[2];
double spacing = atof(spacingArg.c_str());
double xPos = atof(xPosArg.c_str());
cat = Cat(xPos, 21.500);
// Create ros handler for this node
ros::NodeHandle n;
cat.robotNode_stage_pub = n.advertise<geometry_msgs::Twist>("cmd_vel",1000);
cat.stageOdo_Sub = n.subscribe<nav_msgs::Odometry>("base_pose_ground_truth",1000,stage_callback);
ros::Rate loop_rate(10);
//subscribe to laser for cats
cat.baseScan_Sub = n.subscribe<sensor_msgs::LaserScan>("base_scan", 1000,callBackLaserScan);
// Broadcast the node's status information for other to subscribe to.
ros::Publisher pub=n.advertise<se306project::animal_status>("status",1000);
se306project::animal_status status_msg;
// 0 rotatiing to the side, 1 moving horizontally, 2 rotating to bnorth/south, 3 moving vertical, 4 stop
while (ros::ok())
{
// Message to stage
if(cat.getObstacleStatus().compare("Obstacle nearby")!=0){
cat.move();
}
// Give cat a small initial movement to fill in its GUI status
if (initial) {
cat.addMovement("forward_x",0.1,1);
}
initial = false;
// Generate random number of seconds for cat to sleep between 50-100s
double num = (rand() % 100) / 2;
double time = 50 + num;
if (cat.getMovementQueueSize() == 0) {
cat.addMovement("forward_x", 0.1, (0.1 / time));
cat.faceEast(1);
cat.addMovement("forward_x",5,1);
cat.faceWest(1);
cat.addMovement("forward_x",-5,1);
}
// Add Cat variables to status message to be broadcast
status_msg.status=status;
status_msg.pos_x=cat.getX();
status_msg.pos_y=cat.getY();
status_msg.pos_theta=cat.getAng();
status_msg.obstacle=cat.getObstacleStatus();
// Publish status message
pub.publish(status_msg);
ros::spinOnce();
loop_rate.sleep();
// Determine status of cat
cat.determineStatus();
//if ( cat.getLin() == 0.01 ) {
// status = "Sleeping";
//}
}
return 0;
}