python turtle画虚线_python之turtle画地铁技能get

这段代码使用Python的turtle库来创建一个地铁车厢的图形,包括车厢的形状、窗户、门,并模拟了门的开关状态。代码还包含了在车厢内随机分布乘客的功能,以及地铁行驶、乘客上下车的动画效果。
摘要由CSDN通过智能技术生成

import time, math

import turtle as t

def fill_rect(w,h,c):

t.fillcolor(c)

t.begin_fill()

for i in range(2):

t.forward(w)

t.left(90)

t.forward(h)

t.left(90)

t.end_fill()

def draw_rect(w,h):

for i in range(2):

t.forward(w)

t.left(90)

t.forward(h)

t.left(90)

def setx_with_penup(tx):

t.penup()

t.setx(tx)

t.pendown()

def sety_with_penup(ty):

t.penup()

t.sety(ty)

t.pendown()

def goto_with_penup(tx,ty):

t.penup()

t.goto(tx,ty)

t.pendown()

size=60 # 车厢大小

block_num=7 # 车厢数量

human_num_str=[5,2,0,1,3,1,4] # 每节车厢的人数

door_pos_arr=[0.3,1,1.7] # 一节车厢三扇门的位置

def draw_metro(x,size=40,door_open_ratio=0):

t.clear()

t.pensize(1)

every_width=size*2

metro_h=size*0.6

goto_with_penup(x,0)

t.setx(x-every_width*0.2)

t.goto(x=x-every_width*0.1,y=metro_h)

t.setx(x)

goto_with_penup(x-every_width*0.1,metro_h*0.3)

draw_rect(metro_h*0.2,metro_h*0.4)

for a in range(0,block_num):

sety_with_penup(0)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值