Xlogo
Xlogo
Xlogo
La primitiva repite recibe como parámetros la cantidad de veces que va a hacer algo y
una lista con las instrucciones que va a ejecutar cada vez.
Una lista es un conjunto de elementos encerrados entre corchetes y separados por
espacios entre si.
Trazos rectos
Práctica 1:
Editar un procedimiento “polígono” que reciba como argumentos la cantidad y la
longitud de los lados y trace polígonos regulares. Tener en cuenta que la suma de los
ángulos exteriores de cualquier figura cerrada siempre da 360º
Práctica 2:
Editar un procedimiento “roseta” que dé toda una vuelta trazando polígonos. Debe
recibir como parámetros la cantidad de polígonos que trazará, y los datos para trazar los
mismos.
Práctica 3:
Editar un procedimiento “triánguloraton” que trace un triángulo rectángulo cuya
hipotenusa sea la línea que une el centro de la ventana con la posición del puntero del
Mouse. Las coordenadas del Mouse se obtienen mediante la primitiva posraton.
Asegurarse que antes de trazar cualquier línea, la tortuga vaya al centro de la ventana.
Práctica 4:
Editar un procedimiento “rayadovertical” y otro “rayadohorizontal” que rayen la
ventana vertical y horizontalmente. Deben recibir como parámetros la cantidad y la
longitud de las líneas que van a trazar.
Tener en cuenta que la tortuga debe comenzar y terminar el procedimiento en el centro
de la pantalla y para trazar la primera linea debe desplazarse hacia la esquina superior
izquierda de la ventana luego entrar en una repetición en la que se trace cada linea y se
deje cada espacio necesario entre ellas. El ancho de cada espacio resulta de dividir el
ancho o alto de la pantalla entre la cantidad de líneas a trazar.
Se pueden hacer mediante desplazamientos y giros o mediante saltos.
Práctica 5:
Crear un procedimiento “patron” que combine varios rayados horizontales y verticales
variando el grosor y el color de la línea en cada caso. Para establecer el color de los
trazos se usa poncl o poncolorlapiz y para establecer el grosor se usa pongr o
pongrosorlapiz.
Curvas
Circulos
La primitiva circulo traza una circunferencia con el radio indicado como parámetro y
cuyo centro es la posición de la tortuga. Es como abrir un compás con la medida
determinada y trazar la circunferencia poniendo la aguja en la posición de la tortuga.
Arcos
Los arcos son secciones angulares de los círculos. La primitiva arco traza una línea
curva en sentido horario y necesita 3 datos para poder ejecutarse:
1. el radio del arco, la distancia entre la tortuga y la línea, la apertura del
compás
Ej:
Para trazar un semicírculo de 100 px de radio, hacia arriba de la posición de la tortuga
se escribe:
arco 100 270 90 empieza a trazar 100 px a la izquierda (rumbo 270) y deja de
hacerlo 100 px a la derecha de la tortuga (rumbo 90)
Práctica 6:
Crear procedimientos para trazar las siguientes figuras (f1, f2 y f3) ingresando como
argumento el tamaño de cada una. Respetar las proporciones indicadas en cada figura
1/4
1/3
1/2
/21 1/2
1/3
1/4
1/2 1/3
Variables:
Para almacenar un valor que se desprende de un cálculo se puede crear una variable,
para ello usamos la primitiva haz que lleva dos parámetros, el primero es el nombre que
recibirá la variable, es un texto y debe comenzar siempre abriendo comillas pero sin
cerrarlas luego. Para acceder al contenido de una variable lo hacemos como al acceder a
los parámetros de un procedimiento, escribiendo dos puntos y el nombre. P/E obtener la
hipontenusa de un tríangulo rectángulo con catetos iguales se escribe:
Haz “hipotenusa rc( :lado*:lado*2)/2
Y luego
Av :hipotenusa
Para que la tortuga avance la longitud calculada
1/3
Valores al azar:
Si queremos que haga un dibujo al azar, entre los que diseñamos antes, de un tamaño al
azar entre 100 y 200:
Práctica 7:
Crear un procedimiento que llene la pantalla de dibujos estableciendo la posición al azar
y luego eligiendo de todos los dibujos creados, con tamaños, grosores de linea y colores
al azar.
Colores
El color del trazo y del relleno se establece con la primitiva poncolorlapiz o poncl y el
color del fondo de la ventana con poncolorpapel o poncp
Los colores se pueden establecer por:
• su nombre (blanco, rojo, verde, amarillo, azul, etc.).
• Su número de orden de la lista de colores básicos (1, 2, 3, 4, etc.)
• Una lista formada por 3 valores entre 0 y 255. El primer elemento corresponde
al valor del rojo, el segundo al verde y el tercero al azul (rgb). Esto nos da una
paleta de 16.777.216 posibilidades diferentes (24 bits)
Para obtener el color actual del lápiz se utiliza colorlapiz y para obtener el color del
fondo de la ventana se utiliza colorpapel
Para modificar un color primero hay que obtenerlo y descomponerlo, acceder al
componente indicado, realizar la modificación y establecer el nuevo color.
Por ejemplo: Aclarar un rojo es aumentar la cantidad de verde y azul en la misma
medida. Entonces se obtiene el color actual y se descompone:
Haz “coloractual colorlapiz
Haz “rojo elemento 1 :coloractual
Haz “verdeactual elemento 2 :coloractual
Haz “azulactual elemento 3 :coloractual
Luego se modifican los valores
Haz “verdenuevo :verdeactual + 20
Haz “azulnuevo :azulactual + 20
Y al final se establece el color del lapiz con los nuevos valores, para ello se usan las
primitivas frase y lista
Poncl frase lista :rojo :verdenuevo :azulnuevo
Gradientes
Un gradiente o degradado se obtiene aumentando o disminuyendo alguno de los valores
que componen en una determinada cantidad de pasos.
Para lograr un gradiente es necesario entrar en un ciclo de repetición que obtenga y
modifique los componentes rojo, verde y azul de los colores