参数设置--设置背景颜色

需求描述:
修改turtlesim乌龟显示节点窗体的背景色,已知背景色是通过参数服务器的方式以 rgb 方式设置的。

获取信息:

rosparam get /turtlesim/background_r

设置:

rosparam set /turtlesim/background_r 255

参数设置--设置背景颜色_第1张图片

C++ 实现:

#include "ros/ros.h"

/*
    需求:修改参数服务器中 turtlesim 背景色相关的参数

    1.初始化ROS节点
    2.不一定需要创建节点句柄(和后续使用的API有关)
    3.修改参数
*/

int main(int argc, char *argv[])
{
    // 1.初始化ROS节点
    ros::init(argc,argv,"chang_bgColor");
   
    // 2.不一定需要创建节点句柄(和后续使用的API有关)
    // 方案一:(输出背景为白色)
    ros::NodeHandle nh("turtlesim");
    nh.setParam("backgrand_r",255);
    nh.setParam("backgrand_g",255);
    nh.setParam("backgrand_b",255);

    // 方案二:输出背景为墨蓝色
    nh.setParam("/turtlesim/backgrand_r",0);
    nh.setParam("/turtlesim/backgrand_g",50);
    nh.setParam("/turtlesim/backgrand_b",100);

    // 方案三:输出背景为黑色
    // 3.修改参数
    //如果调用ros::param 不需要创建节点句柄
    ros::param::set("/turtlesim/background_r",0);
    ros::param::set("/turtlesim/background_g",0);
    ros::param::set("/turtlesim/background_b",0);
    
    return 0;
}

输出:

参数设置--设置背景颜色_第2张图片
参数设置--设置背景颜色_第3张图片

Python:

#! /usr/bin/env python
import rospy

"""
    需求:设置乌龟GUI背景色
    1.初始化ROS节点
    2.设置参数
"""

if __name__ == "__main__":
    rospy.init_node("change_bgColor_p")
    #修改背景色
    rospy.set_param("/turtlesim/background_r",100)
    rospy.set_param("/turtlesim/background_g",200)
    rospy.set_param("/turtlesim/background_b",250)

先运行文件设置颜色

rosrun plumbing_test test04_param_p.py

后运行小乌龟节点

rosrun turtlesim turtlesim_node

参数设置--设置背景颜色_第4张图片

你可能感兴趣的:(自动驾驶,人工智能,机器学习)