我需要创建一个带参数但却无法正常工作的三角形

时间:2013-10-24 00:26:14

标签: python turtle-graphics

我有一个程序,假设在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,width,height):

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

triangleBuild(width,height)

1 个答案:

答案 0 :(得分:1)

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

编辑

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

Math situation

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)