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中Collection的使用小技巧
Aug 18 Python
Python IDE PyCharm的基本快捷键和配置简介
Nov 04 Python
linux平台使用Python制作BT种子并获取BT种子信息的方法
Jan 20 Python
Python时间戳使用和相互转换详解
Dec 11 Python
名片管理系统python版
Jan 11 Python
Python3中内置类型bytes和str用法及byte和string之间各种编码转换 问题
Sep 27 Python
对python 多线程中的守护线程与join的用法详解
Feb 18 Python
Python3转换html到pdf的不同解决方案
Mar 11 Python
python将三维数组展开成二维数组的实现
Nov 30 Python
python matplotlib:plt.scatter() 大小和颜色参数详解
Apr 14 Python
python3.7添加dlib模块的方法
Jul 01 Python
关于 Python json中load和loads区别
Nov 07 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
《被神捡到的男人》动画化计划进行中!
2020/03/06 日漫
php $_ENV为空的原因分析
2009/06/01 PHP
PHP 数据结构 算法 三元组 Triplet
2011/07/02 PHP
PHP与服务器文件系统的简单交互
2016/10/21 PHP
PHP实现的Redis多库选择功能单例类
2017/07/27 PHP
WHOOPS PHP调试库的使用
2017/09/29 PHP
PHP中实现中文字串截取无乱码的解决方法
2018/05/29 PHP
PHP Laravel中的Trait使用方法
2019/01/20 PHP
用 Javascript 验证表单(form)中多选框(checkbox)值
2009/09/08 Javascript
JavaScript 常见对象类创建代码与优缺点分析
2009/12/07 Javascript
ASP.NET jQuery 实例9  通过控件hyperlink实现返回顶部效果
2012/02/03 Javascript
jquery实现奇偶行赋值不同css值
2012/02/17 Javascript
javaScript如何生成xmlhttp
2013/12/16 Javascript
js实现获取当前时间是本月第几周的方法
2015/08/11 Javascript
jquery选择器中的空格与大于号>、加号+与波浪号~的区别介绍
2016/06/24 Javascript
JavaScript实现的商品抢购倒计时功能示例
2017/04/17 Javascript
bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果
2017/06/12 jQuery
微信小程序 es6-promise.js封装请求与处理异步进程
2017/06/12 Javascript
详解ES6 Promise对象then方法链式调用
2018/10/20 Javascript
微信小程序map组件结合高德地图API实现wx.chooseLocation功能示例
2019/01/23 Javascript
微信小程序返回上一级页面的实现代码
2020/06/19 Javascript
[07:20]2014DOTA2西雅图国际邀请赛 选手讲解积分赛第二天
2014/07/11 DOTA
详解Python中break语句的用法
2015/05/14 Python
Python编程求质数实例代码
2018/01/31 Python
python如何派生内置不可变类型并修改实例化行为
2018/03/21 Python
opencv3/Python 稠密光流calcOpticalFlowFarneback详解
2019/12/11 Python
如何用 Python 制作 GitHub 消息助手
2021/02/20 Python
html5使用canvas绘制太阳系效果
2014/12/15 HTML / CSS
世界第一曲奇连锁店:Mrs. Fields Cookies
2017/02/04 全球购物
街头时尚在线:JESSICABUURMAN
2019/06/16 全球购物
美国在线和移动免费会员制批发零售商:Boxed(移动端的Costco)
2020/01/02 全球购物
护士实习自我鉴定
2013/10/22 职场文书
一名女生的自荐信
2013/12/08 职场文书
失业者真诚求职信范文
2013/12/25 职场文书
Vue如何清空对象
2022/03/03 Vue.js
如何创建一个创建MySQL数据库中的datetime类型
2022/03/21 MySQL