python如何制作形状? 这就是我所做的
import turtle,random,sys
turtle.title("SHOT")
turtle.setup (width=800, height=600)
turtle.bgcolor("light green")
turtle.screensize(10, 400)
class boxes:
box_A = turtle.getturtle()
box_B = turtle.getturtle()
box_A.hideturtle()
box_B.hideturtle()
box_A.setposition(-300,0)
box_A.setposition(300,0)
box_A.showturtle()
box_B.showturtle()
我的电脑画线...我不想要线...... 所以我想擦除线条 我想制作一个矩形盒子(两个) 我试着用
制作矩形 box_A.shape("rectangle")
当然,它不起作用;;;
伙计们请帮帮我答案 0 :(得分:2)
您可以使用坐标创建自定义形状。首先,做正常的陈述。
import turtle
t = turtle.Turtle()
s = turtle.Screen() # The Screen is VERY important for this project!
好的!现在要更改 t
的形状,我们必须输入一组坐标。以下是我制作的一些您可以使用的预设:
Pointer: ((15,0),(0,25),(-15,0),(0,3))
Noel Star: ((0,20),(-5,5),(-20,0),(-5,-5),(0,-20),(5,-5),(20,0),(5,5))
X: ((15,15),(-15,-15),(0,0),(15,-15),(-15,15),(0,0))
Cross: ((-7.5,-15),(7.5,-15),(7.5,-7.5),(15,-7.5),(15,7.5),(7.5,7.5),(7.5,15),(-7.5,15),(-7.5,7.5),(-15,7.5),(-15,-7.5),(-7.5,-7.5))
Right Triangle: ((20,0),(0,-20),(0,0))
Arrow: ((-15,7.5),(-10,0),(-15,-7.5),(5,-7.5),(15,0),(5,7.5))
Parallelogram: ((-30,20),(-40,-20),(30,-20),(40,20))
Rhombus: ((0,-20),(-10,0),(0,20),(10,0))
Trapezoid: ((-20,20),(20,20),(30,0),(-30,0))
Pentagon: ((-5,10),(-10,0),(-5,-10),(5,-10),(10,0),(5,10))
Hexagon: ((-10,20),(-20,0),(-10,-20),(10,-20),(20,0),(10,20))
Octagon: ((-10,20),(10,20),(20,10),(20,-10),(10,-20),(-10,-20),(-20,-10),(-20,10))
矩形的坐标是:((-20,10),(20,10),(20,-10),(-20,-10))
。要将其注册为自定义形状,请使用 register_shape()
函数。第一个参数是您将命名的形状; '矩形',在这种情况下。第二个参数是坐标,所以将它们保存为变量。
rectCors = ((-20,10),(20,10),(20,-10),(-20,-10));
s.register_shape('rectangle',rectCors);
好的。现在只需告诉乌龟它的形状是一个矩形。
t.shape('rectangle');
完成!总的来说,就是:
import turtle
t = turtle.Turtle();
s = turtle.Screen();
rectCors = ((-20,10),(20,10),(20,-10),(-20,-10));
s.register_shape('rectangle',rectCors);
t.shape('rectangle');
注意:
如果您想知道,除了 t.setheading(90)
或 t.setheading(-90)
之外,无法将形状从水平更改为垂直。
答案 1 :(得分:0)
画四行:
box_A.setposition(-300,0)
box_A.setposition(-300,200)
box_A.setposition(0,200)
box_A.setposition(0,0)
答案 2 :(得分:0)
我认为这也是您正在尝试的事情
import turtle
wn = turtle.Screen()
wn.tracer()
bird = turtle.Turtle()
bird.shape("square")
你必须做正方形,rect不是乌龟的形状
bird.shapesize(stretch_wid=5, stretch_len=10)
然后通过将宽度大于高度来将其拉伸为矩形
bird.color("green")
bird.setpos(0, 0)
bird.penup()
Penup是用于移动的,它不会在其后面画线
bird.speed(0)
如果这样做,速度只会使动画瞬间
wn.exitonclick()
希望这对您有帮助
答案 3 :(得分:0)
就去做
object.shape("square")
object.shapesize(X, Y)
这将根据它的像素制作一个矩形 或者这样做
object.shape("square")
object.shapesize(stretch_wid=5, stretch_len=1)
这将生成一个比例为 5:1 的矩形,每个单元是一个正方形