【发布时间】:2013-12-02 06:55:15
【问题描述】:
只是想知道,是否可以用半透明墨水绘制/填充乌龟?
类似:
turtle.setfillopacity(50) # Would set it to 50% transparency
运行 python 2.7
【问题讨论】:
-
我什么也找不到。通常,它是可选的第四种颜色分量(r、g、b、a),但文档没有提及。
只是想知道,是否可以用半透明墨水绘制/填充乌龟?
类似:
turtle.setfillopacity(50) # Would set it to 50% transparency
运行 python 2.7
【问题讨论】:
这是不可能的,但你可以定义你的颜色,然后是一个灯光等价物,然后使用它们。
Red = (255,0,0,0)
LRed = (100,0,0)
我认为这会达到类似的效果。然后,当您想要半透明时,您可以使用较浅的颜色。
【讨论】:
这个 python 乌龟示例淡出文本,同时保持原始乌龟图章未修改:
import turtle
import time
alex = turtle.Turtle()
alex_text = turtle.Turtle()
alex_text.goto(alex.position()[0], alex.position()[1])
alex_text.pencolor((0, 0, 0)) #black
alex_text.write("hello")
time.sleep(1)
alex_text.clear()
alex_text.pencolor((.1, .1, .1)) #dark grey
alex_text.write("hello")
time.sleep(1)
alex_text.pencolor((.5, .5, .5)) #Grey
alex_text.write("hello")
time.sleep(1)
alex_text.pencolor((.8, .8, .8)) #Light grey
alex_text.write("hello")
time.sleep(1)
alex_text.pencolor((1, 1, 1)) #white
alex_text.write("hello")
time.sleep(1)
alex_text.clear() #gone
time.sleep(1)
文本模拟不透明度增加到最大值。亚历克斯的邮票未经修改。
【讨论】:
你可以这样做
import turtle
turtle = turtle.Turtle()
r = 100
g = 100
b = 100
a = 0.5
turtle.color(r,g,b,a)
(好吧,也许它只适用于 repl.it)
【讨论】:
嗯,你可以使用 RGBA。
首先,放入正常语句:
import turtlet = turtle.Turtle()然后,使用t.color(),但使用RGBA。
RGBA的第一部分与RGB相同,最后一个值为不透明度的百分比(其中0为透明,1为不透明。)
t.color(0,0,0,.5)会让你变黑,不透明度为 50%。
【讨论】:
如果您想要完全不透明,可以使用turtle.hideturtle() 来做到这一点。
就像在最后一行中使用的一样:
import turtle
t = turtle.Turtle()
t.speed(1)
t.color("blue")
t.begin_fill()
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.end_fill()
t.color("red")
t.begin_fill()
t.forward(101)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.end_fill()
t.color("green")
t.begin_fill()
t.forward(101)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.end_fill()
t.color("yellow")
t.begin_fill()
t.forward(101)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.end_fill()
t.hideturtle()
【讨论】:
turtle.hideturtle() 不仅仅是不透明度,它还使它无法点击。不仅如此,完全不可见并不是不透明的唯一用例。通常,您需要部分透明。