0

我有一个程序,假设在 x,y 处创建一个具有设定高度和设定宽度的三角形。这是我拥有的代码,但如果宽度真的很小,它创建的三角形有时会被弄乱。如何用我想要的任何数字作为宽度和高度制作一个完美的三角形?

进口龟

def triangleBuild(width,height):
    turtle.forward(width)
    turtle.left(120)
    turtle.forward(height)
    turtle.left(120)
    turtle.forward(height)

def xYPostion(x,y,宽度,高度):

turtle.penup()
turtle.goto(x,y)
turtle.pendown()

triangleBuild(width,height)
4

1 回答 1

1

在您的情况下,高度是从顶部顶点到底部的距离。而你正在做的是你正在绘制一个具有相同长度(高度)的两条边的三角形你可能想要使用一些数学来计算正确的边长(可能不等于高度)

编辑

如果你想只从宽度和高度绘制一个三角形,你可能想得到三角形的角度,然后用一些数学:

数学情况

import turtle
import math

def triangleBuild(width,height):
    l = ( height**2 + (width/2.0)**2)**0.5
    alfa = math.atan2(height, width/2.0) # To compute alfa
    alfa = math.degrees(alfa)
    alfa = 180.0 - alfa 
    turtle.forward(width)
    turtle.left(alfa)
    turtle.forward(l)
    turtle.left(2*(180-alfa))
    turtle.forward(l)

turtle.penup()
turtle.goto(10,20)
turtle.pendown()

width = 200
height = 100
triangleBuild(width,height)
于 2013-10-24T00:31:39.310 回答