Skip to main content

Práctica 1: Hello Pd World (Hola Mundo Pd)

Este va a ser vuestro primer programa con Pd y vamos a imprimir en la zona de impresión de la Ventana principal un mensaje que enviemos desde un patch de Pd.   

image-1662460902321.gifFigura 1. Hello World en Pure Data


Enviamos mensajes con Pure Data

Lo primero que haremos será crear un patch nuevo. Para ello, iremos al menú horizontal Archivo>Nuevo o utilizando el Shortcut/abreviatura "Ctrl+N".

Vamos a crear un mensaje en Pure Data: en menu horizontal>Poner>Mensaje o utilizando en comando "Ctrl+2". En este mensaje vamos a escribir "hola mundo" 

Ahora necesitamos al mensajero que envíe este mensaje al espacio de impresión, para ello utilizaremos un objeto "print". Creamos un objeto (menu horizontal>Poner>Objeto o utilizando en comando "Ctrl+1) y escribimos print dentro de él.

Tras escribir "print" en el objeto, clicaremos fuera de él, veréis como la caja de línea discontinua que lo contiene se convierte en una caja de línea continua, esto os indica que el objeto se ha creado correctamente.

Para que este mensaje llegue al objeto "print" tenemos que conectar el outlet/la salida de nuestro mensaje con el inlet/entrada del objeto "print". Una vez conectado, salimos del modo edición ("Ctrl+E" o en el menu horizontal Editar>Modo edición), nuestro programa ya esta marcha. ¿Funciona?image-1668445878044.gif


Los mensajes no se envían de manera constante, solo cuando una acción o evento activan este envío. Por ejemplo, cuando clicamos sobre el mensaje, su contenido es enviado; cuando un mensaje recibe cualquier otro mensaje (sin importar el contenido del mensaje recibido), el mensaje receptor envía su contenido. 

Vamos a comprobar esto separando en dos mensajes el "hola mundo". Vamos a editar el mensaje que habíamos creado y borrar la palabra "hola". Crearemos otro mensaje en el que escribiremos la palabra hola y lo conectaremos a nuestro mensaje con la palabra mundo: 

Cuando hacemos clic en el primer mensaje "hola", este mensaje se envía y llega a la entrada del mensaje "mundo". El mensaje que contiene la palabra mundo se activa, e interpreta el mensaje recibido como una orden de activarse sin importar ni preservar el contenido de este y envía su contenido: la palabra mundo que llega al objeto "print" y se imprime en la zona de impresión de la ventana principal. Por eso el "hola" del primer mensaje no se imprime, el segundo mensaje no guarda ni reenvía el hola recibido, solo envía el contenido que ya tiene, en este caso, mundo.

El objeto print también nos va a permitir visualizar valores numéricos. Entramos en el modo edición, creamos una cajita de número variable (menu horizontal>Poner>Numero o utilizando en comando "Ctrl+3") y la conectamos con el objeto print.

Salimos del modo edición ("Ctrl+E" o en el menu horizontal Editar>Modo edición) y manteniendo el clic izquierdo sobre la cajita arrastramos el ratón para cambiar el número. Cada vez que el número de esta cajita cambia, es enviado por el outlet o salida.

Este elemento NO nos va a permitir enviar su contenido clicando sobre el. Para que envíe su contenido tendremos que hacerle llegar un mensaje de bang, y si queremos cambiar su contenido a traves de su entrada, tendremos que hacerle llegar un valor numérico válido, por ejemplo con un mensaje que contenga dicho valor.

Un mensaje con símbolos que no puedan ser interpretados como valores numéricos validos no sera aceptado por la cajita de numero variable y nos mostrara un error en el espacio de impresión, ya que este objeto solo acepta como entradas mensajes de bang o valores numéricos.


Ejercicio 1: Después de ver el video y construir el patch de hola mundo. Crea otro patch con tres mensajes que modifiquen el contenido de una cajita de numero variable, e imprime el contenido de la cajita de numero variable en la zona de impresión. 

¿Qué tenemos que entregar?

El ejercicio 1. Sube a la carpeta del Moodle de la Practica 1 una captura de pantalla y el patch que has creado. El patch debera llamarse: Practica1_nombre_apellido.pd y la imagen Practica1-imagen_nombre_apellido.



Figuras:

Figura 1: Tomada de "Pure Data Start Here" by Pure Data https://puredata.info/docs/StartHere

Referencias:

Pure Data (2022). Pure Data Start Here. Pure Data. Consultado el 14 Septiembre 2022 de https://puredata.info/docs/StartHere