Скрипты в Blender. Субмодули Scene и Object. Продолжение
Сегодняший пост - небольшой. Только чтобы пройти по функциям модуля Scene.
Итак, запускаем Blender и открываем интерактивную консоль Python.
Продолжаем разговор!
Давайте для начала быстренько пройдем по основным функциям модуля Scene, а именно - создание новой сцены, "получение" сцены по имени, получение текущей сцены и удаление сцены.
Для создания сцены используется функция New("название_сцены"). Давайте создадим новую сцену с названием MyScene. Введите в консоли команду:
Blender.Scene.New('MyScene')
В ответ на команду в консоли будет выведено:
[Scene "MyScene"]
Итак, сцена создана, но учтите, что после создания, сцена не становиться активной текущей сценой. В том, что сцена создана вы можете удостовериться, посмотрев выпадающий список сцен.
Как работать с созданной сценой? Самое простое - создать переменную и связать ее с нужной нам сценой. Давайте создадим переменную my_sce и свяжем ее с нашей новой сценой MyScene. Введите в консоли:
my_sce=Blender.Scene.Get("MyScene")
Теперь переменная my_sce связана с нашей сценой MyScene. Чтобы проверить это, просто введите в консоли имя переменной my_sce:
my_sce
В ответ в консоли появится:
[Scene "MyScene"]
Еще одна возможность функции Get() - это получение списка всех сцен в Blender. Для этого просто не надо указывать название сцены в функции. Давайте создадим переменную all_sce и свяжем ее со списком всех сцен файла. Пишем в консоли:
all_sce=Blender.Scene.Get()
Теперь напишем в консоли:
all_sce
И получим в ответ:
[[Scene "MyScene"],[Scene "Scene"]]
то есть в текущем файле у нас есть две сцены - созданная по-умолчанию Scene и наша сцена MyScene.
Теперь разберемся с удалением сцен из Blender файла. Для удаления сцены MyScene используем связанную с ней переменную my_sce, введем в консоли:
Blender.Scene.Unlink(my_sce)
Теперь наша сцена удалена. А как удалить сцену по ее имени? Это просто! В команде удаления вместо переменной используем команду получения сцены по имени:
Blender.Scene.Unlink(Blender.Scene.Get("MyScene"))
Не пытайтесь дважды удалить одну и ту же сцену, так как нельзя удалить то, чего уже нет. Не пробуйте удалить все сцены из файла - будет выдана ошибка о том, что нельзя удалить текущую сцену.
Последняя из основных функций модуля Scene - получение текущей сцены файла. Для этого используется функция GetCurrent(). Вы можете связать текущую сцену с какой-либо переменной, но нам достаточно просто ввести:
Blender.Scene.GetCurrent()
Чтобы увидеть результат:
[Scene "Scene"]
Т.е. текущая сцена - сцена с именем Scene, созданная по-умолчанию.
На сегодня все. Продолжение скоро...
Итак, запускаем Blender и открываем интерактивную консоль Python.
Продолжаем разговор!
Давайте для начала быстренько пройдем по основным функциям модуля Scene, а именно - создание новой сцены, "получение" сцены по имени, получение текущей сцены и удаление сцены.
Для создания сцены используется функция New("название_сцены"). Давайте создадим новую сцену с названием MyScene. Введите в консоли команду:
Blender.Scene.New('MyScene')
В ответ на команду в консоли будет выведено:
[Scene "MyScene"]
Итак, сцена создана, но учтите, что после создания, сцена не становиться активной текущей сценой. В том, что сцена создана вы можете удостовериться, посмотрев выпадающий список сцен.
Как работать с созданной сценой? Самое простое - создать переменную и связать ее с нужной нам сценой. Давайте создадим переменную my_sce и свяжем ее с нашей новой сценой MyScene. Введите в консоли:
my_sce=Blender.Scene.Get("MyScene")
Теперь переменная my_sce связана с нашей сценой MyScene. Чтобы проверить это, просто введите в консоли имя переменной my_sce:
my_sce
В ответ в консоли появится:
[Scene "MyScene"]
Еще одна возможность функции Get() - это получение списка всех сцен в Blender. Для этого просто не надо указывать название сцены в функции. Давайте создадим переменную all_sce и свяжем ее со списком всех сцен файла. Пишем в консоли:
all_sce=Blender.Scene.Get()
Теперь напишем в консоли:
all_sce
И получим в ответ:
[[Scene "MyScene"],[Scene "Scene"]]
то есть в текущем файле у нас есть две сцены - созданная по-умолчанию Scene и наша сцена MyScene.
Теперь разберемся с удалением сцен из Blender файла. Для удаления сцены MyScene используем связанную с ней переменную my_sce, введем в консоли:
Blender.Scene.Unlink(my_sce)
Теперь наша сцена удалена. А как удалить сцену по ее имени? Это просто! В команде удаления вместо переменной используем команду получения сцены по имени:
Blender.Scene.Unlink(Blender.Scene.Get("MyScene"))
Не пытайтесь дважды удалить одну и ту же сцену, так как нельзя удалить то, чего уже нет. Не пробуйте удалить все сцены из файла - будет выдана ошибка о том, что нельзя удалить текущую сцену.
Последняя из основных функций модуля Scene - получение текущей сцены файла. Для этого используется функция GetCurrent(). Вы можете связать текущую сцену с какой-либо переменной, но нам достаточно просто ввести:
Blender.Scene.GetCurrent()
Чтобы увидеть результат:
[Scene "Scene"]
Т.е. текущая сцена - сцена с именем Scene, созданная по-умолчанию.
На сегодня все. Продолжение скоро...
Скрипты в Blender. Субмодули Scene и Object. Продолжение
Автор: Maks Zinchenko
дата:
15:09
Оценка:
Комментариев нет: