Consola Python#

La consola de Python es una forma rápida de ejecutar comandos, con acceso a toda la API de Python, historial de comandos y autocompletado. El símbolo del sistema es el típico de Python 3.x, el intérprete se cargará y estará listo para aceptar comandos en el símbolo >>>.

La Consola de Python es una buena forma de explorar las posibilidades de Python integrado en Blender. La consola de Python se puede usar para probar pequeños fragmentos de código de Python que luego se pueden pegar en secuencias de comandos más grandes.

../_images/editors_python-console_default.png

Consola de Python.#

Interfaz#

Menús del encabezado#

Menú Vista#

Acercarse/Alejarse

Aumenta/Disminuye el tamaño de fuente del texto de la consola.

Mover a la Palabra Anterior Ctrl-Izquierda

Mueve el cursor al principio de la palabra anterior. Si el cursor está en medio de una palabra, el cursor se mueve al principio de la palabra actual.

Mover a la Siguiente Palabra Ctrl-Derecha

Mueve el cursor al final de la siguiente palabra. Si el cursor está en medio de una palabra, el cursor se mueve al final de la palabra actual.

Mover al Inicio de Línea Inicio

Mueve el cursor al inicio de la línea actual.

Shift-Home: Selects all text between the cursor and the start of the current line.

Mover al Final de la Línea Fin

Mueve el cursor al final de la línea actual.

Shift-End: Selects all text between the cursor and the end of the current line.

Menú Consola#

Eliminar Todo

Actualiza la consola dando a la vista un nuevo comienzo. Tenga en cuenta que el historial de comandos no se borra.

Eliminar Línea Mayús-Intro.

Eliminará todo en la línea del símbolo del sistema.

Borrar Palabra Anterior Ctrl-Retroceso

Elimina todo entre el cursor y el comienzo de la palabra anterior (separado por puntos). Si el cursor está en medio de una palabra, borra todo hasta el principio de la palabra actual.

Borrar Palabra Siguiente Ctrl-Suprimir

Elimina todo entre el cursor y el final de la siguiente palabra. Si el cursor está en medio de una palabra, borra todo hasta el final de la palabra actual.

Copiar como Script Mayús-Ctrl-C

Copia el búfer del historial completo en el portapapeles, esto se puede pegar en un archivo de texto para usar como secuencia de comandos de Python.

Cortar Ctrl-X

Deletes the selected text and copies it to the clipboard.

Copiar Ctrl-C

Copia la selección.

Pegar Ctrl-V

Pega en la línea de comando.

Aumentar Sangría Tab

Inserta un carácter de tabulación en el cursor.

Quitar Sangría Mayús-Tab

Elimina la sangría de la selección.

Retroceder en Historial Arriba

Cambia el comando actual al comando anterior tal como aparecen en el historial de comandos.

Avanzar en Historial Abajo

Cambia el comando actual al siguiente comando tal como aparecen en el historial de comandos.

Autocompletar Tab

Ver Finalización automática para más información.

Vista Principal#

Atajos de Teclado

  • LMB – Moves the cursor along the input line.

  • Izquierda / Derecha – Moviemiento del cursor.

  • Ctrl-Izquierda / Ctrl-Derecha – Movimiento del cursor, por palabra.

  • Shift-Left / Shift-Right – Selects characters to the left/right.

  • Shift-Ctrl-Left / Shift-Ctrl-Right – Selects words to the left/right.

  • Ctrl-A Select all text and text history.

  • Retroceso / Suprimir – Borra caracteres.

  • Ctrl-Retroceso / Ctrl-Suprimir – Borra palabras.

  • Intro – Ejecuta el comando.

  • Mayús-Intro – Agrega al historial de comandos sin ejecutar.

Utilización#

Alias#

Algunas variables y módulos están disponibles para su comodidad:

  • C: Acceso rápido a bpy.context.

  • D: Acceso rápido a bpy.data.

  • bpy: Módulo API Python de Blender de nivel superior.

Primer vistazo al entorno de la consola#

Para comprobar lo que se carga en el entorno del intérprete, escribir dir() en el símbolo del sistema y ejecutarlo.

../_images/editors_python-console_dir.png

Finalización Automática#

Ahora, escriba bpy. y luego presione Tab y verá la función de autocompletar de la consola en acción.

../_images/editors_python-console_completion.png

Notará que aparece una lista de submódulos dentro de bpy. Estos módulos encapsulan todo lo que podemos hacer con Blender Python API y son herramientas muy poderosas.

Hagamos una lista de todos los contenidos del módulo bpy.app.

Nótese el resultado en verde sobre el símbolo del sistema donde se habilitó la finalización automática. Lo que se ve es el resultado del listado de autocompletar. En la lista anterior, se muestran todos son nombres atribuidos a módulos, pero cuando se viera que algún nombre termina con (, entonces se tratará de una función.

Se usará mucho esto para ayudar a aprender la API más rápido. Ahora que ya se domina esto, podremos proceder a investigar algunos de los módulos en bpy.

Antes de Trastear con los Módulos#

Si observa la Vista 3D en la escena predeterminada de Blender, verá tres objetos: Cubo, Luz y Cámara.

  • Todos los objetos existen en un contexto y puede haber varios modos bajo los cuales se operan.

  • En cualquier instancia, sólo un objeto está activo y puede haber más de un objeto seleccionado.

  • Todos los objetos son datos del archivo .blend.

  • Hay operadores/funciones que crean y modifican estos objetos.

Para todos los escenarios listados arriba (no todos fueron listados, tenerlo en cuenta…) el módulo bpy proporcionará funcionalidad para acceder y modificar datos.

Ejemplos#

bpy.context#

Nota

Para que los siguientes comandos muestren el resultado adecuado, asegúrese de haber seleccionado los objetos en la Vista 3D.

../_images/editors_python-console_bpy-context.png
bpy.context.mode

Imprimirá el modo actual de la Vista 3D (Objeto, Editar, Esculpir, etc.).

bpy.context.object o bpy.context.active_object

Le dará acceso al objeto activo en la Vista 3D.

Cambia la ubicación X a un valor de 1:

bpy.context.object.location.x = 1

Mueve el objeto desde la ubicación X anterior en 0,5 unidades:

bpy.context.object.location.x += 0.5

Cambia la ubicación X, Y, Z:

bpy.context.object.location = (1, 2, 3)

Cambia sólo los componentes X, Y:

bpy.context.object.location.xy = (1, 2)

El tipo de datos de la ubicación del objeto:

type(bpy.context.object.location)

Ahora eso es una gran cantidad de datos a los que tiene acceso:

dir(bpy.context.object.location)
bpy.context.selected_objects

Dará acceso a una lista de todos los objetos seleccionados.

Escriba esto y luego presione Tab:

bpy.context.selected_objects

Para imprimir el nombre del primer objeto de la lista:

bpy.context.selected_objects[0]

The complex one… But this prints a list of selected objects not including the active object::

[obj for obj in bpy.context.selected_objects if obj != bpy.context.object]

bpy.data#

bpy.data tiene funciones y atributos que le dan acceso a todos los datos en el archivo .blend.

Será posible acceder a los siguientes datos en el archivo .blend actual: objetos, mallas, materiales, texturas, escenas, pantallas, sonidos, scripts, etc.

Eso es un montón de datos.

../_images/editors_python-console_bpy-data.png

bpy.ops#

El sistema de herramientas se basa en el concepto de operadores. Los operadores generalmente se ejecutan desde botones o menús, pero también se pueden llamar directamente desde Python.

Ver la documentación de la API bpy.ops para obtener una lista de todos los operadores.