Category: it

Category was added automatically. Read all entries about "it".

Korchiy

Оператор для переключения чекбоксов

Оператор wm.context_toggle предназначен для переключения состояния чекбоксов в интерфейсе Blender. С его помощью можно настроить быстрое переключение любых чекбоксов в любых окнах и панелях.

Для примера настроим включение/выключение отображения сетки (wireframe) во вьюпорте.




Читать дальше: https://b3d.interplanety.org/operator-dlya-pereklyucheniya-chekboksov/
Korchiy

Как найти, в какой коллекции размещен нужный объект

Если нужный объект расположен в скрытой коллекции, в больших сценах бывает сложно его найти.

Для того, чтобы узнать, в какой коллекции размещается нужный объект по его типу, нужно выполнить следующий код.
Например для камеры:

[(obj.name, obj.users_collection) for obj in bpy.data.objects if o



Читать дальше: https://b3d.interplanety.org/kak-nayti-v-kakoy-kollekcii-razmeschen-nuzhnyy-obekt/
Korchiy

Переопределение контекста

Некоторые операторы в Blender можно вызывать только в той рабочей области, для которой они предназначены.

Если вызывать, например, оператор, предназначенный только для работы в области 3D вьюпорта в Python-консоли, оператор или просто не выполнится:

bpy.ops.wm.toolbar()

# 'CANCELLED'
или вернет сообщение о неверном контексте:

bpy.ops.view3d.background_image_add()

# RuntimeError: Operator bpy.ops.view3d.background_image_add.poll() failed, context is incorrect
Однако выполнить операторы в "не родной" рабочей области все же можно. Для этого в любой оператор можно передать первым неявным параметром указание на контекст рабочей области, в которой должен быть выполнен этот оператор. Этот параметр обычно называют "переопределенный контекст".




Читать дальше: https://b3d.interplanety.org/pereopredelenie-konteksta/
Korchiy

Как сменить текущий инструмент при помощи Blender Python API

Для того, чтобы переключить активный инструмент из Т-панели в окне 3D вьюпорта нужно вызвать соответствующий оператор в параметре "name" которого нужно передать идентификатор idname требуемого инструмента.
Например для того, чтобы включить выделение окружностью Select Circle нужно вызвать оператор:

import bpy

bpy.ops.wm.tool_set_by_id(name='builtin.select_circle')




Читать дальше: https://b3d.interplanety.org/kak-smenit-tekuschiy-instrument-pri-pomoschi-blender-python-api/
Korchiy

Как подключить Python-модуль по абсолютному пути

Модули, используемые в скриптах и аддонах Blender, располагаются или в той же директории, что и сам скрипт или аддон, или в директории установки Blender по пути "версия_blender\python\lib\". Однако возможно подключить для работы и модуль, расположенный в другом месте на жестком диске.
Для этого нужно подключить модуль по его абсолютному пути.




Читать дальше: https://b3d.interplanety.org/kak-podklyuchit-python-modul-po-absolyutnomu-puti/
Korchiy

Как привязать меш к кости с сохранением текущего положения

Если требуется привязать меш к кости арматуры так, чтобы меш сохранил свое текущее положение, при помощи Blender Python API, нужно выполнить следующие действия:




Читать дальше: https://b3d.interplanety.org/kak-privyazat-mesh-k-kosti-s-sohraneniem-tekuschego-polozheniya/
Korchiy

Как переместить кость арматуры на место кости другой арматуры

Для того, чтобы точно выровнять кость одной арматуры по кости другой арматуры нужно соотнести глобальные матрицы арматур и локальные матрицы костей в режиме позы.
Для этого нужно выполнить следующий код:




Читать дальше: https://b3d.interplanety.org/kak-peremestit-kost-armatury-na-mesto-kosti-drugoy-armatury/
Korchiy

Расчет Bounding Sphere для объектов

Чаще всего для быстрых упрощенных расчетов с геометрией объектов используются их Bounding Box - минимальный параллелепипед, в который вписан данный объект. Однако. иногда большую точность и простоту в расчетах может дать Bounding Sphere - минимальная сфера, в которую можно вписать объект. И если размеры и расположение Bounding Box доступно в Blender для любого объекта сразу, Bounding Sphere необходимо рассчитывать самостоятельно.
Напишем функцию, которая на основании переданного объекта вернет нам координаты центра и радиус описывающей его Bounding Sphere.




Читать дальше: https://b3d.interplanety.org/raschet-bounding-sphere-dlya-obektov/