利用Python实现一个科幻酷炫的罗盘时钟~网友:求求你,带带弟弟!

这篇具有很好参考价值的文章主要介绍了利用Python实现一个科幻酷炫的罗盘时钟~网友:求求你,带带弟弟!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

抖音上比较有趣的罗盘时钟,今天用turtle来画一下,基本功能实现了,拿来练习一下turtle,感觉还可以吧

turtle的安装

sudo apt-get install python3-tk

罗盘时钟

思路就是,绘制三个圆,在圆周填充字符,充当仪表,以当前时间为起点,然后定时重新绘制图形

所以本例实现看着有点卡顿的感觉。

运行环境:Python3.6 + Pygame

import pygame, sys, math
from datetime import datetime


def print_text(font, x, y, text, angle, color=(255, 255, 255)):
    """粉丝朋友+我vx:paisen999获取系统性学习Python的学习资料"""
    img_text = font.render(text, True, color)
    img_text = pygame.transform.rotate(img_text, angle)
    screen.blit(img_text, (x, y))


def cycle_text(cirText, bins, today_xx, cirRadius, font):
    """
    定义一个输出循环文本的函数
    cirText: 环形循环文本,如日期和时间的中文
    bins: 圆需要分为多少等分,如秒需要分成60等分
    today_xx: 接收当前时间(月日周时分秒)的具体数值
    cirRadius: 指定环形文本的半径
    font: 指定使用的字体
    """
    for i in range(1, len(cirText) + 1):
        # c_angle: 旋转一次的角度
        c_angle = math.radians(360 / bins)*(today_xx - i)
        # t_angle: 环上每个独立文本的角度
        t_angle = 0 - (360 / bins) * (today_xx - i)
        # add_x: 环上每个独立文本的横坐标距离pos_x的距离
        add_x = math.cos(c_angle)*cirRadius
        # add_x: 环上每个独立文本的横坐标距离pos_x的距离
        add_y = math.sin(c_angle)*cirRadius
        # print_text(): 调用上面定义的函数,输出换上每个文本
        print_text(font, pos_x + add_x, pos_y + add_y, str(cirText[i - 1]), angle=t_angle)


# 初始化一个界面
pygame.init()
# 屏幕大小
screen = pygame.display.set_mode((800, 700))
# 标题
pygame.display.set_caption("Python Clock")

效果截图:python罗盘代码,pygame,python,开发语言

 

这个时钟有一个神奇的功效,当你心烦时,你就盯着它看,一会你就会感到有一股平和的力量充满了你的大脑。试试吧文章来源地址https://www.toymoban.com/news/detail-518476.html

到了这里,关于利用Python实现一个科幻酷炫的罗盘时钟~网友:求求你,带带弟弟!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 酷炫的青蛇探针serverMmon

    本文软件由网友 114514 推荐; 什么是 serverMmon ? serverMmon (青蛇探针)是 nodeJs 开发的一个酷炫高逼格的云探针、云监控、服务器云监控、多服务器探针。 主要功能介绍: 全球服务器分布世界地图 服务器(控制端) ping 连通率功能 后台编辑 添加 删除 服务器(控制端) 生成服

    2023年04月20日
    浏览(30)
  • Android 酷炫的进度条开源库

    SeekBarWithIntervals: https://github.com/RameshBhupathi/SeekBarWithIntervals Android-ProgressViews: https://github.com/zekapp/Android-ProgressViews SlidingSquareLoaderView: https://github.com/steelkiwi/SlidingSquareLoaderView FuckingVolumeSlider: https://github.com/shellljx/FuckingVolumeSlider FunnyLoader: https://github.com/team-supercharge/FunnyLoader Sect

    2024年04月13日
    浏览(40)
  • 如何用css做出酷炫的视差滚动效果

     

    2024年02月13日
    浏览(44)
  • 分享一个科幻风的404

    先看效果: 再看代码:

    2024年02月07日
    浏览(39)
  • 记录--ThreeJs手搓一个罗盘特效

    最近在学Three.js.,对着文档看了一周多,正好赶上码上掘金的活动,就顺便写了一个小demo,手搓一个罗盘特效。 先来看一下太极的实现方式,这里我们使用CircleGeometry,将其分解开来可以看出是由圆形和半圆形组成 。 CircleGeometry 官网案例 radius 半径 segments 分段(三角面)的数

    2024年02月03日
    浏览(44)
  • Unity之ShaderGraph如何实现科幻空气墙

    今天在油管上看到一个空气墙的特效,感觉做的非常好看,今天我们就来实现以下这个科幻风格的空气墙 效果如下所示: Dots:ShaderGraph的官方示例中提供的点阵SubGraph节点,如下图所示,需要我们导入示例 我们让Dots点阵和SimpleNoise相乘,得到一个空气墙的基本样式,如下所

    2024年02月08日
    浏览(43)
  • 利用Figlet工具创建酷炫Linux Centos8服务器-登录欢迎界面-SHELL自动化编译安装代码

    因为我们需要生成需要的特定字符,所以需要在当前服务器中安装Figlet,默认没有安装包的,其实如果我们也只要在一台环境中安装,然后需要什么字符只要复制到需要的服务器中,并不需要所有都安装。同样的,我们也可以利用此生成的字符用到脚本运行的开始起头部分,

    2024年02月12日
    浏览(57)
  • 如何利用Python编写一个用户登录窗口?

    大家好,我是室节上!今天我来教大家如何用Python编写一个用户登录窗口。 首先,我们可以想一下,一个用户登录窗口通常包含哪些东西。是不是包含有这些东西: 1.文本:  一个窗口如果没有文本,那么用户就不知道这是什么窗口。因此,这个窗口应包含有“账号”和“密

    2024年02月05日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包