Console Python¶
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¶
Atalhos vinculados
- Seta à esq. / Seta à dir. – Movimenta o cursor.
- Ctrl-Seta à esq. / Ctrl-Seta à dir. – Movimenta o cursor, saltando entre palavas.
- Backspace / Delete – Apaga os caracteres.
- Ctrl-Backspace / Ctrl-Delete – Apaga as palavras.
- Return – Execute command.
- Shift-Enter – Adiciona ao histórico de comandos sem executar.
Utilização¶
Apelidos¶
Algumas variáveis e módulos estão disponíveis para conveniência:
C
: Fornece acesso rápido abpy.context
.D
: Fornece acesso rápido abpy.data
.bpy
: O módulo de nível mais alto da API Python do Blender.
Primeiro olhar sobre o ambiente de console¶
Para verificar o que foi carregado dentro do ambiente do interpretador, digite dir()
diretamente no prontuário e execute.
Completar automaticamente¶
Now, type bpy.
and then press Tab and you will see the Console
auto-complete feature in action.
Você irá notar que uma lista de sub-módulos presentes dentro do bpy
irá aparecer. Estes módulos encapsulam tudo o que podemos fazer com a API Python do Blender e são ferramentas bastante poderosas.
Vamos listar todos os conteúdos do módulo bpy.app
.
Notice the green output above the prompt where you enabled auto-completion.
What you see is the result of auto completion listing.
In the above listing all are module attributed names,
but if you see any name end with (
, then that is a function.
Nós faremos uso disto um bocado para ajudar você a aprender a nossa API mais rapidamente. Agora que você colocou as mãos e já tem uma noção sobre o assunto, vamos proceder com a investigação de alguns módulos presentes dentro do bpy
.
Antes de brincar um pouco com os módulos¶
If you look at the 3D View in the default Blender scene, you will notice three objects: Cube, Light and Camera.
- Todos os objetos existem em um contexto e podem haver diversos modos sob os quais eles poderão ser operados.
- Em qualquer instância, somente um objeto estará ativo e pode haver mais de um objeto selecionado.
- Todos os objetos são referenciados como dados dentro do arquivo Blender.
- Existem operadores e funções que criam e modificam estes objetos.
Para todos os cenários listados acima (nem todos foram listados, há mais e pense em quantos…) o módulo bpy
provê funcionalidade para acessar e modificar dados.
Exemplos¶
bpy.context¶
Nota
Para que os comandos listados abaixo mostrem a saída apropriada, certifique-se de ter objetos selecionados dentro da janela de visualização 3D.
bpy.context.mode
- Irá imprimir o modo atual da janela de visualização 3D (Objeto, Edição, Escultura, etc.).
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)
Altera somente os componentes X e Y:
bpy.context.object.location.xy = (1, 2)
The data type of object’s location:
type(bpy.context.object.location)
Agora, há bastante dados que fornecem a você acesso a:
dir(bpy.context.object.location)
bpy.context.selected_objects
- Irá fornecer acesso a uma lista de todos os objetos selecionados.
Type this and then press Tab:
bpy.context.selected_objects
Para imprimir o nome do primeiro objeto dentro da lista:
bpy.context.selected_objects[0]
A parte um pouco mais complexa… Mas isso imprime uma lista de objetos que não incluem o objeto ativo:
[obj for obj in bpy.context.selected_objects if obj != bpy.context.object]
bpy.data¶
bpy.data
possui funções e atributos que irão fornecer acesso a todos os dados dentro do arquivo Blender.
Você pode acessar os seguintes dados dentro do arquivo Blender atual: objetos, malhas, materiais, texturas, cenas, telas, sons, scripts, etc.
São bastante dados.
bpy.ops¶
O sistema de ferramentas é construído em torno do conceito de operadores. Os operadores são tipicamente executados a partir dos botões ou menus que podem ser chamados diretamente também a partir da linguagem de programação Python.
See the bpy.ops API documentation for a list of all operators.