隅田川沿いを歩きつつ

歩きながら考えたことや感じたこと

Blender PythonAPIでCubeをrotationする

Blender の PythonAPI を勉強中です。

今回は、Blender で PythonAPI で cube を作って、それを回転させたいと思います。

18個のcubeを20度ずつ回転させる

cubeが回っていることがわかりやすいように、18個のcubeを20度ずつ回転させて並べました。

回転させるためのコードは2種類つくりました。

1つ目は、math.piを使いました。

math.pi*2/18*x

2つ目は、角度をradiansで変換しました。

math.radians(x*20)

どちらもmathを使うので、最初にmathモジュールをインポートが必要です。

コード全体は以下となります。

import bpy
import random
import math


def delete_all():
    for item in bpy.data.meshes:
        bpy.data.meshes.remove(item)


def make_cube(x, r):
    loc = (x, 0, 0)
    rot = (r, 0, 0)
    cube = bpy.ops.mesh.primitive_cube_add(location=loc, rotation=rot)


def make_cubes():
    for x in range(19):
        r = math.pi*2/18*x
        # r = math.radians(x*20)
        make_cube(x*3, r)


if __name__ == '__main__':
    delete_all()
    make_cubes()

3Dは超初心者なので、回転させるイメージが湧きづらいです。。

何度もやってれば慣れますかね?

yuuuha.hatenablog.com

BlenderユーザーのためのPython入門

BlenderユーザーのためのPython入門

  • 作者:大西武
  • シーアンドアール研究所
Amazon