Takunojiのプログラミング・プレイグラウンド(遊び場)

Javaプログラミングを基本にして、ゲーム作成に必要なことの調査結果、やったら面白そうなことなどを記載します。プログラミングのススメ的なことも記載します。プログラミングで楽しく遊ぶために色々と記載して行きます。

Blender Python Basic and Script 〜基本とスクリプト〜

前回は、ブレンダーのインストールからPythonでのハローワールド
オブジェクトの移動までやりました。

takunoji.hatenablog.com

今回は、オブジェクトのプロパティを変更してみようと思います。
プロパティとはオブジェクトの持っている情報のことです。
前回の「移動」に関しては位置情報のプロパティを変更して移動しました。

プロパティ一覧はこちら

Context Access (bpy.context) — Blender 2.73.0 b4d8fb5 - API documentation

英語が苦手な人はこのまま進んでください。
ちなみに自分も見たけどプロパティの操作方法がわかりませんでした。

とりあえず、前回の「location」の操作
>bpy.context.object.location = (2,0,0)
これでCubeが移動します。

f:id:Takunoji:20180312220051p:plain

次は、角度を変更します。
>bpy.context.object.ratation_euler = (1,0,0)

f:id:Takunoji:20180312220256p:plain

>bpy.context.object.rotation_euluer = (0,1,0)

f:id:Takunoji:20180312220359p:plain

>bpy.context.object.rotation_euler = (0,0,1)

f:id:Takunoji:20180312220457p:plain

回転する向きが変わるようです。
>bpy.context.object.rotation_euler = (2,0,0)

そして、変形するために「オブジェクトモード」(デフォルト)から「エディットモード」に変更します。

>bpy.ops.mode_set(mode='EDIT', toggle=False)

f:id:Takunoji:20180312221552p:plain

ちょっと長いですが点の移動を行います。
>bpy.ops.transform.translate(value=(-0.383242, -0.874999, -0.00590833), constraint_axis=(False, False, False), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)

ちなみにこれも選択している点を操作するスクリプトになります。

そして、点の選択方法は1行でやっているスクリプトが見つかりませんでした。
https://blender.stackexchange.com/questions/23113/select-vertices-of-mesh-in-python

mport bpy,bmesh

ob = bpy.data.objects['Cube']
mesh=bmesh.from_edit_mesh(bpy.context.object.data)
for v in mesh.verts:
    v.select = True

# trigger viewport update
bpy.context.scene.objects.active = bpy.context.scene.objects.active

今日はここまでにします。

Eclipse セットアップ

  1. Java Install Eclipse〜開発ツールのインストール〜
  2. TensorFlow C++環境〜EclipseにCDTをインストール〜
  3. Setup OpenGL with Java〜JOGLを使う準備 for Eclipse〜
  4. Eclipse Meven 開発手順〜プロジェクトの作成〜
  5. Java OpenCV 環境セットアップ(on Mac)