搅拌器,将对象分成几层

时间:2018-08-04 06:35:22

标签: python block blender nano

我有一个对象,我使用了混合器的“像素化”(高级)对象功能,这创建了一个看起来像一堆(1000个)重复的单个多维数据集的对象。

先导出然后再导入,结果生成了一个由大约18,000个多维数据集组成的对象。

在许多立方体中添加了不同的材料。

目的是将对象分成高度相同的所有多维数据集的“层”,同时保留其材料

我已经尝试了诸如布尔运算之类的许多方法,但是这太慢了,而且并不总是保留材料

此外,大约有70多个图层,因此手动创建图层可能有些乏味。...

理想情况下,我想编写一种脚本,该脚本可以一次过滤出每个图层并导出它们(使用材质),以便可以将它们渲染为2d图像...

最初,用于Blender的python文档似乎有点不透明,可能是因为API的尺寸很大(从哪里开始!)

任何人都可以帮忙完成我编写此脚本所需的至少某些步骤,因为我在获得任何形式的吸引力方面均遇到困难。

1 个答案:

答案 0 :(得分:0)

最后,由于使用了@keltar,我使用了部分自动化和部分手动的方法来完成所需的操作,因为我找到了信息窗口以及需要从菜单弹出窗口中的python命令中拾取的命令

>>> def dolayer(name):
...     bpy.ops.mesh.select_linked(delimit={'SEAM'})
...     bpy.ops.mesh.separate(type='SELECTED')
...     bpy.data.objects[name].hide = True
... 
>>> dolayer('Cube.018')
>>> dolayer('Cube.019')

我选择了带有框选择的下一层,请确保将限制选择关闭为可见!然后我只需向dolayer函数提供拆分对象的新名称(这可以让您隐藏它),向上光标键就是您的朋友!

最少量的自动化使将72层分离为单独的对象变得可行,这使我可以隐藏不同的层,并仅显示构建每个步骤所需的层。...

我完全错过了信息窗口,这应该使脚本更加易于访问!