Korchy (korchy) wrote,
Korchy
korchy

Category:

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

Некоторые операторы в 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/
Tags: 2.92, 2.93, api, blender, python
Subscribe

Comments for this post were disabled by the author