繁体   English   中英

Python龟箭头没有面向正确的方向

[英]Python turtle arrowheads not facing in correct direction

我正在尝试使用Python龟绘制箭头。 但是当它到达箭头时,我会看到乌龟朝向并加上45度来绘制箭头的一半,然后回到相同位置以绘制另一部分。 我设置了正确的角度,但一切都出错了:

初始化

StartPointX=0
StartPointY=0
MaxX=100
MaxY=100

绘制箭头线

Brush.goto(StartPointX,StartPointY)
Brush.goto(MaxX,MaxY)

绘制箭头

Brush.left(45)
Brush.backward(20)
Brush.forward(20)
Brush.right(90)
Brush.backward(20)

输出图像:

输出图像在这里

问题是你忽略了乌龟的标题 当你使用goto()时,乌龟的标题不变。 当你left(45)left(45) ,它相对于什么左转45度? 当前标题的左侧,尚未设置:

from turtle import Screen, Turtle

StartPointX = 0
StartPointY = 0
MaxX = 100
MaxY = 100

screen = Screen()
brush = Turtle()

# Drawing The arrow line

brush.penup()
brush.goto(StartPointX, StartPointY)
brush.pendown()

brush.setheading(brush.towards(MaxX, MaxY))
brush.goto(MaxX, MaxY)

# Drawing arrow head

brush.left(45)
brush.backward(20)
brush.forward(20)
brush.right(90)
brush.backward(20)

brush.hideturtle()
screen.exitonclick()

另一种方法:

MaxX = 100
MaxY = 100

# ...

brush.setheading(brush.towards(MaxX, MaxY))
brush.goto(MaxX, MaxY)

是控制标题并使用forward()而不是goto()

Distance = 140

# ...

brush.setheading(45)
brush.forward(Distance)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM