Professional Documents
Culture Documents
de grashopper nivel I
ndice
A. Conceptos bsicos.
00 Introduccin.
E01 Interfaz grfica.
E02 Objetos. Tipos y modos de visualizacin.
E03 Modos de entrada.
02
03
05
08
B. Nmeros y datos.
E04 Dominios, rangos y series. Hilera y matriz de puntos.
E05 Funciones. Parbola y espiral.
E06 Paraboloide hiperblico.
E07 Superficie por puntos - Miralles.
06
08
09
10
12
13
14
15
16
D. Geometra
E13 Brjula.
E14 Vector Solar.
E15 Subdivisin y triangulacin de una superficie.
E16 Panelizacin de una superficie.
18
19
20
21
E. Modelado paramtrico
E17 Monumento a los judos de Europa.
E18 Mediateca de Sendai.
23
26
conceptos bsicos
00
introduccin
00. qu es grasshopper?
Llevar una idea o proyecto a grasshopper no es una tarea sencilla. No basta con
conocer la herramienta y sus comandos, hace falta ser capaz de traducir nuestra
idea a un lenguaje matemtico en primer lugar, y, en segundo lugar, a un lenguaje
que grasshopper sea capaz de entender.
Idea
modelo matemtico/lgico
definicin en grasshopper
Por este motivo, mientras que grasshopper es una excelente herramienta para
llevar a cabo proyectos que operen con gran cantidad de informacin, geometra,
o mltiples variables y condiciones definidas con precision y rigor, grasshopper no
es una buena herramienta para manejar procesos intuitivos o difusos, que tienen
dificultad para ser traducidos a un lenguaje lgico.
p04
nmeros y datos
E04
00. objetivo
C. Definicin: serie.
A+N
A+2N
C valores
A+3N
D. Hilera de puntos
Para dibujar una hilera de puntos en la direccin del eje X utilizando los conceptos anteriores, tendremos que seguir los pasos siguientes:
A. Definicin: dominio.
B. Definicin: rango.
C. Definicin: serie.
D. Hilera de puntos.
E. Matriz de puntos.
A. Definicin: dominio.
Dominio (domain) es un componente cuya entrada son dos valores reales A y
B y cuya salida es un intervalo continuo de la recta real. Un dominio se escribe
A To B y representa la coleccin de todos los nmeros entre esos dos valores.
B. Definicn: rango.
Rango (range) es un componente cuyas entradas son un dominio y un valor N,
y cuya salida son valores discretos de la recta real. Es decir, es un componente
que toma un dominio continuo D y lo divide N veces, generando una coleccin
de N+1 valores discretos.
N divisiones
A
d
N+1 valores
E04
E. Matriz de puntos.
Si simplemente conectamos la serie a las entradas X e Y de Point, Point har
exactamente lo que le pedimos, es decir, dibujar una hilera de puntos que
tienen la coordenada X igual a la Y, puesto que las dos listas de nmeros
provienen de la misma serie:
(1,1) (2,2) (3,3) (4,4) (5,5) ....
Ahora, si nuestra intencin es hacer una matriz de puntos, debemos cruzar
estas coordenadas.
1. Empleando lo aprendido en la leccin de correspondencia de datos, hacemos clic con el botn derecho en la parte central del componente Point, y
seleccionamos Cross Reference. Esto quiere decir que a cada coordenada
X (1, 3, 5, 7..) Grasshopper le va a hacer corresponder todas las coordenadas Y (1, 3, 5, 7..) produciendo una lista de pares de coordenadas tal que as:
(1,1) (1,2) (1,3) (1,4) (1,5) ....
(2,1) (2,2) (2,3) (2,4) (2,5) ....
(3,1) (3,2) (3,3) (3,4) (3,5) ....
donde cada elemento se combina con todos los dems.
ejercicio propuesto
Intenta hacer una matriz de puntos como la anterior, pero que en el que cada
punto es elevado 1 unidad en la direccin Z con respecto al anterior.
ejercicio propuesto
Intenta hacer una matriz de puntos tridimensional.
p07
E05
parbola y espiral
00. objetivo
El objetivo de este ejercicio es familiarizarnos con el manejo de funciones. Usaremos una serie para generar una lista de valores que sern afectados por una
funcin. Visualizaremos los efectos de la funcin asignando los valores a coordenadas de puntos para dibujar una parbola primero, y luego una espiral.
p08
E06
paraboloide hiperblico
01. objetivos
- repasar la nocin de dominio matemtico
- emplear las funciones de n variables
- conocer cmo dibujar superficies a partir de frmulas
- entender cmo se define una superficie a partir de puntos
p09
E07
01. objetivos
Dibujaremos una superficie irregular cuya geometra viene dada por una funcin
de la cual podemos controlar determinados parmetros. Para ello deberemos
comprender el concepto de remapeo de nmeros. Utilizaremos una grfica para
modificar en tiempo real una lista de valores de cotas que dar alturas diferentes
a cada punto de la superficie.
p010
E08
01. objetivos
- comprender que una lista es una sucesin de elementos, en la que el orden y la
posicin de los mismos dentro de ella es relevante
p012
E09
01. objetivos
- repasar la nocin de lista como sucesin ordenada de elementos
- conocer cmo se desfasan listas segn ndices
p013
E10
01. objetivos
- introducirse en y comparar las nociones de colecciones numricas en
Grasshopper con series y dominios
- comprender el modo de correspondencia de datos entre listas en Grasshopper
p014
E11
01. objetivos
- conocer cmo se eliminan elementos de una lista, aplicndolo a la triangulacin
de la malla de pilares del ejercicio E03
- comprender la relacin entre los ndices de una lista y los valores nmericos de
los dominios y las series
p015
E12
01. objetivos
- elaborar un algoritmo sencillo, que consiste en eliminar los pilares del ejercicio
E03 en un entorno de un radio determinado para fabricar un patio en la estructura
- trabajar con sentencias condicionales: comparadores y valores booleanos
p016
geometra
E13
brjula
01. objetivos
- definir geomtricamente puntos con coordenadas XYZ y polares
- utilizar funciones de una variable para clculos matemticos
- dibujar vectores a partir de dos puntos y visualizarlos
- entender cmo se miden ngulos en Grasshopper
p018
E14
vector solar
01. objetivos
El objetivo es definir un vector solar en coordenadas polares y compararlo con
el vector normal a una superficie. Colorearemos puntos sobre la superficie segn
su exposicin a la radiacin solar.
de 0 radianes ser rojo, uno de Pi ser rojo tambin, y, en Pi/2, cuando los los
vectores sean perpendiculares, la luz ser rasante y le asignaremos el color
verde.
4. Visualizar.
El ltimo componente, Preview, sirve para colorear: le asigna color a geometra.
Nuestra informacin de color sale del Gradient, y la geometra a colorear son
todos los puntos que salen del flatten de la salida P de Surface Divide.
03. procedimiento
1. Definir un vector en coordenadas polares.
2. Dibujar y dividir una superficie.
3. Comparar vectores y asignar color.
4. Visualizar.
1. Definir un vector en coordenadas polares.
Con el componente Point Polar dibujamos un punto que gira en torno al Origen.
Uniendo con Line el Origen y el punto polar, obtenemos la direccin de nuestro
sencillo vector solar, con vector display podemos visualizarlo. Si tratamos a
la lnea como si fuera un vector, Grasshopper no tiene problemas porque la
convierte automticamente.
2. Dibujar y dividir la superficie.
Referenciamos con dos Curve (icono de borde hexagonal) dos curvas dibujadas
en Rhino, y conectamos ambos a la entrada S de un componente Loft. Con
Divide Surface dividimos la superficie en puntos en los cuales conocemos el
vector normal (salida N del Divide Surface). Un Flatten en las salidas N y P del
Divide Surface nos libra de las sublistas.
3. Comparar vectores y asignar color.
Con un Angle comparamos los vectores normales (salida N del Divide Surface)
con el vector solar (salida L de Line). A estos valores de ngulo les tenemos
que asignar un color. Esto se consigue con Gradient. Con la paleta de Gradient
definimos el espacio de color que vamos a hacer corresponder con los valores
de ngulo, este espacio queda determinado entre los lmites L0 y L1. Un ngulo
p019
E15
01. objetivos
El objetivo de este ejercicio es subdividir una superficie alabeada en porciones
menores utilizando sus coordenadas locales U y V, y luego trazar las diagonales
de cada cuadrado. Las sublistas nos ahorrarn mucho trabajo.
p020
E16
01. objetivos
En este ejercicio definimos una superficie a partir de una curva que se repite en
vertical y aprendemos a replicar una geometra sobre ella.
p021
modelado paramtrico
E17
01. objetivos
- parametrizar un diseo de un proyecto real
- aplicar la nocin de dominio a medidas concretas
- subdividir una regin del espacio con planos
- tomar medidas pseudoaleatorias para elaborar prototipos de diseos
NOTA: En este ejercicio, se han reducido las medidas reales de superficie total y
nmero de losas para dar lugar a un archivo menos pesado.
Datos de partida:
- parcela: dibujamos en Rhino un polgono similar a la planta del solar
- anchura de losas: 2.38 m.
- fondo de losas: 0.95 m.
- nmero de losas: 371
04. procedimiento
1. Dibujar los puntos de origen de las losas
2. Dibujar las losas con las medidas de los datos de partida en esos puntos
1. Dibujar los puntos de origen de las losas
1.1. Extraer los dominios de cada una de las direcciones: dibujamos el slido
capaz que contiene a la parcela (bounding box), que ser una caja plana, y
extraemos sus esquinas con (box corners). Los dominios de la parcela, tanto en
el eje X como en Y son las coordenadas X e Y de dichas esquinas.
p023
1.2. Dibujar los planos de corte para cada direccin: en primer lugar, necesitamos
los puntos de origen de esos planos, que estarn contenidos en los bordes
del slido que encierra a la parcela. Tomamos los dominios de cada eje y los
dividimos en nmeros reales con un rango. El nmero de subdivisiones del del
dominio (la N del rango) puede ser la longitud lineal del slido capaz en cada
eje (la resta numrica de las coordenadas de los bordes del dominio para cada
direccin) entre la medida de la losa ms un paso. En segundo lugar, una vez
obtenidos los puntos, slo tenemos que tomar los vectores unitarios adecuados
para dibujar los planos en cada direccin: para los planos en la direccin X, los
vectores sern los unitarios en los ejes Y y Z; y para los planos en la direccin
Y, los vectores sern los unitarios en los ejes X y Z. El ltimo plano para fabricar
las intersecciones que darn lugar a los puntos ser el plano universal XY.
1.3 . Puntos de losas: una vez obtenidos los planos, tan slo nos queda fabricar
las intersecciones con Intersect plane|plane|plane (3PX). Para quedarnos
solamente con los puntos interiores de la parcela, utilizamos la herramienta
Point Containment, que comprueba si una lista de puntos (P) estn o no en
el interior de una curva cerrada C y devuelve en R la relacin entre el punto y
la curva (0 si est sobre la curva, 1 si est dentro de la curva y 2 si est fuera
de la curva de regin) y en P la proyeccin de dicha lista de puntos sobre el
plano que contiene a la curva plana cerrada. Slo nos queda quedarnos con
los puntos coincidentes con los valores 2 de la salida R de Point Containment
con una igualdad y Dispatch. Por ltimo, nos quedaremos con los valores de la
salida A de Dispatch.
2.3 Extrusin de los rectngulos base de las losas : Para reproducir el paisaje
del monumento, tomamos unas alturas de losas prefijadas, como medidas
de unos prefabricados, que distribuiremos de un modo aparentemente aleatorio,
utilizando la herramienta jitter. Necesitamos tantos valores de extrusin
como losas, para ello repetimos la lista de alturas de losas con duplicate data,
que repite los valores de una lista D N veces. Jitter desordena los elementos
de una lista, modificando sus ndices pseudoaleatoriamente.Para terminar,
tapamos la extrusin con cap holes.
p025
E18
01. objetivos
El objetivo de este ejercicio es realizar un repaso de los conceptos generales
aprendidos en todos los ejercicios anteriores. Dibujaremos un slo pilar triangulado
de la mediateca de Sendai, de Toyo Ito. Comenzaremos con un punto, luego
un crculo, luego una coleccin de crculos transformados (copiados, escalados,
rotados) y finalmente resolveremos su triangulacin.
p026
E18
p027
E18
p028