当前位置: 首页 > 面试题库 >

在Python中每17毫秒在屏幕上绘制一个点?

伍心水
2023-03-14
问题内容

我设法将一个脚本接收到一个字符串,该脚本从iOS应用程序接收设置速度和方向的命令。

问题是我没有实际的设备,所以我的应用程序将命令发送到我构建的一个使用龙卷风的小型python Web套接字服务器…

本质上,我理想中需要的是一种方法:

显示窗口每隔17毫秒,清除一次窗口,读取带有x和y的全局变量,并在x和y处绘制点或圆。

有没有方便的方法可以做到这一点,以便我可以直观地看到发生了什么?

如果我每隔X毫秒就可以在窗口中画出一个圆,则我可以处理其余的事情。

需要添加的内容:

-create a window
-create a timer
on timer callback: clear screen and draw a circle in the window.

问题答案:

您应该尝试使用pygame进行图形处理。首先下载pygame

这是示例代码

import pygame,sys
from pygame import *

WIDTH = 480
HEIGHT = 480
WHITE = (255,255,255) #RGB
BLACK = (0,0,0) #RGB

pygame.init()
screen = display.set_mode((WIDTH,HEIGHT),0,32)
display.set_caption("Name of Application")
screen.fill(WHITE)
timer = pygame.time.Clock()
pos_on_screen, radius = (50, 50), 20    
while True:
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()
    timer.tick(60) #60 times per second you can do the math for 17 ms
    draw.circle(screen, BLACK, pos_on_screen, radius)
    display.update()

希望有帮助。请记住,您需要先下载pygame。您还应该阅读pygame。这真的很有帮助。



 类似资料:
  • 问题内容: 我要执行以下操作: 我希望在短时间内显示许多不同的像素和颜色配置-写入中间文件会太昂贵。 我如何最好地实现Python中的这一目标? 问题答案: 直接回答: 这只能通过特定于操作系统的API来完成。某些操作系统不允许直接更改屏幕上的像素。 在Windows上,您可以使用pywin32库通过调用获取屏幕的设备上下文,然后使用绘制像素。 当然,以这种方式绘制的内容可以随时删除。 正确答案:

  • 现在,我正在使用CustomView在画布上绘制,我需要将画布(可能作为位图)保存到FileOutputStream中,然后移动到另一个具有相同功能的CustomView。 我不确定我是否应该使用不同的方法来实现它,但是我正在做的任何事情都在我调用start Active(i)时崩溃。 我的理解是,我的CustomView是用onTouch()绘制的,它绘制到路径对象上,然后调用onDraw(ca

  • 我必须创建一个新的类来创建一个全新的PaintComponent()吗?或者我会简单地创建一个新的Graphics2D对象,这样我就可以使用不同的字体、颜色等等?我想最让我困惑的是我不能调用不同的draw方法,因为我仍然需要传递g2d作为参数。因此,在我看来,我需要从另一个已经有g2d对象的方法中创建线程。 如果这让我感到困惑,我很抱歉,因为我仍然是Java的初学者。如果你需要更多的信息,尽管告诉

  • 使用matplotlib时,我可以使用{importmatplotlib.pyplotas plt}因为我使用Tkinter,所以我也会使用PicreCanvasTkAgg来做同样的事情 有人能帮我在如何实现matplotlib的停顿效果在菲格勒CanvasTkAgg。

  • 我正在尝试使用ffmpeg 4.3录制屏幕和音频。但在最终输出中,我的音频比视频慢500到1秒。为什么会这样?如何解决这个问题?以下是我在Windows 10计算机上使用的命令: ffmpeg。exe-threads 4-rtbufsize 1024m-f dshow-i audio=“麦克风(Realtek audio)”-f gdigrab-offset_x 0-offset_y 0-vide

  • 问题内容: 我有以下Python Tkinter代码,该代码每10秒重绘一次标签。我的问题是,对我而言,似乎是一遍又一遍地在旧标签上绘制新标签。因此,最终,几个小时后,将有数百个图纸重叠(至少从我的理解来看)。这会占用更多内存还是会引起问题? 在我的示例中,我仅使用一个标签。我知道可以用来更新标签甚至是文本。但是实际要做的是刷新标签(如表格),按钮和填充物的网格,以与可用的最新数据相匹配。 从我了