texture_menu.py 文件源码

python
阅读 19 收藏 0 点赞 0 评论 0

项目:bpy_lambda 作者: bcongdon 项目源码 文件源码
def draw(self, context):
        menu = utils_core.Menu(self)
        datapath = "tool_settings.image_paint.brush.mask_texture"
        has_brush = utils_core.get_brush_link(context, types="brush")
        current_texture = eval("bpy.context.{}".format(datapath)) if \
                          has_brush else None

        menu.add_item().label(text="Mask Texture")
        menu.add_item().separator()

        if has_brush:
            # get the current texture's name
            if current_texture:
                current_texture = current_texture.name

            # add an item to set the texture to None
            utils_core.menuprop(
                    menu.add_item(), "None", "None",
                    datapath, icon='RADIOBUT_OFF', disable=True,
                    disable_icon='RADIOBUT_ON',
                    custom_disable_exp=[None, current_texture],
                    path=True
                    )

            # add the menu items
            for item in bpy.data.textures:
                utils_core.menuprop(
                        menu.add_item(), item.name, 'bpy.data.textures["%s"]' % item.name,
                        datapath, icon='RADIOBUT_OFF', disable=True,
                        disable_icon='RADIOBUT_ON',
                        custom_disable_exp=[item.name, current_texture],
                        path=True
                        )
        else:
            menu.add_item().label("No brushes available", icon="INFO")
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号