我的世界&python——搭建金字塔几种方法

前言

之前发了一个mc的基本操作以及api的使用,如果有问题看这里。

这次我们使用不同的方式来实现一个金字塔。

最简单的话,使用我们已有的setblock,以及for循环就能实现一个。

不过我最想讲的,还是使用minecraftstuff模块自带的一个绘制多边形的方法。

实现——循环

先来一个循环的吧,这部分就直接看代码&注释

import mcpi.minecraft as minecraft
import mcpi.block as block

mc = minecraft.Minecraft.create()
pos = mc.player.getTilePos()
# 高十层
for y in range(10):
    # 计算每一层到中轴线的距离
    width = 9-y
    # 分别绘制四条直线
    for x in range(pos.x-width,pos.x+width+1):
        mc.setBlock(x,pos.y+y,pos.z-width,block.GLASS.id)
        mc.setBlock(x,pos.y+y,pos.z+width,block.GLASS.id)
    for z in range(pos.z-width+1,pos.z+width):
        mc.setBlock(pos.x-width,pos.y+y,z,block.GLASS.id)
        mc.setBlock(pos.x+width,pos.y+y,z,block.GLASS.id)

实现效果:
在这里插入图片描述

实现——绘制多边形

模块讲解。

minecraftstuff中提供了一个类叫做MinecraftDrawing,这个类中有很多的绘制函数,比如给两个点绘制一条直线,或者是绘制圆、球,当然也有绘制多边形的函数,今天的主角叫做drawFace

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值