python画一个玫瑰和一个爱心


Posted in Python onAugust 18, 2020

节日用心准备的礼物,使用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 相关文章推荐
Python标准库笔记struct模块的使用
Feb 22 Python
python 限制函数调用次数的实例讲解
Apr 21 Python
python3实现磁盘空间监控
Jun 21 Python
详解Python sys.argv使用方法
May 10 Python
python数据预处理之数据标准化的几种处理方式
Jul 17 Python
python3 深浅copy对比详解
Aug 12 Python
python脚本执行CMD命令并返回结果的例子
Aug 14 Python
python实现两个字典合并,两个list合并
Dec 02 Python
python str字符串转uuid实例
Mar 03 Python
Windows下Anaconda和PyCharm的安装与使用详解
Apr 23 Python
python实现凯撒密码、凯撒加解密算法
Jun 11 Python
用pandas划分数据集实现训练集和测试集
Jul 20 Python
python爱心表白 每天都是浪漫七夕!
Aug 18 #Python
Python实现全排列的打印
Aug 18 #Python
python递归实现快速排序
Aug 18 #Python
pyqt5的QWebEngineView 使用模板的方法
Aug 18 #Python
python递归全排列实现方法
Aug 18 #Python
python使用PIL给图片添加文字生成海报示例
Aug 17 #Python
Python在for循环中更改list值的方法【推荐】
Aug 17 #Python
You might like
PHP获取文件扩展名的4种方法
2015/11/24 PHP
ThinkPHP 5.1 跨域配置方法
2019/10/11 PHP
php和js实现根据子网掩码和ip计算子网功能示例
2019/11/09 PHP
类似框架的js代码
2006/11/09 Javascript
优化网页之快速的呈现我们的网页
2007/06/29 Javascript
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
jquery dialog open后,服务器端控件失效的快速解决方法
2013/12/19 Javascript
javascript面向对象特性代码实例
2014/06/12 Javascript
javascript实现百度地图鼠标滑动事件显示、隐藏
2015/04/02 Javascript
js无法获取到html标签的属性的解决方法
2016/07/26 Javascript
js实现把图片的绝对路径转为base64字符串、blob对象再上传
2016/12/29 Javascript
jQuery学习之DOM节点的插入方法总结
2017/01/22 Javascript
vue-dialog的弹出层组件
2020/05/25 Javascript
JS排序之冒泡排序详解
2017/04/08 Javascript
深入理解jquery的$.extend()、$.fn和$.fn.extend()
2017/07/08 jQuery
本地搭建微信小程序服务器的实现方法
2017/10/27 Javascript
js监听html页面的上下滚动事件方法
2018/09/11 Javascript
vue 验证两次输入的密码是否一致的方法示例
2020/09/29 Javascript
vue绑定class的三种方法
2020/12/24 Vue.js
Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)
2016/09/21 Python
python机器学习实战之树回归详解
2017/12/20 Python
Python小程序之在图片上加入数字的代码
2019/11/26 Python
基于python检查SSL证书到期情况代码实例
2020/04/04 Python
parser.add_argument中的action使用
2020/04/20 Python
Python的logging模块基本用法
2020/12/24 Python
Hertz荷兰:荷兰和全球租车
2018/01/07 全球购物
Europcar比利时:租车
2019/08/26 全球购物
PHP面试题-$message和$$message的区别
2015/12/08 面试题
《夜晚的实验》教学反思
2014/02/19 职场文书
制作部班长职位说明书
2014/02/26 职场文书
机电一体化专业求职信
2014/07/22 职场文书
办公室岗位职责
2015/02/04 职场文书
预备党员考察意见范文
2015/06/01 职场文书
公司年会主持词范文!
2019/05/07 职场文书
浅谈mysql执行过程以及顺序
2021/05/12 MySQL
Oracle用户管理及赋权
2022/04/24 Oracle