Skip to main content

Practica 1: Hello Pd World (Hola Mundo Pd)

Tiempo estimado (45 mins)

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

Creamos un patch nuevo: ir al menu horizontal Archivo>Nuevo o utilizando el Shortcut/abreviatura "Ctrl+N"

Vamos a crear nuestro primer 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 el. 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) y nuestro programa ya esta marcha. 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 click 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 le modo edición, creamos una cajita de numero 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 valido, por ejemplo con un mensaje que contenga dicho valor. Sin embargo un mensaje con símbolos que no puedan ser interpretados como valores numéricos valido 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.

En este Video os explico detalladamente la practica:

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. 


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