我在bpy.data.objects中有几个对象,在bpy.data.cameras中有几个摄像头; 相机链接到一些物体。 我怎么知道每个摄像机链接到哪个对象? 我会非常感谢一段代码证明了这一点。 非常感谢, 有约色
答案 0 :(得分:0)
Blender使用object oriented方法获取数据。
对象类包含通用属性,例如对象的位置。然后,它使用它的data属性来使用特定于对象类型的类来存储对象特定数据,这些数据类型中的每一个都是ID的子类
bpy.data.objects
是Object class个实例的列表。
>>> type(bpy.data.objects['Camera'])
<class 'bpy_types.Object'>
bpy.data.cameras
是链接到相机对象数据属性的Camera class个实例的列表。
>>> type(bpy.data.cameras['Camera'])
<class 'bpy.types.Camera'>
类似地,bpy.data.meshes
是包含网格对象数据的Mesh class个实例的列表。
>>> type(bpy.data.objects['Cube'])
<class 'bpy_types.Object'>
>>> type(bpy.data.meshes['Cube'])
<class 'bpy_types.Mesh'>
首次创建时,对象和匹配数据实例使用匹配的名称。虽然通常会重命名对象名称,但数据名称通常不会单独使用。
import bpy
obj = bpy.data.objects['Camera']
if obj.type == 'CAMERA':
print('The',obj.name,'object is a camera.')
if bpy.data.cameras[obj.name] == obj.data:
print('It uses a camera data object with a matching name')