turtle库 多圈文字旋转 代码开源

news2024/12/27 13:31:45

对文字旋转进行了升级

声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

效果:(视频要转GIF懒得弄了就截个图)

代码实现:

# -*- coding: utf-8 -*-
"""
Created on Mon Aug 19 21:22:28 2024

@author: Administrator
"""

import turtle
import time
import math
#import turtle as t
turtle.bgcolor("white")
angle = 0
colorlst=["red","saddlebrown","gold","blue","green"]
def wuxing():
    turtle.pu()
    
    #turtle.penup()
    turtle.goto(0, 0)  # 到画布中心
    
    turtle.setheading(angle)  # 设置当前朝向为angle角度
    #turtle.stamp()#central
    turtle.fd(r)
    #turtle.right(90)
   
    #turtle.pu()
    x=len(text)
    turtle.rt(180-(x-2)*180/x/2)#n边形内角和公式
    #turtle.stamp()
    k=0
    for i in text:
        turtle.pencolor(colorlst[k])
        turtle.write(i,font=('隶书',40))
        a=2*r*math.sin(math.pi/x)#radian 
        turtle.fd(a)
        turtle.rt(360/x)
        k=k+1
    turtle.hideturtle()

    
turtle.tracer(0)  # 将刷新率置为0,即不刷新

for j in range(5000):  # 这里设置了1w次,也可以是其他次数
    r=100#半径
    text="火土金水木"
    wuxing()
    
    r=140
    text="心脾肺肾肝"
    wuxing()
    
    r=180
    text="炮横劈钻崩"
    wuxing() 
    
    turtle.update()  # 更新绘图
    time.sleep(0.01)  # 休眠时间,这一句可以没有,但是如果没有的话,转的会很快
    turtle.clear()  # 清空画布
    angle -= 1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2054102.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于SpringBoot的智慧校园管理系统

系统背景 在当今信息化高速发展的时代背景下,智慧校园管理系统作为教育信息化建设的重要组成部分,正逐步成为提升学校管理水平、优化教育资源配置、促进教育教学创新的关键力量。随着物联网、大数据、云计算、人工智能等先进技术的不断融合与应用&#x…

YoloV8改进策略:下采样与上采样改进|

摘要 河流冰语义分割是一项关键任务,它可以为我们提供河流监测、灾害预测和交通管理所需的信息。以往的工作主要集中在提高准确性上,但对于实际应用而言,效率也同样重要。在本文中,我们提出了一种实时且准确的河流冰语义分割网络…

如何避免电脑监控软件(避开电脑监控软件的秘诀)

电脑监控软件被广泛应用在家庭、学校和企业环境中,以实现对计算机使用情况的监督和管理。 然而,对于希望保护个人隐私或避免被不必要监控的人来说,了解如何避开这些监控软件显得尤为重要。 本文将详细介绍如何避免被电脑监控软件跟踪的方法&…

HID类的报表描述符中的USAGE MAX,USAGE MIN使用注意

发现问题由来 准备自己做一个自定义键盘,先小测试一下经典键盘的26字母,设置了从A到H。在实际传输给电脑数据中,把传送数据第一个按钮是0x04,以为输出A,谁知道居然输出D . 下面一段简单的HID报表描述符共对电脑发送4个…

《深入浅出多模态》(八)多模态经典模型:MiniGPT4

🎉AI学习星球推荐: GoAI的学习社区 知识星球是一个致力于提供《机器学习 | 深度学习 | CV | NLP | 大模型 | 多模态 | AIGC 》各个最新AI方向综述、论文等成体系的学习资料,配有全面而有深度的专栏内容,包括不限于 前沿论文解读、…

CATIA CAA 二次开发 -- 获取当前会话编辑的CATIPLMComponent

1、先获取当前激活的编辑器 CATFrmEditor* pEditor CATFrmEditor::GetCurrentEditor();if (pEditor nullptr)return S_FALSE; 关于方法【GetCurrentEditor】的解释如下图所示。 2、通过【CATPLMComponentInterfacesServices】去获取当前编辑器的根。 CATPLMComponentInterf…

UE 开发---- Ios ipa 安装包安装到IPhone手机上

由于最近 我在使用ue 开发手机软件 打包成为 Ios ipa 安装包时 安装到手机上遇到的问题 准备: 1、一部 Ios 手机 2、首先下载爱思助手爱思助手官网_苹果助手_苹果刷机助手_苹果越狱助手 (i4.cn) 我下载的Windows端 电脑连接上Ios手机时 是这样的 我们打开工…

【Qt】Qt窗口 | QDialog 对话框

文章目录 一. 对话框二. 对话框的分类1. 非模态对话框2. 模态对话框3. 混合属性对话框 三. 自定义对话框1. 代码实现2. ui文件实现 四. 内置对话框1. QMessageBox 消息对话框2. QColorDialog 颜色对话框3. QFileDialog 文件对话框4. QFontDialog 字体对话框5. QInputDialog 输入…

