我想这样做,以使我的程序停止运行,并且如果某个对象进入搅拌机中平面的负z部分,则打印对象超出范围。 对象名称为Cube.031。我将对需要执行的操作进行sudo代码编码,只是不确定如何确定其语法。
if(Cube.031.zLocation < 0)
print(object is out of bounds)
end
答案 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.z
或location[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是寻求搅拌器特定帮助的更好地方。