Читаем Введение в написание скриптов на Питоне для Блендера 2.5x. Примеры кода полностью

# Кнопка ОК в диалоге ошибки

#

class OkOperator(bpy.types.Operator):

    bl_idname = "error.ok"

    bl_label = "OK"

    def execute(self, context):

        return {'FINISHED'}  

#

# Открывает диалог выбора файла и начинает сканирование выбранного файла.

#

class ScanFileOperator(bpy.types.Operator):

    bl_idname = "error.scan_file"

    bl_label = "Scan file for return"

    filepath = bpy.props.StringProperty(subtype="FILE_PATH")  

    def execute(self, context):

        scanFile(self.filepath)

        return {'FINISHED'}  

    def invoke(self, context, event):

        context.window_manager.fileselect_add(self)

        return {'RUNNING_MODAL'}  

#

# Сканирование файлов. Если строка содержит слово "return",

# вызывается диалоговое окно ошибки и производится выход.

# Если достигнут конец файла, отображается другое сообщение.

#

def scanFile(filepath):

    fp = open(filepath, "rU")

    n = 1

    for line in fp:

        words = line.split()

        if "return" in words:

            bpy.ops.error.message('INVOKE_DEFAULT',

                type = "Error",

                message = 'Found "return" on line %d' % n)

            return

        n += 1

    fp.close()

    bpy.ops.error.message('INVOKE_DEFAULT',

 type = "Message",

 message = "No errors found in %d lines" % n)

    return 

# Регистрация классов и автоматический запуск сканирования

bpy.utils.register_class(OkOperator)

bpy.utils.register_class(MessageOperator)

bpy.utils.register_class(ScanFileOperator)

bpy.ops.error.scan_file('INVOKE_DEFAULT')

<p>Аддоны Блендера</p>

До сих пор мы рассматривали только автономные скрипты, которые выполняются из окна текстового редактора. Для конечных пользователей более удобно, если скрипт — это аддон (add-on, надстройка) Блендера, который может быть включен в окне Пользовательских настроек. Также можно автоматически загружать скрипт каждый раз при запуске Блендера

Для того, чтобы скрипт был аддоном, он должен быть написан по-особому. Там должна быть структура bl_info в начале файла, а также в конце должны быть определены функции register (регистрации) и unregister (отмены регистрации). Кроме того, скрипт должен быть размещен в месте, в котором Блендер ищет аддоны при запуске. Оно включает в себя каталоги addons и addons-contrib , которые расположены в подкаталоге 2.57/scripts каталога, в котором находится Блендер.

Прикрепление ключей формы

Этот скрипт может быть выполнен, как обычно, из окна текстового редактора. Тем не менее, он также может быть доступен как аддон Блендера. Информация аддона указывается в словаре bl_info в начале файла.

bl_info = {

    'name': 'Shapekey pinning',

    'author': 'Thomas Larsson',

    'version': (0, 1, 2),

    'blender': (2, 5, 7),

    'api': 35774,

    "location": "View3D > UI panel > Shapekey pinning",

    'description': 'Pin and key the shapekeys of a mesh',

    'warning': '',

    'wiki_url': 'http://blenderartists.org/forum/showthread.php?193908',

    'tracker_url': '',

    "support": 'COMMUNITY',

    "category": "3D View"}

Смысл большинства ключей в этом словаре очевиден.

name: Название аддона.

author: Имя автора.

version: Версия скрипта.

blender: Версия Блендера.

api: Номер ревизии, с которой скрипт работает.

location: Где искать кнопки.

description: Описание, отображаемое в виде всплывающей подсказки и в документации.

warning: Предупреждающее сообщение. Если не пусто, в окне пользовательских настроек будет отображаться небольшой предупреждающий знак.

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных