操作符
操作符是blender中执行代码的主要样式
其通过以blender自己的方式来包裹代码,并注册到当前打开的blender中(所以插件越多打开blender越慢,特别是某些需要联网通信的插件)
注册
必要参数
bl_idname 唯一标识符,也是在blender注册调用的操作符名字
bl_label 显示的名字,可在ui layout 进行覆盖
可选参数
bl_description 操作符提示
bl_option 选项,包括可撤销,重做面板,锁定视窗等
操作符函数
函数都会返回一个集合数据,如{‘FINISHED’}来表示当前操作符的执行状态
必要函数
invoke / execute
两函数必须存在一个
- invoke可接受键盘或鼠标事件,一般用作捕捉用户输入的函数
- execute则为普通执行函数,两函数可互相调用,并以返回一个表示状态的set结束可选函数
poll添加操作符的限定使用条件
modal用于持续性获取用户输入或输出的函数,包括handle(计时器,屏幕绘制,部分状态更新)
event(持续的鼠标,按键捕捉函数)
参数传入
注册方法
操作符内参数注册操作符内常用参数 bpy.props
全局参数
注册到context中以方便访问,如context scene文件全局参数 在脚本文件内引用全局参数传入方法用户输入/确认弹窗invoke dialogui面板传入bpy.ops传入注册/全局参数传入
