如何在搅拌机中为对象添加位置限制?

时间:2019-06-25 15:30:45

标签: python blender

我想这样做,以使我的程序停止运行,并且如果某个对象进入搅拌机中平面的负z部分,则打印对象超出范围。 对象名称为Cube.031。我将对需要执行的操作进行sudo代码编码,只是不确定如何确定其语法。

 if(Cube.031.zLocation < 0)
        print(object is out of bounds)
        end

1 个答案:

答案 0 :(得分:0)

如果您知道一些编程知识,learning python就不会花很长时间。

对于搅拌机特定的信息,几乎所有内容都可以通过bpy模块API reference is online访问。

您可以在bpy.data.objects[]中按名称引用对象。还有其他可用列表,例如bpy.context.selected_objects[]bpy.context.visible_objects[]

对象location是由三个值(x,y,z)组成的数组,您可以访问location.zlocation[2]的z位置。

import bpy

obj = bpy.data.objects['Cube.031']

if obj.location.z < 0:
    print('object is out of bounds')

如果要浏览所有选定的对象

for obj in bpy.context.selected_objects:
    if obj.location.z < 0:
        print('object {} is out of bounds'.format(obj.name))

请注意,v2.80即将发布,并且对API进行了一些更改,如果您只是从Blender开始,则可能要从2.80开始。您还将发现blender.stackexchange是寻求搅拌器特定帮助的更好地方。