BlenderでOBJファイル(ジオメトリ形式)へエクスポートします。
準備するもの |
|
takk@deb83:~$ cat bl-export.sh 1 #!/bin/bash 2 cat <<EOL>/tmp/tmp.py 3 4 import bpy 5 6 bpy.data.objects['Cube'].location=(5,3,1) 7 8 bpy.ops.export_scene.obj(filepath='wavefront.obj') 9 10 EOL 11 blender -P /tmp/tmp.py takk@deb83:~$ . bl-export.sh
エクスポートしたOBJファイルを確認してみます。
takk@deb83:~$ cat -n wavefront.obj 1 # Blender v2.72 (sub 0) OBJ File: '' 2 # www.blender.org 3 mtllib wavefront.mtl 4 o Cube 5 v 6.000000 0.000000 -4.000000 6 v 6.000000 0.000000 -2.000000 7 v 4.000000 0.000000 -2.000000 8 v 4.000000 0.000000 -4.000000 9 v 6.000000 2.000000 -4.000000 10 v 6.000000 2.000000 -1.999999 11 v 4.000000 2.000000 -2.000000 12 v 4.000000 2.000000 -4.000000 13 usemtl Material 14 s off 15 f 1 2 3 4 16 f 5 8 7 6 17 f 1 5 6 2 18 f 2 6 7 3 19 f 3 7 8 4 20 f 5 1 4 8
5行目〜12行目までがCubeの頂点座標(X,Y,Z)(Blenderの座標で(X,-Z,Y)になります。
takk@deb83:~$ sed -e '/^v/s/\([1-9]\)\./0\.\1/g' -i wavefront.obj takk@deb83:~$ cat -n wavefront.obj 1 # Blender v2.72 (sub 0) OBJ File: '' 2 # www.blender.org 3 mtllib wavefront.mtl 4 o Cube 5 v 0.6000000 0.000000 -0.4000000 6 v 0.6000000 0.000000 -0.2000000 7 v 0.4000000 0.000000 -0.2000000 8 v 0.4000000 0.000000 -0.4000000 9 v 0.6000000 0.2000000 -0.4000000 10 v 0.6000000 0.2000000 -0.1999999 11 v 0.4000000 0.2000000 -0.2000000 12 v 0.4000000 0.2000000 -0.4000000 13 usemtl Material 14 s off 15 f 1 2 3 4 16 f 5 8 7 6 17 f 1 5 6 2 18 f 2 6 7 3 19 f 3 7 8 4 20 f 5 1 4 8
では置換したOBJファイルをインポートします。
takk@deb83:~$ cat bl-import.sh 1 #!/bin/bash 2 cat <<EOL>/tmp/tmp.py 3 4 import bpy 5 6 bpy.ops.object.delete() 7 8 bpy.ops.import_scene.obj(filepath='wavefront.obj') 9 10 EOL 11 blender -P /tmp/tmp.py takk@deb83:~$ . bl-import.sh
コメント