本文整理汇总了Python中turtle.Screen.register_shape方法的典型用法代码示例。如果您正苦于以下问题:Python Screen.register_shape方法的具体用法?Python Screen.register_shape怎么用?Python Screen.register_shape使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类turtle.Screen
的用法示例。
在下文中一共展示了Screen.register_shape方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: main
# 需要导入模块: from turtle import Screen [as 别名]
# 或者: from turtle.Screen import register_shape [as 别名]
def main():
## create compound yellow/blue turtleshape for planets
global s
s = Screen()
s.setup(1120,840)
s.reset()
s.tracer(0, 0)
t = Turtle()
t.ht()
t.pu()
t.fd(6)
t.lt(90)
t.begin_poly()
t.circle(6, 180)
t.end_poly()
m1 = t.get_poly()
t.begin_poly()
t.circle(6,180)
t.end_poly()
m2 = t.get_poly()
planetshape = Shape("compound")
planetshape.addcomponent(m1,"orange")
planetshape.addcomponent(m2,"blue")
s.register_shape("planet", planetshape)
#s.tracer(1,0)
s.update()
## setup gravitational system
gs = GravSys()
sun = Star(1000000, Vec(-250,0), Vec(0,-0.35), gs, "circle")
sun.color("yellow")
sun.pensize(1.8)
sun.pu()
earth = Star(5000, Vec(450,0), Vec(0,70), gs, "planet")
earth.pencolor("green")
earth.shapesize(0.8)
rm=12.0583
vm=(8.0*5000/rm)**.5
moon = Star(1, Vec(450+rm,0), Vec(0,70+vm), gs, "planet")
moon.pencolor("blue")
moon.shapesize(0.5)
gs.init()
gs.start()
return "Done!"
示例2: createPlanetShape
# 需要导入模块: from turtle import Screen [as 别名]
# 或者: from turtle.Screen import register_shape [as 别名]
def createPlanetShape():
s = Screen()
s.tracer(0, 0)
t = Turtle()
t.ht()
t.pu()
t.fd(6)
t.lt(90)
t.begin_poly()
t.circle(6, 180)
t.end_poly()
m1 = t.get_poly()
t.begin_poly()
t.circle(6, 180)
t.end_poly()
m2 = t.get_poly()
planetshape = Shape("compound")
planetshape.addcomponent(m1, "orange")
planetshape.addcomponent(m2, "blue")
s.register_shape("planet", planetshape)
s.tracer(True, 0)
示例3: getDY
# 需要导入模块: from turtle import Screen [as 别名]
# 或者: from turtle.Screen import register_shape [as 别名]
def getDY(self):
return self.dy
def intersect(object1, object2):
dist = math.sqrt((object1.xcor() - object2.xcor()) ** 2 +
(object1.ycor() - object2.ycor()) ** 2)
radius1 = object1.getRadius()
radius2 = object2.getRadius()
return dist <= radius1 + radius2
screen.register_shape("rock3", ((-20, -16), (-21, 0), (-20, 18), (0, 27),
(17, 15), (25, 0), (16, -15), (0, -21)))
screen.register_shape("rock2", ((-15, -10), (-16, 0), (-13, 12), (0, 19),
(12, 10), (20, 0), (12, -10), (0, -13)))
screen.register_shape("rock1", ((-10, -5), (-12, 0), (-8, 8), (0, 13), (8, 6),
(14, 0), (12, 0), (8, -6), (0, -7)))
screen.register_shape("ship", ((-10, -10), (0, -5), (10, -10), (0, 10)))
screen.register_shape("bullet", ((-2, -4), (-2, 4), (2, 4), (2, -4)))
ship = SpaceShip(screen, 0, 0, (screenMaxX - screenMinX) / 2 + screenMinX,
(screenMaxY - screenMinY) / 2 + screenMinY)
asteroids = []
for k in range(5):
dx = random.random() * 6 - 3
dy = random.random() * 6 - 3