首页 > 解决方案 > 如何从用户那里捕获 3 个点并形成一个三角形?

问题描述

如何编写一个程序,将用户输入作为三个鼠标点击的坐标,然后使用这三个点在图形窗口中绘制一个三角形?用于此目的的图形模块有哪些?

标签: pythonpython-3.x

解决方案


每次单击画布三次时,都会绘制三角形。

from tkinter import *

#to store triangle coordinates
coordinates = []
root = Tk()


#called everytime the canvas is clicked
def pressed(event):
    global coordinates
    coordinates.append((event.x, event.y))

    if len(coordinates) == 3:
        for x in range(3):
            secondCordinate = (x + 1) % 3
            canvas.create_line(coordinates[x][0], coordinates[x][1], coordinates[secondCordinate][0], coordinates[secondCordinate][1])
        coordinates = []


canvas= Canvas(root, width=400, height=400)
canvas.bind("<Button-1>", pressed)
canvas.pack()

root.mainloop() 

推荐阅读