CORTAAREAanchura
altura
BITCUTanchura
altura
Corta una porción de la imagen y la guarda en la memoria (o en el Portapapeles, si INDICEIMAGEN devuelve 0).
Luego puedes «pegar» esa porción en cualquier parte con BITPEGA.
CORTAAREA corta un rectángulo desde la posición de la tortuga el tamaño indicado por los argumentos anchura
y altura
.
Siempre se corta el rectángulo horizontal y verticalmente, no importa el rumbo de la tortuga.
Tal vez te parece que CORTAAREA se desvía de un píxel en la anchura y altura, pero no es así.
Si dibujas un cuadrado con REPITE 4 [ AVANZA 2 GIRADERECHA 90]
¿cuántos píxeles tiene de anchura?
No tiene 2 píxeles, sino 3.
Eso es debido al modo que dibuja FMSLogo.
FMSLogo dibuja como si tuviera una línea imaginaria bajo el centro de cada píxel.
Si la ruta de la tortuga se corta un píxel, entonces se lo ilumina.
La distancia del centro de los píxeles del lado izquierdo del cuadrado hasta el centro de los píxeles del lado derecho es la distancia correcta (2 píxeles).
Pero FMSLogo no puede iluminar un medio píxel, entonces se ilumina el píxel entero, que añade un medio píxel a cada lado del cuadrado, haciéndolo un cuadrado de 3x3 píxeles.
Por lo contrario, el tamaño del área que corta CORTAAREA, se mide en píxeles enteros, no del centro de un píxel al centro del otro.
Así que, para cortar el cuadrado de 2x2 pasos de tortuga, necesitas cortar 3x3 píxeles.
; Dibuja un patrón interesante.
PONGROSOR [2 2]
REPITE 72 [
PONCOLORLAPIZ (LISTA CUENTAREPITE*3 0 0)
CIRCULO2 100
GIRADERECHA 5
]
; Corta una porción de ese dibujo
SUBELAPIZ
PONXY -50 -50
CORTAAREA 100 100
; Pega la porción a las extremidades de un circulo con un radio de 150.
BORRAPANTALLA
REPITE 18 [AVANZA 150 BITPEGA RETROCEDE 150 GIRADERECHA 20]
PONINDICEBIT |