覚え書きブログ

中が空洞のピラミッド(マインクラフトの覚え書き)

前回の宿題とした、効率よくピラミッドを作成するための、中が空洞のピラミッドのコードが出来上がったようだ。

以下が、子供(中1)が作成したPythonコードである。

from mcpi.minecraft import Minecraft
from mcpi.block import *
mc = Minecraft.create()
pos = mc.player.getTilePos()

dansu = 30

for i in range(1,dansu+1):
	for j in range(i*2-1):
		mc.setBlock(pos.x-i+1+j,pos.y+dansu-i,pos.z-i+1,1)
		mc.setBlock(pos.x-i+1,pos.y+dansu-i,pos.z-i+1+j,1)
		mc.setBlock(pos.x-i+1+j,pos.y+dansu-i,pos.z+i-1,1)
		mc.setBlock(pos.x+i-1,pos.y+dansu-i,pos.z-i+1+j,1)

作成した30段のピラミッドの中の様子は以下のようにちゃんと空洞になっている。
f:id:hirotaka_hachiya:20181226104818p:plain

外から見た様子は以下のようになっている。美しい。
f:id:hirotaka_hachiya:20181226104907p:plain

これでピラミッドは何段でも作れる(100段になるとさすがに重いけれども)ようになった。
次は、円柱を作ることを宿題とする。円柱を作るためには、三角関数(cos, sin)を用いた極座標の知識が必要になるので、中1には難しいかなぁ。。。?