这是用了pymunk物理引擎的一个示例。在例子中彩球受到的是零重力,它们有一个初始速度,彼此会产生互碰效果。只有一个海龟对象,程序中所有小球都是画出来的。以下是部分代码预览:
""" turtle_pymunk单击彩球零重力互碰演,谁说海龟模块只能画图。 本程序运行后,单击会有彩球,彩球会移动,但是它们有互碰效果。 """ import sys import math import turtle import pymunk from random import randint def rndcolor(): """产生随机颜色""" r = randint(0,255) g = randint(0,255) b = randint(0,255) return r,g,b def main(): """主要执行函数""" global space,balls width,height = 600,600 screen = turtle.Screen() screen.setup(width,height) screen.title("turtle_pymunk单击彩球零重力互碰演by李兴球") screen.tracer(0,0) screen.colormode(255) screen.bgcolor(115,175,24) # 背景颜色 screen.update() # 刷新显示 space = pymunk.Space() # 重力空间 space.gravity = (0.0, 0.0) # 加速度为0 screen.onclick(add_bubble) # 绑定单击事件 t = turtle.Turtle(visible=False)#用来画球的海龟 t.penup() balls = []
需要浏览更多吗?
成为会员后,登陆才能继续浏览!联系微信scratch8即可办理会员。
(会员专属:能浏览所有文章,下载所有带链接的Python资源。)