Funciones predefinidas de PythonG
- create_point(x, y, color). Dibuja el punto y devuelve
un índice para poder borrarlo. Si no se indica color, se toma 'black' por defecto.
- create_line(x1, y1, x2, y2, color). Dibuja la línea
y devuelve un índice para poder borrarla. Si no se indica color, se toma 'black' por defecto.
- create_circle(x, y, radio, color). Dibuja el circulo
y devuelve un índice para poder borrarlo. Si no se indica color, se toma 'black' por defecto.
- create_filled_circle(x, y, radio, colorExterior, colorRelleno). Ídem al anterior pero
relleno. Si sólo se indica un color, se tomará como color exterior y de relleno.
- create_rectangle(x1, y1, x2, y2, color). Dibuja el rectangulo y devuelve un índice
para poder borrarlo. Si no se indica color, se toma 'black' por defecto.
- create_filled_rectangle(x1, y1, x2, y2, colorExterior, colorRelleno). Ídem al anterior
pero relleno. Si sólo se indica un color, se tomará como color exterior y de relleno.
- create_text(x, y, cadena, tamaño, ancla, colortexto). Escribe el texto cadena
en la ventana gráfica. El parámetro ancla puede tomar los siguientes valores:
'CENTER', 'N', 'S', 'E', 'W', 'NE', 'SE', 'NW' y 'SW'. Si no se pone tamaño, toma el valor 10, del
mismo modo ancla toma el valor 'CENTER' y colortexto 'black'.
- erase(indice). Borra un objeto dado su índice.
- erase(etiqueta). Borra todos los objetos con dicha etiqueta.
- erase(). Borra todos los objetos de la ventana gráfica.
- move(indice,xinc,yinc). Desplaza una
distancia relativa el objeto con dicho índice.
- move(etiqueta,xinc,yinc). Desplaza una
distancia relativa (a cada objeto) todos los objetos con dicha etiqueta.
- keypressed(modo). Lee una tecla sin hacer echo por pantalla. Funciona
de tres modos diferentes según el valor del parámetro:
- keypressed(0): No espera tecla + retardo de repetición. Si cuando se llama
a esta función hay una tecla pulsada, la devuelve. Si no hay ninguna pulsada,
devuelve None. El retardo de repetición evita que una pulsación genere más de un carácter.
- keypressed(1): No espera tecla + sin retardo de repetición. Idéntico al
anterior, excepto que no hay retardo de repetición por lo que cada pulsación
de una tecla suele generar varios caracteres. Este modo suele utilizarse en ciertos tipos de
juegos (¡ojo! no sirve para nada más).
- keypressed(2): Espera tecla + retardo de repetición. Espera hasta que se pulse
una tecla. Incorpora retardo de repetición para evitar que una pulsación
genere más de un carácter. Es el modo por defecto si
no se indica ningún parámetro.
- mouse_state(). Devuelve la tupla (botón,posx,posy)
donde botón puede ser 0 (si no hay ningún botón pulsado) o un entero del 1 al 3 que identifica
qué botón se encuentra actualmente pulsado (1:izq. 2:central 3:der.). Los otros dos elementos
de la tupla (posx y
posy) son las coordenadas del ratón en la ventana gráfica. Si el ratón se encuentra fuera de la
ventana gráfica esta función devuelve (None,None,None). IMPORTANTE: debes tener cuidado
al utilizar esta función, pues cada vez que se pulsa un botón, éste se encuentra pulsado durante
varios milisegundos, sufiente para que sucesivas llamadas a esta función devuelvan los mismos
valores. Por esto, necesitas asegurarte de que el botón se ha soltado antes de volver a mirar si
se ha pulsado de nuevo.
- window_size(ancho, alto). Tamaño físico en píxels
de la ventana gráfica. Si se llama a esta función sin argumentos, devuelve
una lista con los valores actuales.
- window_coordinates(xinf, yinf, xsup, ysup). Tamaño lógico
de la ventana gráfica. Si se llama a esta función sin argumentos, devuelve
una lista con los valores actuales.
- window_update(). En PythonG la
ventana gráfica puede tardar algún tiempo en actualizarse después de utilizar
una función de dibujo. Llamando a esta función se actualiza explícitamente la ventana gráfica.
- window_style(titulo, colorfondo, modo). Permite definir un título,
un color de fondo de la ventana gráfica y un modo
para cuando el programa se ejecute fuera del entorno PythonG (con el módulo
modulepythong). Actualmente hay dos modos disponibles: 'TODO' que muestra
la ventana de 'salida gráfica' y la de 'entrada de teclado/salida de texto', y
'G' que muestra únicamente la de 'salida gráfica'. Dentro del entorno PythonG
únicamente tiene efecto el color del fondo. Por defecto, colorfondo toma el valor 'white' y
modo el valor 'TODO'.
- clear_output(). Borra todo el texto de la ventana de 'Entrada de teclado/Salida
de Texto'.
- close_window(). Se cierra todo y termina el programa. Dentro de PythonG no
produce ningun efecto.
- save_EPS(nombreFichero). [Nuevo en PythonG 2.1.5] Guarda el dibujo actual de la ventana
gráfica en el fichero 'nombreFichero' con el formato PostScrip Encapsulado (EPS).
AVANZADO: Las funciones de dibujo (create_point, create_line, create_circle,
create_filled_circle, create_rectangle, create_filled_rectangle y create_text) tienen
un parámetro adicional para añadir una etiqueta (tag) a los objetos. Por ejemplo:
create_point(10,10,'red',tags='etiqueta1')
Si un objeto está etiquetado, es posible moverlo o borrarlo utilizando dicha etiqueta
como parámetro en las funciones move() y erase() respectivamente.