Blender Python 6〜プログラムで三角錐〜
前回は、下記のサイトを参考に基本的なスクリプトを叩きました(実行しました)。
今回は、次のページ?を参考にします。
まずは、自分がどのディレクトリにいるのか確認します。
※カレントディレクトリ→Macであれば、ターミナル、Windowsであれば
コマンドプロンプトを立ち上げた時にMac: pwd, Windows: カーソルの左側に
表示されている、ディレクトリ(フォルダ)のことです。
引き続き、パイソンコンソールで以下のように入力します。
>import os
>os.path.abspath(os.path.dirname("."))
これで表示されるディレクトリがカレントディレクトリになるハズ。。。
そして、参考サイトにあるコード
>diri(bpy.ops)
下のデータを渡す時に使用する値(Vectorなど)をPythonで表現すると以下のようになります。
, , and
「Python」※ 自分は「import math」をやる必要がありました。
Vertices = \ [ mathutils.Vector((0, -1 / math.sqrt(3),0)), mathutils.Vector((0.5, 1 / (2 * math.sqrt(3)), 0)), mathutils.Vector((-0.5, 1 / (2 * math.sqrt(3)), 0)), mathutils.Vector((0, 0, math.sqrt(2 / 3))), ]
使用している関数の実行結果です。math.sqrt(3)はルート3に成る様です。
>>> import math
>>> math.sqrt(3)
そして、写経。。。。テキストエディタより起動します。
コンソール画面の下「Text」をクリック後に「Run Text」をクリックで実行
import bpy
import math
from mathutils import Vector
vertices = [
Vector*1,
Vector*2, 0)),
Vector*3, 0)),
Vector((0, 0, math.sqrt(3))),
]
print(vertices)
mesh = bpy.data.meshes.new('MyMesh')
mesh.from_pydata(vertices, [], [[0,1,2], [0,1,3], [1,2,3], [2,0,3]])
mesh.update()
obj = bpy.data.objects.new('MyObject',mesh)
bpy.context.scene.objects.link(obj)
そして、実行結果
pythonコードに慣れないせいか色々と手こずりましたが、なんとか表示することができました。
今日はここまででお腹いっぱいです。。。
次回は、作成した四角錐をいじってみようと思います。