【Blender×Python】オブジェクトのスケール情報を変更する方法について徹底解説

Blender

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

# scaleプロパティによるオブジェクトのスケール情報の変更
"Object".scale = "Vector"

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

・Blender上で、どの様にPythonを使うの?
・Blender上のPythonで、どの様にオブジェクトのスケール情報を変更するの?

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

scaleプロパティによるオブジェクトのスケール情報の変更

“Object”.scaleプロパティの基本構文

"Object".scale = Object.scale: Vector

“Object”.scaleプロパティの使い方

import bpy
import mathutils

NewScale = mathutils.Vector((2.0, 4.0, 8.0))

CubeObject = bpy.data.objects["Cube"]
CubeObject.scale = NewScale
CubeScale = CubeObject.scale

print(f"Cube Scale:\n{CubeScale} {type(CubeScale)}")

CubeObject.scale.x = 1.0
CubeObject.scale.y = 2.0
CubeObject.scale.z = 3.0
CubeScale = CubeObject.scale

print(f"Cube Scale:\n{CubeScale} {type(CubeScale)}")

CubeObject.scale[0] = 11.0
CubeObject.scale[1] = 22.0
CubeObject.scale[2] = 33.0
CubeScale = CubeObject.scale

print(f"Cube Scale:\n{CubeScale} {type(CubeScale)}")
Cube Scale:
<Vector (2.0000, 4.0000, 8.0000)> <class 'Vector'>
Cube Scale:
<Vector (1.0000, 2.0000, 3.0000)> <class 'Vector'>
Cube Scale:
<Vector (11.0000, 22.0000, 33.0000)> <class 'Vector'>

まとめ

「bpy」(Blender Python API)は、Pythonを使ったBlenderの開発に非常に役立ちます。この記事では、オブジェクトのスケール情報を変更する方法を紹介しました。ぜひ活用してみてください。

関連検索ワード

How to set scale of object data?

関連キーワード

blender, python, set, scale, object, 変更, スケール, オブジェクト