アストラルプリズム

PC、スマホ、ゲームなどの備忘録と日記

Blender2.8系 pythonで3dビューのプロパティ・シェルフを操作する

Blender2.8系でツールシェルフの操作がいくつか簡単になった様子。

2.7系用は以下のリンクへ

katsumi3.hatenablog.com

 

2.8系では3Dビューのプロパティシェルフ(Nキー)や上のところにある情報ウィンドウに出てくる命令文をそのまま使えばいい所が増えたっぽい。

f:id:katsumi3:20191214151512p:plain

 

磁石のマークをオンにするのも楽。

bpy.context.scene.tool_settings.use_snap = True

f:id:katsumi3:20191214145911p:plain

 

モノによってはコピペではだめなのがあって、そういうのは3Dビューのウィンドウを指定してから操作しなくてはならない。

例えばローカルコレクションってやつ、操作した後に情報を見ると

bpy.context.space_data.use_local_collections = False

てなっててspace_dataってのがついてると2.7系の時と同じく3dビューを探さないといけない。


katsumi3.hatenablog.com

f:id:katsumi3:20191214151815p:plain

なので以下のようになる

#3dビューを探して

v3d = [x for x in bpy.context.screen.areas if x.type == 'VIEW_3D']

#開いてる3Dビューの一個目のローカルコレクションをオンにする

v3d[0].spaces[0].use_local_collections = True

 

二個目の3Dビューを変更したいならv3d[1]にする

 

トランスフォーム座標系は情報のウィンドウのところでは

bpy.context.scene.type = 'GLOBAL'

となってるが実際は以下のようにする

bpy.context.scene.transform_orientation_slots[0].type = 'GLBAL'