配置 昇腾 Ascend C/C++ 开发环境

配置 昇腾 Ascend C/C 开发环境 flyfish 这里以Orange Pi Ai Pro 为例 先说如何配置MindStudio,然后再说如何查看Orange Pi Ai Pro的一些信息 Orange Pi AI Pro 开发板是香橙派联合华为精心打造的高性能AI 开发板,其搭载了昇腾 AI 处理器。Linux 桌面…

100行代码实现自己的RAG知识库

背景 由于日常工作需要对接各种第三方合作方,对接过程中的文档繁多、沟通不及时、问题排查繁琐以及工作具有重复性等问题愈发明显。合作方遇到对接问题需要提工单经门户网站–>产品部门接口人–>开发人员问题排查/修复–>产品部门接口人–>合作方收到回…

公链大变局:ETH老态龙钟,SOL势如破竹

今年年初,比特币现货ETF的通过引发了大量资金涌入加密市场,比特币价格一度突破前高,市场一片繁荣。然而,这一波行情却并未如预期般延续到以太坊。相反,在8月初,以太坊(ETH)价格近乎腰…

C语言基础⑨——指针

一、指针的引入 int —— 4位;float —— 4位;double —— 8位;short —— 2位;long —— 8位; 为函数修改实参提供支撑;为动态内存管理提供支持;为动态数据结构提供支持;为内存访问…

MT6761 快充同步

MT6761 是反激式电源的高性能60V同步整流器。MT6761兼容各种反激转换器类型。支持 DCM、CCM 和准谐振模式。MT6761集成了一个60V功率MOSFET&#xff0c;可以取代肖特基二极管&#xff0c;提高效率。V SW <V TH-ON 时&#xff0c;MT6761内部 MOSFET 导通。V SW >V TH-OFF …

【AI 绘画】模型转换与快速生图(基于diffusers)

AI 绘画- 模型转换与快速生图&#xff08;基于diffusers&#xff09; 1. 本章介绍 本次主要展示一下不同框架内文生图模型转换&#xff0c;以及快速生成图片的方法。 SDXL文生图 2. sdxl_lightning基本原理 模型基本原理介绍如下 利用蒸馏方法获取小参数模型。首先&#x…

三、前后端分离通用权限系统(3)

&#x1f33b;&#x1f33b;目录 一、角色管理1.1、测试 controller 层1.2、整合 Swagger21.2.1、Swagger 介绍1.2.2、集成 knife4j1.2.2.1 添加依赖1.2.2.2 添加 knife4j 配置类1.2.2.3 Controller 层添加注解1.2.2.4、测试 1.3、定义统一返回结果对象1.3.1、定义统一返回结果…

备战秋招60天算法挑战,Day21

题目链接&#xff1a; https://leetcode.cn/problems/number-of-1-bits/ 视频题解&#xff1a; https://www.bilibili.com/video/BV1ir421M7XU/ LeetCode 191.位1的个数 题目描述 编写一个函数&#xff0c;输入是一个无符号整数 &#xff08;以二进制串的形式&#xff09;&am…

C语言 ——— 学习并使用calloc和realloc函数

目录 calloc函数的功能 学习并使用calloc函数​编辑 realloc函数的功能 学习并使用realloc函数​编辑 calloc函数的功能 calloc函数的功能和malloc函数的功能类似&#xff0c;于malloc函数的区别只在于calloc函数会再返回地址之前把申请的空间的每个字节初始化为全0 C语言…

tweens运动详解

linear 线性匀速运动效果Sine.easeIn 正弦曲线的缓动(sin(t))/ 从0开始加速的缓动,也就是先慢后快Sine.easeOut 正弦曲线的缓动(sin(t))/ 减速到0的缓动,也就是先快后慢Sine.easeInOut 正弦曲线的缓动(sin(t))/ 前半段从0开始加速,后半段减速到0的缓动Quad.easeIn 二次…

c语言基础-------指针变量和变量指针

在 C 语言中,“变量指针”和“指针变量”这两个术语虽然经常交替使用,但它们的侧重点有所不同。 指针变量 “指针变量”是指其值为内存地址的变量。指针变量的类型定义了它所指向的数据类型,例如 int * 是一个指向整型数据的指针变量。 以下是一个指针变量的例子: int v…

数据埋点系列 16| 数据可视化高级技巧:从洞察到视觉故事

数据可视化是将复杂数据转化为直观、易懂的视觉表现的艺术和科学。本文将探讨一些高级的数据可视化技巧&#xff0c;帮助您创建更具吸引力和洞察力的数据展示。 目录 1. 高级图表类型1.1 桑基图&#xff08;Sankey Diagram&#xff09;1.2 树状图&#xff08;Treemap&#xf…