您当前的位置: 首页 >  Python

开发游戏的老王

暂无认证

  • 6浏览

    0关注

    803博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Blender插件开发:Blender 2.8版Python API的命名约定

开发游戏的老王 发布时间:2019-10-30 11:48:16 ,浏览量:6

原文地址:Class naming conventions in Blender 2.8 Python API

在Blender 2.8 API中,对类以及其标识符的命名要求变得更为严格。类名必须遵守如下约定

UPPER_CASE_{SEPARATOR}_mixed_case

译者注 正则表达式为:[A-Z][A-Z0-9_]*{ABBREV}[A-Za-z0-9_]+ Abbrev: HT – Header MT – Menu OT – Operator PT – Panel UL – UI list

其中{SEPARATOR}部分是两个标志其所属类型(即它们是从哪个类派生而来)的字母:

HT – Header
MT – Menu
OT – Operator
PT – Panel
UL – UI list

类标识符“bl_idname”必须和其类名相符。

比如,以下为有效的类名和标识符:

class MYADDON_OT_my_operator(bpy.types.Operator):
    bl_idname = 'myaddon.my_operator'
    ...

class MYADDON_MT_my_menu(bpy.types.Menu):
    bl_idname = 'MYADDON_MT_my_menu'
    ...

class MYADDON_HT_my_header(bpy.types.Header):
    bl_idname = 'MYADDON_HT_my_header'
    ...

class MYADDON_PT_my_panel(bpy.types.Panel):
    bl_idname = 'MYADDON_PT_my_panel'
    ...

如果类名和标识符不满足此约定,Blender将会报错:

‘Oscurart Files Tools’ doesn’t contain ‘_PT_’ with prefix & suffix

关注
打赏
1656935939
查看更多评论
立即登录/注册

微信扫码登录

0.1238s