Skip to content
Increase font size Decrease font size Default font size default color orange color green color
Путь: Главная Уроки по Blender Основы и интерфейс Модифицирование панелей в Blender 2.5 при помощи Python

Основы и интерфейс

Модифицирование панелей в Blender 2.5 при помощи Python

07.09.2010 13:37
Модифицирование панелей в Blender 2.5 при помощи Python

В этом уроке мы рассмотрим, как можно вручную модифицировать панели в Blender 2.5 посредством языка программирования Python. Знание Python приветствуется, но в принципе для простых модификаций (таких как рассматриваемые сегодня) такое знание необязательно.

1

Откройте Blender 2.5.

 

2

Откройте встроенный текстовый редактор. Для этого в контекстном меню, появляющемся при нажатии на значок в левом нижнем углу окна 3D-вида, выберите пункт «Text Editor».

3

Создайте новый текстовый блок данных (соответствующая кнопочка появится на панели после предыдущего шага).

4

Активируйте показ номеров строк, перенос слов и подсветку синтасиса (при помощи кнопок на той же панели):

Активация номеров строк, переноса слов и подсветки синтаксиса

5

Посредством меню выберите:
«Text -> Open»
В появившемся диалоговом окне открытия файлов в папке с установленным Blender 2.5 в папке скриптов выберите файл «space_view3d_toolbar.py». В зависимости от версии программы расположение этого файла может немного отличаться, в Blender 2.53 он лежит по адресу: «2.53/scripts/ui//space_view3d_toolbar.py».

6

Перейдите к 38-39 строкам:

Встроенный в Blender 2.5 текстовый редактор

7

Нажмите «Enter» несколько раз, чтобы освободить немного места для новых строк:

Освобождаем место для новых строк

8

Вернитесь к строкам 38-39 и вставьте туда приведенный ниже код:

Вставляем код во встроенный в Blender 2.5 текстовый редактор

Скопируйте этот код и вставье его в указанном месте (добавьте отступы перед строками):

col = layout.column(align=True)
col.label(text="Add Mesh:")
row = col.row()
row.operator("mesh.primitive_plane_add", icon='MESH_PLANE', text="")
row.operator("mesh.primitive_cube_add", icon='MESH_CUBE', text="")
row.operator("mesh.primitive_circle_add", icon='MESH_CIRCLE', text="")
row.operator("mesh.primitive_uv_sphere_add", icon='MESH_UVSPHERE', text="")
row.operator("mesh.primitive_ico_sphere_add", icon='MESH_ICOSPHERE', text="")
row = col.row()
row.operator("mesh.primitive_tube_add", icon='MESH_TUBE', text="")
row.operator("mesh.primitive_cone_add", icon='MESH_CONE', text="")
row.operator("mesh.primitive_grid_add", icon='MESH_GRID', text="")
row.operator("mesh.primitive_monkey_add", icon='MESH_MONKEY', text="")

Сохраните редактируемый текстовый файл («Alt+S») и посмотрите на результат (требуется перезагрузка).
В итоге вышеперечисленных действий вы получите на панели «Object Tools» новые кнопки, предназначенные для добавления в сцену примитивов:

Внешний вид новой панели с графическими значками

Если вы хотите, чтобы кнопки для добавления примитивов включали в себя не только графические значки, но и текст, то вставьте под 38-ю строку следующий код:

col = layout.column(align=True)
col.label(text="Add Mesh:")
col.operator("mesh.primitive_plane_add", icon='MESH_PLANE', text="Plane")
col.operator("mesh.primitive_cube_add", icon='MESH_CUBE', text="Cube")
col.operator("mesh.primitive_circle_add", icon='MESH_CIRCLE', text="Circle")
col.operator("mesh.primitive_uv_sphere_add", icon='MESH_UVSPHERE', text="UV Sphere")
col.operator("mesh.primitive_ico_sphere_add", icon='MESH_ICOSPHERE', text="Icosphere")
col.operator("mesh.primitive_tube_add", icon='MESH_TUBE', text="Tube")
col.operator("mesh.primitive_cone_add", icon='MESH_CONE', text="Cone")
col.operator("mesh.primitive_grid_add", icon='MESH_GRID', text="Grid")
col.operator("mesh.primitive_monkey_add", icon='MESH_MONKEY', text="Monkey")

В итоге должен получиться следующий результат:

Внешний вид новой панели с текстовыми надписями

9

Сохраните скрипт, если он вам понравился, в противном же случае верните все как было.
Основная цель этого урока — показать возможности простого изменения внешнего вида панелей при помощи скриптов.

Вы можете исследовать вышеприведенный код и использовать его в качестве образца для своих собственных модификаций.

Понравилась статья? Подпишитесь на
новые уроки и статьи по RSS или E-mail:


 
Комментарии 
 
0 # Евгений 05.10.2010 12:17
Здравствуйте оличная статья и функция очень нужная, попытался сделать ее но при прописывании у меня пропадали остальные пукты меню
Ответить | Ответить с цитатой | Цитировать
 
 
0 # zhart 05.10.2010 13:07
Проверьте пожалуйста еще раз правильность введенного кода. Если ошибок нет — возможно, это проблемы бета-версии и придется пока откатиться до дефолтного файла «space_view3d_toolbar.py».
Ответить | Ответить с цитатой | Цитировать
 
 
0 # Евгений 08.10.2010 14:12
Код копировал с сайта, возможно напутал что с пробелами, а не могли бы выложить весь этот скрипт одним файликом
Ответить | Ответить с цитатой | Цитировать
 
 
0 # zhart 08.10.2010 14:18
Как я уже писал неоднократно, многие статьи по Blender 2.5 я читаю в блоге Demohero и вдохновляюсь именно его статьями. В том числе и в основе этой статьи лежит заметка с его сайта. Так что можете посмотреть у него в оригинале.
Могу только сказать, что у меня указанная модификация отлично заработала.
Ответить | Ответить с цитатой | Цитировать
 
Добавить комментарий


Защитный код
Обновить