宋姗姗,青岛租房网站,狗和狼的时间吻戏
节日用心准备的礼物,使用python画玫瑰和爱心,供大家参考,具体内容如下
#!/usr/bin/env python #coding=utf-8 #女生节礼物 import rospy from sensor_msgs.msg import laserscan import numpy import copy node_name = "test_maker" class test_maker(): def __init__(self): self.define() rospy.timer(rospy.duration(0.5), self.timer_cb1) rospy.timer(rospy.duration(0.5), self.timer_cb2) rospy.timer(rospy.duration(0.5), self.timer_cb3) rospy.timer(rospy.duration(0.5), self.timer_cb4) rospy.spin() def define(self): self.pub_scan1 = rospy.publisher('test/test_scan1', laserscan, queue_size=1) self.pub_scan2 = rospy.publisher('test/test_scan2', laserscan, queue_size=1) self.pub_scan3 = rospy.publisher('test/test_scan3', laserscan, queue_size=1) #慎用!!!! self.pub_scan4 = rospy.publisher('test/test_scan4', laserscan, queue_size=1) def timer_cb1(self, e): data = laserscan() data.header.frame_id = "base_link" data.angle_min = 0 data.angle_max = numpy.pi*2 data.angle_increment = numpy.pi*2 / 200 data.range_max = numpy.inf data.range_min = 0 theta = 0 for i in range(200): r = 8.* numpy.sin(5. * theta ) data.ranges.append(copy.deepcopy(r)) data.intensities.append(theta) r = 8.* numpy.sin(5. * -theta) data.ranges.append(copy.deepcopy(r)) data.intensities.append(theta) theta += data.angle_increment data.header.stamp = rospy.time.now() self.pub_scan1.publish(data) def timer_cb2(self, e): data = laserscan() data.header.frame_id = "base_link" data.angle_min = 0 data.angle_max = numpy.pi*2 data.angle_increment = numpy.pi*2 / 200 data.range_max = numpy.inf data.range_min = 0 theta = 0 for i in range(200): r = 8. * numpy.cos(5. * theta) + 1 data.intensities.append(theta) data.ranges.append(copy.deepcopy(r)) r = 8. * numpy.cos(5. * -theta) + 1 data.intensities.append(theta) data.ranges.append(copy.deepcopy(r)) theta += data.angle_increment data.header.stamp = rospy.time.now() self.pub_scan2.publish(data) def timer_cb3(self, e): data = laserscan() data.header.frame_id = "base_link" data.angle_min = 0 data.angle_max = numpy.pi*2 data.angle_increment = numpy.pi*2 / 50 data.range_max = numpy.inf data.range_min = 0 theta = 0 for i in range(200): r = 2. * numpy.sin(5. * theta) + 1 data.intensities.append(theta) data.ranges.append(copy.deepcopy(r)) r = 2. * numpy.sin(5. * -theta) + 1 data.intensities.append(theta) data.ranges.append(copy.deepcopy(r)) theta += data.angle_increment data.header.stamp = rospy.time.now() self.pub_scan3.publish(data) #慎用!!!! def timer_cb4(self, e): data = laserscan() data.header.frame_id = "base_link" data.angle_min = 0 data.angle_max = numpy.pi*2 data.angle_increment = data.angle_max / 200 data.range_max = numpy.inf data.range_min = 0 theta = 0 for i in range(200): r = 9. * numpy.arccos(numpy.sin(theta)) + 9 data.ranges.append(r) theta += data.angle_increment data.header.stamp = rospy.time.now() self.pub_scan4.publish(data) if __name__ == '__main__': node_name = 'test_maker' rospy.init_node(node_name) try: test_maker() except rospy.rosinterruptexception: rospy.logerr('%s error'%node_name)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Python爬虫:Request Payload和Form Data的简单区别说明
浅谈Python中threading join和setDaemon用法及区别说明
Python3-异步进程回调函数(callback())介绍
python继承threading.Thread实现有返回值的子类实例
Python中使用threading.Event协调线程的运行详解
网友评论