gpt4 book ai didi

python - 如何通过bpy.types获取具体的修饰符属性信息?

转载 作者:行者123 更新时间:2023-12-01 07:27:45 31 4
gpt4 key购买 nike

例如我得到:

bpy.types.Modifier.bl_rna.properties['type'].enum_items[12]

( bool 修饰符)

bool 修改器有一个名为“object”的属性,用于实际的 bool 网格。如何快速检查它是否确实获得了可用的“object”属性(通过 bpy.types)?

我想按修饰符的属性过滤修饰符,例如:

[modifier.identifier for modifier in bpy.types.Modifier.bl_rna.properties['type'].enum_items if modifier.object != NULL]

显然这行不通,添加它只是为了让您更好地了解我正在尝试做什么。

最佳答案

bpy.types包含类定义。 bpy.data包含用于定义 blender 场景中的对象的实例。 bpy.context可以轻松访问多个兴趣点,而不是直接使用 bpy.data,例如事件场景和对象以及选定和可见对象的列表。

作为类定义,bpy.types 只能告诉您每种类型可以包含哪些属性,这些属性可能是修改后的。例如,插件可以使用 bpy.props要向现有数据类型添加属性,这是在 bpy.types 中的类定义上完成的。

bpy.types.Modifier 的每个子类有其自己的属性,BooleanModifier有一个对象属性,这是将与修改器父网格的网格交互的第二个对象。

要访问项目特定实例的数据,您需要在 bpy.databpy.context 中查找相关数据。

例如,如果一个立方体有一个 bool 修改器将其网格与球体网格结合起来,您可以在 python console 中得到以下内容: .

>>> bpy.data.objects['Cube'].modifiers['Boolean'].object
bpy.data.objects['Sphere']
>>> bpy.data.objects['Cube'].modifiers['Boolean'].operation
'UNION'

关于python - 如何通过bpy.types获取具体的修饰符属性信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57364245/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com