Выбор инструмента через Blender Python API в Blender 3.6

Для смены активного инструмента через Blender Python API необходимо использовать оператор wm.tool_set_by_id, передавая в его параметре идентификатор требуемого инструмента. В ранних версиях Blender, для того чтобы вызвать этот оператор из окна с другим контекстом, например, из текстового редактора Text Edit, необходимо было переопределять контекст.

Теперь этот оператор можно вызвать как при помощи временного переопределения контекста temp_override, так и передавая тип рабочей области, для которой вызывается оператор, в его параметре.

Вызов оператора выбора инструмента при помощи временного переопределения контекста

Как обычно, мы сначала получаем указатель на рабочую область, в контексте которой нам нужно вызвать оператор.

Далее при помощи temp_override вызываем оператор для выбранной рабочей области:

Вызов оператора выбора инструмента с указанием рабочей области в параметре оператора

Гораздо проще этот же оператор вызывается для нужной рабочей области, если ее тип передавать в параметре space_type самого оператора.

Результат выполнения обоих фрагментов кода одинаковый.

0 0 голоса
Article Rating
Подписаться
Уведомить о
guest

0 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии