Консоль Python – Python Console¶
The Python Console is a quick way to execute commands,
with access to the entire Python API, command history and auto-complete.
The command prompt is typical for Python 3.x,
the interpreter is loaded and is ready to accept commands at the prompt >>>
.
The Python Console is a good way to explore the possibilities of Blender built-in Python. The Python Console can be used to test small bits of Python code which can then be pasted into larger scripts.
Interface¶
Main View¶
Клавіатурні Прив’язування – Key Bindings
- Left / Right – Переміщення текстового курсора.
- Ctrl-Left / Ctrl-Right – Переміщення текстового курсора по словах.
- Backspace / Delete – Стирання символів.
- Ctrl-Backspace / Ctrl-Delete – Стирання слів.
- Return – Виконання команди.
- Shift-Return – Додати в історію команд без виконання.
Використання – Usage¶
Псевдоніми – Aliases¶
Деякі змінні та модулі доступні для зручності:
C
: Швидкий доступ доbpy.context
.D
: Швидкий доступ доbpy.data
.bpy
: Модуль верхнього рівня Blender Python API.
Перший Погляд на Середовище Консолі – First Look at the Console Environment¶
Для перевірки, що завантажено у середовище інтерпретатора, уведіть dir()
у запит та виконайте його.
Авто Завершення – Auto Completion¶
Now, type bpy.
and then press Tab and you will see the Console
auto-complete feature in action.
Ви помітите, що з’явився список під-модулів всередині bpy
. Ці модулі містять все, що ми можемо зробити за допомогою Blender Python API, та є дуже потужними засобами.
Дозволяє вивести у списку всіх елементів модуля bpy.app
.
Зверніть увагу на зелений вивід над запитом, де ви викликали авто-завершення. Те, що ви бачите, – це результат списку авто-завершення. У списку вище – все це імена атрибутів модуля, але якщо ви бачите у кінці якогось імені (
, то це є функція.
Ми будемо використовувати це багато для чого, щоб допомогти собі вивчити цей API швидше. Тепер, як ви вивели це, воно допоможе перейти до дослідження деяких модулів у bpy
.
Перед Возінням з Модулями – Before Tinkering with the Modules¶
Якщо ви подивитеся на 3D Огляд у стандартній сцені Blender’а, то ви помітите три об’єкти: Куб – Cube, Освітлювач – Light та Камеру – Camera.
- Усі ці об’єкти існують у контексті та можуть бути різні режими, в яких ними оперується.
- У будь-якому випадку, тільки один об’єкт є активним та може бути виділено більше, ніж один об’єкт.
- Усі об’єкти – це дані у blend-файлі.
- Існують оператори/функції, що створюють та модифікують ці об’єкти.
Для всіх сценаріїв, перелічених вище (не все ще було перераховано, пам’ятайте…) модуль bpy
надає функціональність для доступу і модифікації даних.
Приклади – Examples¶
bpy.context¶
Примітка
Для команд нижче, щоб отримати правильний вивід, переконайтеся, що ви вибрали об’єкт(и) у 3D Огляді.
bpy.context.mode
- Буде виводити поточний режим 3D Огляду (Об’єкта – Object, Редагування – Edit, Ліплення –Sculpt тощо).
bpy.context.object
orbpy.context.active_object
- Will give you access to the active object in the 3D View.
Change the X location to a value of 1:
bpy.context.object.location.x = 1
Move the object from previous X location by 0.5 unit:
bpy.context.object.location.x += 0.5
Change the X, Y, Z location:
bpy.context.object.location = (1, 2, 3)
Зміна лише компонентів X, Y:
bpy.context.object.location.xy = (1, 2)
The data type of object’s location:
type(bpy.context.object.location)
Тепер, є багато даних, до яких ви маєте доступ:
dir(bpy.context.object.location)
bpy.context.selected_objects
- Буде давати доступ до списку усіх вибраних об’єктів.
Type this and then press Tab:
bpy.context.selected_objects
Для виводу імені першого об’єкта у списку:
bpy.context.selected_objects[0]
Складніше… Але це виводить список об’єктів, що не включають активний об’єкт:
[obj for obj in bpy.context.selected_objects if obj != bpy.context.object]
bpy.data¶
bpy.data
має функції та атрибути, що дають вам доступ до усіх даних у blend-файлі.
Ви можете мати доступ до таких даних у поточному blend-файлі: об’єкти, сіті, матеріали, текстури, сцени, екрани, звуки, скрипти тощо.
Це багато даних.