单击鼠标绘制同心圆,单击一次绘制一个,多个同心圆可组成不同图案python代码
时间: 2024-12-12 09:19:47 浏览: 12
易语言桌面图标排列成一个圆
在Python中,你可以使用`tkinter`库创建一个简单的图形界面来实现点击鼠标绘制同心圆的功能。这里是一个基本的例子,它会在每个鼠标点击位置生成一个新的同心圆:
```python
import tkinter as tk
from math import sin, cos, pi
def draw_circle(event):
x, y = event.x, event.y
canvas.delete('all') # 清除已有的图像
radius = int((event.x - root.winfo_rootx()) / 50) # 计算圆的半径,假设屏幕宽度是2000像素,每次增加50像素
for i in range(18): # 绘制18层同心圆
angle = i * (2*pi/18)
circle = canvas.create_oval(x-radius*sin(angle), y-radius*cos(angle), x+radius*sin(angle), y+radius*cos(angle), fill='blue', width=2)
root = tk.Tk()
canvas = tk.Canvas(root, bg='white', width=800, height=600)
canvas.pack()
# 绑定鼠标点击事件
canvas.bind("<Button-1>", draw_circle)
root.mainloop()
```
在这个代码中,我们监听鼠标左键点击事件 `<Button-1>`,并调用 `draw_circle` 函数。每次点击,函数会清除旧的圆形,并根据当前鼠标的坐标和一个递增的半径值生成新的同心圆。
阅读全文