【Blender×Python】コンテキストなエリアデータを取得する方法について徹底解説

Blender

「bpy」とは、PythonからBlenderの機能を呼び出すことができるBlender Python APIのことです。Blenderはオープンソースの3Dアニメーションソフトウェアであり、「bpy」を使うことでBlenderの様々な機能をPythonスクリプトから呼び出して利用することができます。本記事では、「bpy」を用いたコンテキストなエリアデータを取得する方法を紹介します。

# areaプロパティによるコンテキストなエリアデータの取得
bpy.context.area

下記の様な内容で悩んでいる/困っている場合に使える方法を参考までにご共有させて頂きます。

・Blender上で、どの様にPythonを使うの?
・Blender上のPythonで、どの様にコンテキストなエリアデータを取得するの?

また、「bpy」を使用する上で基礎的な情報は下記の記事で紹介しております。
他の「bpy」のクラスや関数について気になる方はこちらの記事をご覧ください。

areaプロパティによるコンテキストなエリアデータの取得

bpy.context.areaプロパティの基本構文

bpy.context.area
→ Area: bpy.types.Area

bpy.context.areaプロパティの使い方

import bpy

ContextArea = bpy.context.area
print(f"Context Area:\n{ContextArea} {type(ContextArea)}")

print(ContextArea.type)
print(ContextArea.regions)
print(ContextArea.spaces)
print(ContextArea.height)
print(ContextArea.width)
print(ContextArea.x)
print(ContextArea.y)

for key, value in ContextArea.regions.items():
    print(f"[{key}] {value}")

for key, value in ContextArea.spaces.items():
    print(f"[{key}] {value}")
Context Area:
<bpy_struct, Area at 0x00000238E2BC9908> <class 'bpy.types.Area'>
TEXT_EDITOR
<bpy_collection[4], Area.regions>
<bpy_collection[2], AreaSpaces>
1011
991
545
20
[0] <bpy_struct, Region at 0x00000238E2B95448>
[1] <bpy_struct, Region at 0x00000238E2B95288>
[2] <bpy_struct, Region at 0x00000238E2B950C8>
[3] <bpy_struct, Region at 0x00000238E2B94F08>
[0] <bpy_struct, SpaceTextEditor at 0x00000238E28C1008>
[1] <bpy_struct, SpaceFileBrowser at 0x00000238E2BC9848>

まとめ

「bpy」(Blender Python API)は、Pythonを使ったBlenderの開発に非常に役立ちます。この記事では、コンテキストなエリアデータを取得する方法を紹介しました。ぜひ活用してみてください。

関連検索ワード

How to get a context area data?

関連キーワード

blender, python, get, context, area, 取得, コンテキスト, エリア