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常用正则表达式符号浅析
Aug 13 Python
基础的十进制按位运算总结与在Python中的计算示例
Jun 28 Python
Python动刷新抢12306火车票的代码(附源码)
Jan 24 Python
在python2.7中用numpy.reshape 对图像进行切割的方法
Dec 05 Python
python实现对任意大小图片均匀切割的示例
Dec 05 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
May 23 Python
python数组循环处理方法
Aug 26 Python
Python MongoDB 插入数据时已存在则不执行,不存在则插入的解决方法
Sep 24 Python
TensorFlow tf.nn.max_pool实现池化操作方式
Jan 04 Python
Python使用PyQt5/PySide2编写一个极简的音乐播放器功能
Feb 07 Python
Python实现AI自动抠图实例解析
Mar 05 Python
Python 快速验证代理IP是否有效的方法实现
Jul 15 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和ACCESS写聊天室(七)
2006/10/09 PHP
php中青蛙跳台阶的问题解决方法
2018/10/14 PHP
8个超棒的学习 jQuery 的网站 推荐收藏
2011/04/02 Javascript
JavaScript的模块化:封装(闭包),继承(原型) 介绍
2013/07/22 Javascript
javascript随机将第一个dom中的图片添加到第二个div中示例
2013/10/08 Javascript
JS的location.href跳出框架打开新页面的方法
2014/09/04 Javascript
JS+CSS实现DIV层的展开、收缩效果
2016/01/28 Javascript
基于JS实现翻书效果的页面切换样式
2017/02/16 Javascript
基于openlayers4实现点的扩散效果
2020/08/17 Javascript
vue实现分环境打包步骤(给不同的环境配置相对应的打包命令)
2019/06/04 Javascript
详解Nuxt内导航栏的两种实现方式
2020/04/16 Javascript
vue-cli脚手架的.babelrc文件用法说明
2020/09/11 Javascript
原生JS生成指定位数的验证码
2020/10/28 Javascript
使用webpack5从0到1搭建一个react项目的实现步骤
2020/12/16 Javascript
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
Python中列表、字典、元组、集合数据结构整理
2014/11/20 Python
详解Python里使用正则表达式的ASCII模式
2017/11/02 Python
详解supervisor使用教程
2017/11/21 Python
Python依赖包整体迁移方法详解
2019/08/15 Python
如何基于python实现不邻接植花
2020/05/01 Python
在主流系统之上安装Pygame的方法
2020/05/20 Python
python对批量WAV音频进行等长分割的方法实现
2020/09/25 Python
新西兰领先的鞋类和靴子网上商城:Merchant 1948
2017/09/08 全球购物
String和StringBuffer的区别
2015/08/13 面试题
大学生个人自我鉴定
2013/12/03 职场文书
学生打架检讨书大全
2014/01/23 职场文书
会计学专业学生的求职信范文
2014/01/27 职场文书
《桃花心木》教学反思
2014/02/17 职场文书
租房协议书范本
2014/04/09 职场文书
本科应届生求职信
2014/08/05 职场文书
安全保证书怎么写
2015/02/28 职场文书
2015年团队工作总结范文
2015/05/04 职场文书
2015年预防青少年违法犯罪工作总结
2015/05/22 职场文书
开学第一周日记(三篇范文)
2019/08/23 职场文书
浅析Redis Sentinel 与 Redis Cluster
2021/06/24 Redis
详解Anyscript开发指南绕过typescript类型检查
2022/09/23 Javascript