視点の切り替え操作の例を3種類まとめておきます。

コードの中に入れておくと、デバッグ作業中に逐一切り替える手間が省けます。



動作確認環境 : Blender 4.2


3Dプレビュー切り替え


3D Viewのプレビュー設定の切り替えを行います。

モデリング時にはソリッドビューに切り替え、マテリアル作業前にマテリアルプレビューに切り替えのようにコード中にビューの切り替え処理を追加することが可能です。


Python :
def change_preview(key='SOLID'):
    # 'SOLID'       :ソリッドプレビュー
    # 'MATERIAL'    : マテリアルプレビュー
    # 'RENDERED'    :レンダープレビュー
    for area in bpy.context.screen.areas:
        if area.type == 'VIEW_3D':
            for space in area.spaces:
                if space.type == 'VIEW_3D':
                    space.shading.type = key
                    return

引数で、Viewの種類を指定します。
  • SOLID:ソリッドプレビュー
  • MATERIAL:マテリアルプレビュー
  • RENDER:レンダープレビュー
などが良く用いられます。


透過ビュー切り替え


オブジェクトの透過を切り替えます。

Python :
def set_xray_view(key=True):
    # 透過表示ON
    # 3Dビューエリア取得
    for area in bpy.context.screen.areas:
        if area.type == 'VIEW_3D':
            for space in area.spaces:
                if space.type == 'VIEW_3D':
                    # 透過表示(X-ray)設定ON
                    space.shading.show_xray = key
                    # X-ray強度設定(デフォルト1.0)
                    space.shading.xray_alpha = 0.5
                    break

引数のTrue or Falseで透過ビューのON/OFFを切り替えます。


視点位置切り替え


視点位置の切り替え処理をまとめます。

Python :
# 視点を変更
def set_view_custom_position(
    point=(0, 0, 0)
,   rotate=(0, 0, 0)
,   distance=3
):
    # モード切り替え
    bpy.ops.object.mode_set(mode='OBJECT')
    for area in bpy.context.screen.areas:
        if area.type == 'VIEW_3D':
            for space in area.spaces:
                if space.type == 'VIEW_3D':
                    region_3d = space.region_3d
                    region_3d.view_perspective = 'ORTHO'  # 'PERSP'/'CAMERA'
                    # 視点位置/向き設定
                    region_3d.view_location = mathutils.Vector(point)   # 位置
                    region_3d.view_distance = distance                             # 距離
                    region_3d.view_rotation = mathutils.Euler(rotate).to_quaternion()  # 回転
                    # View更新
                    bpy.context.view_layer.update()

3D Previewでの見え位置を調整します。
引数で
  • 角度
  • 位置
  • 距離
を指定します。


以上
このエントリーをはてなブックマークに追加
コメントを閉じる

コメント

コメントフォーム
記事の評価
  • リセット
  • リセット