En resumen
- El componente Python 3 Script se puede añadir desde el panel `Script` de la pestaña `Maths` de Grasshopper.
- Los parámetros de entrada ofrecen las opciones de acceso Item, List y Tree.
- Type Hint puede convertir los datos de entrada al tipo seleccionado antes de ejecutar el script.
- Desactivar el parámetro de salida estándar que no se utiliza puede reducir el procesamiento innecesario, sobre todo en definiciones con muchos componentes.
Esta guía se basa en la explicación sobre scripting con Python en Grasshopper de la documentación para desarrolladores de Rhino, actualizada el 29 de septiembre de 2026. En Grasshopper se puede añadir un componente Python 3 o IronPython 2 Script; también se puede seleccionar Python 3 en el menú de lenguaje del componente Script general. Los pasos siguientes se centran en configurar correctamente las entradas, el acceso a datos y las salidas del componente antes de generar geometría. La documentación señala que algunas opciones dependen de la versión de Rhino; por ejemplo, la opción para marcar un parámetro de entrada como obligatorio está disponible a partir de Rhino 8.14.
1. Añade y nombra el componente Script
Añade el componente Python 3 Script desde el panel Script de la pestaña Maths del lienzo de Grasshopper. Como alternativa, coloca el componente Script general y selecciona Python 3 en el menú de lenguaje. Haz doble clic en el componente para abrir el editor de scripts; la barra de estado del editor muestra la versión del lenguaje Python que se está utilizando.
Por lo general, los scripts están incrustados en el componente y no se guardan como archivos independientes. Si la definición contiene varios scripts, cambia el nombre del componente por otro que describa su propósito. La pestaña Script y el panel de puntos de interrupción reflejan ese nombre. Asigna también nombres descriptivos a los parámetros de entrada y salida para que quienes retomen la definición puedan entender con más facilidad qué datos se esperan y qué se genera.
2. Configura el primer script con entradas y salidas
De forma predeterminada, el componente Script incluye las entradas x e y y las salidas out y a. Puedes eliminar los parámetros que no necesites. Los controles para añadir o quitar entradas y salidas aparecen al acercar lo suficiente el zoom al componente. También se pueden quitar todos los parámetros de un lado; el componente mostrará ese borde de otra forma.
En la prueba más sencilla, suma dos números y asigna el resultado a la salida a:
a = x + yEn Script-Mode, el componente define las variables de entrada antes de ejecutar el script y transfiere a las salidas los valores asignados a las variables de salida. En este ejemplo, hay que conectar valores compatibles a las entradas x e y. Si las entradas están vacías, sus valores pueden ser None, y sumarlos provocará un error durante la ejecución. Como Python no es un lenguaje de tipado seguro, las operaciones incompatibles pueden causar problemas al ejecutar el script.
3. Elige el tipo de entrada y el acceso a los datos
Al hacer clic con el botón derecho en un parámetro de entrada y definir Type Hint, se convierten los datos que recibe el componente antes de ejecutar el script. En el ejemplo de la documentación, dos valores Line se convierten en valores numéricos mediante la sugerencia de tipo float, y el script los suma. Las opciones de Type Hint se pueden aplicar tanto a los parámetros de entrada como a los de salida. Conviene comprobar con los datos conectados que la conversión produce el resultado esperado.
Parameter Access, en el menú del parámetro, determina el alcance con el que el script procesará los datos:
| Acceso | Estructura que recibe el script | ¿Cuándo se utiliza? |
|---|---|---|
| Item | Cada elemento se procesa por separado | Para procesar los elementos individualmente |
| List | Los elementos de una rama se procesan juntos | Para procesar en conjunto la lista de una rama |
| Tree | Toda la estructura de datos se procesa en conjunto | Para trabajar globalmente con ramas y elementos |
Con el acceso Item, un número aparece en Python como un único valor; con List, los valores de una rama aparecen como una lista. El acceso Tree permite acceder al árbol de datos de Grasshopper. Type Hint también puede ayudar a determinar el tipo de elemento de la estructura general DataTree. Antes de elegir el tipo de acceso, define si el script procesará un elemento, una lista o todo el árbol.
4. Gestiona las salidas y los requisitos de entrada
El parámetro out captura el texto generado por las llamadas a print() del script. De forma predeterminada, cada línea se convierte en un elemento de salida independiente. Si se activa la opción Avoid Grafting Output Lines, las líneas impresas se transfieren como un único elemento. Si el script no escribe nada en la consola, se puede desactivar el parámetro out mediante la opción Standard Output/Error Parameter del menú contextual del componente.
Desactivar el parámetro out cuando no se utiliza evita que el componente capture y procese el texto impreso. La documentación indica que la ganancia puede ser pequeña en un solo componente, pero que este ajuste puede resultar más significativo en definiciones grandes de Grasshopper donde muchos componentes se ejecutan miles de veces.
Al principio, las entradas del script son opcionales. Si es obligatorio proporcionar datos a una entrada, se puede usar la opción Required del menú contextual de ese parámetro. La documentación oficial indica que esta opción está disponible a partir de Rhino 8.14. Marcar las entradas obligatorias, especialmente antes de publicar el script, reduce el riesgo de ejecutarlo con datos incompletos.
Uso en flujos de trabajo de arquitectura y visualización
Para arquitectos, interioristas y equipos de visualización, estos ajustes ayudan a convertir las tareas de modelado repetitivas en definiciones de Grasshopper más claras. Por ejemplo, indicar con nombres de parámetros qué datos espera un script y definir el tipo de entrada facilita compartir la definición con el equipo. La elección entre Item, List y Tree también determina si la operación se aplica a elementos individuales o a un grupo de datos.
Esta guía no basta por sí sola cuando se necesita trabajar con geometrías más complejas: la fuente no abarca las API de Rhino o Grasshopper y remite a documentación aparte sobre esos temas. Por eso, primero valida el flujo con un script sencillo y un conjunto pequeño de datos; después, incorpóralo a la definición real. Como las fuentes no ofrecen información sobre los requisitos de estación de trabajo o licencias, aquí no se hacen recomendaciones adicionales de hardware o costos.
Errores frecuentes
Pasar por alto las entradas vacías y operar con valores
None: comprueba que las entradas estén conectadas y tengan el tipo esperado.No elegir el acceso a parámetros según las necesidades del script: Item, List y Tree proporcionan estructuras de datos distintas.
Dejar activo el parámetro
outcuando no se utiliza: si no necesitas la salida deprint(), puedes desactivarlo.No asignar nombres descriptivos a los parámetros: esto dificulta entender la finalidad de las entradas y salidas, sobre todo en definiciones compartidas.
Fuentes
1 fuenteNo republicamos los textos de las fuentes; las citas breves van marcadas y el resto es resumen y comentario propios.
El principal valor de estas recomendaciones para los estudios de arquitectura y visualización de Turquía no está tanto en actualizar el hardware como en hacer que las definiciones de Grasshopper sean más fiables y fáciles de compartir. Usar nombres descriptivos para los parámetros, elegir el acceso correcto a los datos y marcar las entradas obligatorias puede ahorrar tiempo, especialmente cuando varias personas del equipo utilizan la misma definición.
El efecto de desactivar el parámetro `out` puede ser limitado en un solo componente; sin embargo, en definiciones con muchos componentes que se ejecutan de forma intensiva, podría reducir el procesamiento innecesario. Es importante probar los cambios en un flujo de trabajo real y verificar las opciones que dependen de la versión de Rhino. Las fuentes no contienen información sobre hardware, precios o licencias, por lo que se necesitan documentos oficiales adicionales para tomar decisiones sobre esos temas.
Preguntas frecuentes
¿Cómo se añade un componente Python 3 Script en Grasshopper?
Se puede añadir desde el panel `Script` de la pestaña `Maths` de Grasshopper. Si se utiliza el componente Script general, se puede seleccionar Python 3 en el menú de lenguaje.
¿Qué significan los accesos Item, List y Tree en Python para Grasshopper?
Item procesa los datos individualmente; List procesa juntos los elementos de una rama; y Tree procesa toda la estructura de datos. La elección debe depender de cómo necesite trabajar con los datos el script.
¿Para qué sirve el parámetro out del componente Python de Grasshopper?
`out` captura el contenido escrito con `print()` en el script. Si no se utiliza la salida de consola, se puede desactivar desde el menú contextual del componente.



