python绘制象棋棋盘图片_如何用Python画一个中国象棋棋盘?

今天试着画了一个中国象棋棋盘!

902bb85839a08bd637772d688edf89fd.png

#绘制象棋盘

import turtle

t=turtle.Pen()

t.speed(100)

def angle(x,y):

t.penup()

t.goto(x+3,y+3)

t.pendown()

t.setheading(0)

t.forward(5)

t.goto(x+3,y+3)

t.left(90)

t.forward(5)

t.penup()

t.goto(x+3,y-3)

t.pendown()

t.setheading(0)

t.forward(5)

t.goto(x+3,y-3)

t.left(90)

t.forward(-5)

t.penup()

t.goto(x-3,y+3)

t.pendown()

t.setheading(0)

t.forward(-5)

t.goto(x-3,y+3)

t.left(90)

t.forward(5)

t.penup()

t.goto(x-3,y-3)

t.pendown()

t.setheading(0)

t.forward(-5)

t.goto(x-3,y-3)

t.left(90)

t.forward(-5)

def v(x,y):

t.penup()

t.goto(x+3,y+3)

t.pendown()

t.setheading(0)

t.forward(5)

t.goto(x+3,y+3)

t.left(90)

t.forward(5)

t.penup()

t.goto(x+3,y-3)

t.pendown()

t.setheading(0)

t.forward(5)

t.goto(x+3,y-3)

t.left(90)

t.forward(-5)

t.penup()

def a(x,y):

t.penup()

t.goto(x-3,y+3)

t.pendown()

t.setheading(0)

t.forward(-5)

t.goto(x-3,y+3)

t.left(90)

t.forward(5)

t.penup()

t.goto(x-3,y-3)

t.pendown()

t.setheading(0)

t.forward(-5)

t.goto(x-3,y-3)

t.left(90)

t.forward(-5)

#1.绘制所有横线

t.penup()

t.goto(-80,90)

t.pendown()

for i in range(1,6,1):

t.forward(160)

t.penup()

t.right(90)

t.forward(20)

t.right(90)

t.pendown()

t.forward(160)

t.penup()

t.left(90)

t.forward(20)

t.left(90)

t.pendown()

#2.绘制所有竖线

t.left(90)

t.penup()

t.forward(20)

t.pendown()

for i in range(1,5,1):

t.forward(80)

t.penup()

t.forward(20)

t.pendown()

t.forward(80)

t.right(90)

t.forward(20)

t.right(90)

t.forward(80)

t.penup()

t.forward(20)

t.pendown()

t.forward(80)

t.left(90)

t.forward(20)

t.left(90)

t.forward(180)

t.left(90)

t.forward(160)

t.left(90)

t.forward(180)

#3.绘制斜线

t.left(90)

t.forward(60)

t.left(45)

t.forward(40*1.414)

t.left(45)

t.forward(-40)

t.left(45)

t.forward(40*1.414)

t.penup()

t.goto(-20,90)

t.pendown()

t.right(180)

t.forward(40*1.414)

t.right(45)

t.forward(-40)

t.right(45)

t.forward(40*1.414)

#4.绘制炮和兵的位置

angle(60,50)

angle(-60,50)

angle(60,-50)

angle(-60,-50)

angle(40,30)

angle(-40,30)

angle(40,-30)

angle(-40,-30)

angle(0,30)

angle(0,-30)

a(80,30)

a(80,-30)

v(-80,-30)

v(-80,30)

#5.绘制外围线   绘制一个长方形,设置笔的粗细

t.penup()

t.goto(-90,-100)

t.pendown()

t.pensize(10)

t.forward(200)

t.right(90)

t.forward(180)

t.right(90)

t.forward(200)

t.right(90)

t.forward(180)

t.right(90)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用turtle库绘制中国象棋棋盘,具体实现可以参考以下代码: import turtle # 设置布大小 turtle.setup(800, 800) # 设置笔颜色和粗细 turtle.pensize(2) turtle.pencolor("black") # 绘制棋盘边框 turtle.penup() turtle.goto(-300, 300) turtle.pendown() turtle.goto(300, 300) turtle.goto(300, -300) turtle.goto(-300, -300) turtle.goto(-300, 300) # 绘制棋盘横线 turtle.penup() turtle.goto(-300, 240) turtle.pendown() turtle.goto(300, 240) turtle.penup() turtle.goto(-300, 180) turtle.pendown() turtle.goto(300, 180) turtle.penup() turtle.goto(-300, 120) turtle.pendown() turtle.goto(300, 120) turtle.penup() turtle.goto(-300, 60) turtle.pendown() turtle.goto(300, 60) turtle.penup() turtle.goto(-300, ) turtle.pendown() turtle.goto(300, ) turtle.penup() turtle.goto(-300, -60) turtle.pendown() turtle.goto(300, -60) turtle.penup() turtle.goto(-300, -120) turtle.pendown() turtle.goto(300, -120) turtle.penup() turtle.goto(-300, -180) turtle.pendown() turtle.goto(300, -180) turtle.penup() turtle.goto(-300, -240) turtle.pendown() turtle.goto(300, -240) # 绘制棋盘竖线 turtle.penup() turtle.goto(-240, 300) turtle.pendown() turtle.goto(-240, -300) turtle.penup() turtle.goto(-180, 300) turtle.pendown() turtle.goto(-180, -300) turtle.penup() turtle.goto(-120, 300) turtle.pendown() turtle.goto(-120, -300) turtle.penup() turtle.goto(-60, 300) turtle.pendown() turtle.goto(-60, -300) turtle.penup() turtle.goto(, 300) turtle.pendown() turtle.goto(, -300) turtle.penup() turtle.goto(60, 300) turtle.pendown() turtle.goto(60, -300) turtle.penup() turtle.goto(120, 300) turtle.pendown() turtle.goto(120, -300) turtle.penup() turtle.goto(180, 300) turtle.pendown() turtle.goto(180, -300) turtle.penup() turtle.goto(240, 300) turtle.pendown() turtle.goto(240, -300) # 隐藏笔 turtle.hideturtle() # 等待用户关闭窗口 turtle.done()

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值