python turtle resizemode 解释
根据官方文档的解释:
turtle.``resizemode
(rmode=None)
-
参数
rmode -- 字符串 "auto", "user", "noresize" 其中之一
设置大小调整模式为以下值之一: "auto", "user", "noresize"。如未指定 rmode 则返回当前的大小调整模式。不同的大小调整模式的效果如下:
- "auto": 根据画笔粗细值调整海龟的外观。
- "user": 根据拉伸因子和轮廓宽度 (outline) 值调整海龟的外观,两者是由
shapesize()
设置的。 - "noresize": 不调整海龟的外观大小。
大小调整模式 ("user") 会在 shapesize()
带参数调用时生效。
>>> turtle.resizemode()
'noresize'
>>> turtle.resizemode("auto")
>>> turtle.resizemode()
'auto'
我们来看几个例子:
1. noresize
import turtle as t
p1 = t.Turtle()
p1.pensize(10)
print(f'p1: {p1.resizemode()}')
t.mainloop()
resizemode默认是
noresize`:turtle不会自己调整大小
2. auto
import turtle as t
p2 = t.Turtle()
p2.resizemode('auto') #只有设置了auto,turtle大小才会根据pensize变化
p2.pensize(10)
p2.goto(-100, -100)
print(f'p2: {p2.resizemode()}')
t.mainloop()
把resizemode
设置为auto
后,如果我们再修改pensize
的值,turtle的大小也会同时发生变化。
上图是加了‘auto’的,下图是没加‘auto’的
3. user
import turtle as t
p3 = t.Turtle()
p3.shapesize(10,10,3) #一旦设置了shapesize,resizemode会自动改为user
p3.goto(100, 100)
print(f'p3: {p3.resizemode()}')
t.mainloop()
一旦设置了shapesize
,resizemode
会自动设置为user
,turtle会根据shapesize的参数调整大小。
上图是加了‘shapesize’的,下图是没加‘shapesize’的
完整代码
import turtle as t
#resizemode的示例
#1. 默认是noresize,不会随着画笔的变化而变化
p1 = t.Turtle()
p1.pensize(10)
print(f'p1: {p1.resizemode()}')
#2. auto会根据画笔的粗细有所调整
p2 = t.Turtle()
p2.resizemode('auto') #只有设置了auto,turtle大小才会根据pensize变化
p2.pensize(10)
p2.goto(-100, -100)
print(f'p2: {p2.resizemode()}')
#3. user是指用户自己通过shapesize()自己设置
p3 = t.Turtle()
p3.shapesize(10,10,3) #一旦设置了shapesize,resizemode会自动改为user
p3.goto(100, 100)
print(f'p3: {p3.resizemode()}')
注意:本文归作者所有,未经作者允许,不得转载