Как добавить ограничения местоположения для объекта в Blender? - PullRequest
0 голосов
/ 25 июня 2019

Я хочу сделать так, чтобы моя программа перестала работать, и объект печати вышел за границы, если объект переместится, скажем, в отрицательную часть z плоскости в Blender.имя объекта Cube.031.Я буду кодировать то, что я хочу сделать, я просто не уверен, как сделать синтаксис для него.

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

1 Ответ

0 голосов
/ 26 июня 2019

Если вы знакомы с программированием, изучение Python не займет много времени.

Для информации, относящейся к блендеру, почти все доступно через модуль bpy, Ссылка на API находится в сети .

Вы можете обратиться к объекту по имени в bpy.data.objects[].Также доступны другие списки, такие как bpy.context.selected_objects[] и bpy.context.visible_objects[].

Объекты location - это массив из трех значений (x, y, z), вы можете получить доступ кz местоположение как location.z или location[2].

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 лучшее место, чтобы обратиться за помощью к конкретному блендеру.

...