Diferencia entre revisiones de «Xevents»

De Proyecto Butiá
Saltar a: navegación, buscar
(Ejemplos de uso)
 
(No se muestran 63 ediciones intermedias de 5 usuarios)
Línea 1: Línea 1:
Xevents es un plugin para TurtleBlocks que permite diseñar diferentes tipos de interfaces de accesibilidad de forma sencilla para un usuario sin demasiado conocimiento de programación, usando TurtleBlocks y diferentes tipos de sensores.
+
== Descripción ==
  
Actualmente se está adaptando a sugar[1] un barrido simple que fue previamente programado en éste plugin lo que permitirá tener mejor velocidad por ser un servicio de Sugar, y poder configurarlo del panel de control.
+
Xevents es un plugin para TurtleBlocks que permite diseñar diferentes tipos de interfaces de accesibilidad de forma sencilla para un usuario sin demasiado conocimiento de programación, utilizando TurtleBlocks y diferentes tipos de sensores.
  
Al hablar con X, usando Xlib, es posible usarlo tanto dentro como fuera de Sugar en cualquier sistema GNU/Linux con GUI.
+
Sin embargo, en su intención Xevents es mucho más que ello, porque nace con la finalidad específica de transformar a turtlebots en un ambiente para la generación de ATTs (ayudas técnicas y tecnológicas) que permitan la utilización de aplicaciones estándar por parte de usuarios con alguna discapacidad.
  
Este es un ejemplo de un barrido básico hecho con TurtleBots y Xevents:
+
Finalmente Xevents es un trabajo en curso, con muchos aspectos a mejorar, en el que es fundamental que haya gente llevándolo al límite y generando insumos para decidir en qué dirección avanzar.
  
[[Archivo:Ins1.png]]
+
== Configuración del ambiente de trabajo ==
  
Al empezarlo primero hace el barrido en el eje X hasta que el botón del butiá es presionado.
+
=== Requerimientos ===
  
[[Archivo:Instantánea10.png]]
+
Tener instalado '''TurtleBots''' versión '''30''' o posterior.
  
Ejecuta la función barrido_x
+
=== Instalación ===
  
[[Archivo:Expl_xreal.png]]
+
*Ingresar a https://www.fing.edu.uy/inco/proyectos/butia/files/xevents/
 +
*Hacer click en la carpeta de la plataforma correspondiente.
 +
*Descargar el paquete de Xevents (xevents_<version>_<plataforma>.deb).
 +
*Hacer doble click en el paquete descargado y seguir los pasos de la instalación.
  
Que cambia la posición X de la linea a la posición actual del mouse + 2px hasta que llega al borde de la pantalla y después empieza de nuevo. La posición de Y es cambiada a 0.
+
=== Activación en TurtleBots ===
  
luego en Y
+
*Iniciar la actividad TurtleBots.
 +
*Hacer click en Extensiones.
 +
*Hacer click en la opción xevents.
 +
*Verificar que las opciones butia y turtleblocksextra se encuentren marcadas.
  
[[Archivo:Instantánea9.png]]
+
== Ejemplos de uso ==
  
Que ejecuta la función barrer_y
+
=== Barrido básico ===
  
[[Archivo:Expl_x_scrolling.png]]
 
  
el cometido de esta función es cambiar la posición X de la linea por la última posición en X, y la posición en Y por la posición actual del mouse + 3px hasta que llegue al borde de la pantalla, y luego de nuevo.
+
[[Archivo:Xevents_barrido_1.png |thumb |Ejemplo de barrido básico programado con TurtleBots y Xevents. ]]
 +
[[Archivo:Expl_xreal.png | thumb | Barrido básico: Bloque que ejecuta el barrido vertical.]]
 +
[[Archivo:Expl_x_scrolling.png | thumb | Barrido básico: Bloque que ejecuta el barrido horizontal.]]
  
y por último hace el click donde quedó posicionado el puntero
+
Al ejecutar el programa y luego de presionar el botón se realiza un barrido en el eje de las X hasta que el botón del butiá es presionado nuevamente, luego se realiza un barrido en el eje de las Y. <br/><br/>
  
[[Archivo:Instantánea8.png]]
+
[[Archivo:Barrido_ejemplo.png | 600px]]
 +
 
 +
 
 +
En funcionamiento:<br/><br/>
 +
 
 +
 
 +
<youtube>uTcWpzID56U</youtube>
 +
 
 +
== Paleta básica de Xevents  ==
 +
 
 +
[[Archivo:Xevents_paleta.png|700px]]
 +
 
 +
 
 +
* obtenerX: Obtiene la coordenada de la posición actual del mouse en el eje de las X.
 +
* obtenerY: Obtiene la coordenada de la posición actual del mouse en el eje de las Y.
 +
* obtenerAltoPantalla: Obtiene el alto de la pantalla en pixeles.
 +
* obtenerAnchoPantalla: Obtiene el ancho de la pantalla en pixeles.
 +
* fijarXY: Mueve el puntero del mouse a la posición indicada.
 +
* establecerOpacidadLínea: Establece la opacidad de la línea. Acepta un valor decimal entre 0 y 1, siendo 0 la opacidad mínima y 1 la opacidad total.
 +
* establecerAnchoyAltoLínea: Establece el ancho y alto de la línea de barrido.
 +
* mostrarLínea: Muestra la línea.
 +
* ocultarLínea: Oculta la línea.
 +
* establecerColor: Establece el color de la línea de barrido.
 +
* click: Simula un click del mouse con el botón encastrado en el bloque.
 +
* doble click: Simula un doble click del mouse con el botón encastrado en el bloque.
 +
* presionarBotón: Presiona el botón encastrado en el bloque.
 +
* soltarBotón: Suelta el botón encastrado en el bloque.
 +
* clickDerecho: Representa el botón derecho del mouse.
 +
* clickIzquierdo: Representa el botón izquierdo del mouse.
 +
* desplazarArriba: Simula el botón de scroll hacia arriba.
 +
* desplazarAbajo: Simula el botón de scroll hacia abajo.
 +
 
 +
== Paleta extendida de Xevents  ==
 +
 
 +
[[Archivo:Xevents_paleta_e.png|700px]]
 +
 
 +
 
 +
* simularTecla: Permite simular presionar una tecla del teclado físico.
 +
* combinar: Permite combinar dos teclas simulando presionar ambas a la vez. Primero se simula presionar la tecla encastrada en key1 (sin ser soltada) y luego se simula presionar la tecla encastrada en key2.
 +
* abrirNavegador: Abre una pestaña nueva del navegador por defecto con la url que se le indique.
 +
* minimizarVentana: Minimiza la ventana activa en el momento de ejecución.
 +
* abrirPrograma : Abre un programa instalado en el sistema. Se le debe indicar el nombre del binario.
 +
* cerrarPrograma : Cierra un programa abierto con el bloque abrirPrograma.
 +
* edge detector: El detector de flancos permite solucionar el problema de  “rebotes” en las señales leídas de los sensores.
 +
* setProgramName : Le asigna un nombre al programa. Sirve para poder usar parámetros con el mismo nombre en diferentes programas sin que haya interferencia.
 +
* defaultValue : Este bloque define un parámetro del programa actual, asignándole un valor por defecto en caso que no haya una parametrización previa para el usuario.
 +
* getValue: Obtiene el valor, previamente salvado, del parámetro del programa. En caso que no haya uno salvado, utiliza el valor por defecto.
 +
* saveValue: Asigna valor a un parámetro, y lo guarda en el sistema.
 +
 
 +
== Manuales de uso ==
 +
 
 +
*Manual de usuario: [[Archivo:ManualdeUsuarioXEvents.pdf]]
 +
*Manual de programador: [[Archivo:ManualdeProgramadorXEvents.pdf]]
 +
 
 +
== Proyectos realizados con Xevents ==
 +
 
 +
*[[Mejora de Barrido para Ubuntu]] <br>
 +
*[[Accesibilidad para Youtube]] <br>
 +
*[[Memorize - Sugar]] <br>
 +
*[[BianfaCuentos]] <br>
 +
*[[Buenas practicas para facilitar el uso]]
 +
 
 +
== Trabajo a futuro ==
 +
Actualmente se ha agregado a sugar[1] un barrido simple que fue previamente programado en éste plugin lo que permitirá tener mejor velocidad por ser un servicio de Sugar, y poder configurarlo del panel de control. Se planea trabajar en una extensión al panel de control que permita importar proyectos diseñados con TurtleBots.
 +
 
 +
Al hablar con X, usando Xlib, es posible usarlo tanto dentro como fuera de Sugar en cualquier sistema GNU/Linux con GUI.
  
Ahora el prototipo diseñado en turtlebots se integra a sugar como un servicio
 
  
[[Archivo:Instantánea5.png]]
+
Ahora el prototipo diseñado en turtlebots se integra a sugar como un servicio. <br><br/>
  
este se puede personalizar en el panel de control de forma sencilla.
+
[[Archivo:Instantánea5.png | 600px]]
  
[[Archivo:Instantánea6.png]]
+
Se puede personalizar en el panel de control de forma sencilla.<br><br/>
  
<youtube>http://youtu.be/uTcWpzID56U</youtube>
+
[[Archivo:Instantánea6.png | 600px]]
  
 
[1]: https://www.google-melange.com/gci/task/view/google/gci2014/5784136845361152
 
[1]: https://www.google-melange.com/gci/task/view/google/gci2014/5784136845361152

Revisión actual del 13:02 12 sep 2016

Descripción

Xevents es un plugin para TurtleBlocks que permite diseñar diferentes tipos de interfaces de accesibilidad de forma sencilla para un usuario sin demasiado conocimiento de programación, utilizando TurtleBlocks y diferentes tipos de sensores.

Sin embargo, en su intención Xevents es mucho más que ello, porque nace con la finalidad específica de transformar a turtlebots en un ambiente para la generación de ATTs (ayudas técnicas y tecnológicas) que permitan la utilización de aplicaciones estándar por parte de usuarios con alguna discapacidad.

Finalmente Xevents es un trabajo en curso, con muchos aspectos a mejorar, en el que es fundamental que haya gente llevándolo al límite y generando insumos para decidir en qué dirección avanzar.

Configuración del ambiente de trabajo

Requerimientos

Tener instalado TurtleBots versión 30 o posterior.

Instalación

Activación en TurtleBots

  • Iniciar la actividad TurtleBots.
  • Hacer click en Extensiones.
  • Hacer click en la opción xevents.
  • Verificar que las opciones butia y turtleblocksextra se encuentren marcadas.

Ejemplos de uso

Barrido básico

Ejemplo de barrido básico programado con TurtleBots y Xevents.
Barrido básico: Bloque que ejecuta el barrido vertical.
Barrido básico: Bloque que ejecuta el barrido horizontal.

Al ejecutar el programa y luego de presionar el botón se realiza un barrido en el eje de las X hasta que el botón del butiá es presionado nuevamente, luego se realiza un barrido en el eje de las Y.

Barrido ejemplo.png


En funcionamiento:


Paleta básica de Xevents

Xevents paleta.png


  • obtenerX: Obtiene la coordenada de la posición actual del mouse en el eje de las X.
  • obtenerY: Obtiene la coordenada de la posición actual del mouse en el eje de las Y.
  • obtenerAltoPantalla: Obtiene el alto de la pantalla en pixeles.
  • obtenerAnchoPantalla: Obtiene el ancho de la pantalla en pixeles.
  • fijarXY: Mueve el puntero del mouse a la posición indicada.
  • establecerOpacidadLínea: Establece la opacidad de la línea. Acepta un valor decimal entre 0 y 1, siendo 0 la opacidad mínima y 1 la opacidad total.
  • establecerAnchoyAltoLínea: Establece el ancho y alto de la línea de barrido.
  • mostrarLínea: Muestra la línea.
  • ocultarLínea: Oculta la línea.
  • establecerColor: Establece el color de la línea de barrido.
  • click: Simula un click del mouse con el botón encastrado en el bloque.
  • doble click: Simula un doble click del mouse con el botón encastrado en el bloque.
  • presionarBotón: Presiona el botón encastrado en el bloque.
  • soltarBotón: Suelta el botón encastrado en el bloque.
  • clickDerecho: Representa el botón derecho del mouse.
  • clickIzquierdo: Representa el botón izquierdo del mouse.
  • desplazarArriba: Simula el botón de scroll hacia arriba.
  • desplazarAbajo: Simula el botón de scroll hacia abajo.

Paleta extendida de Xevents

Xevents paleta e.png


  • simularTecla: Permite simular presionar una tecla del teclado físico.
  • combinar: Permite combinar dos teclas simulando presionar ambas a la vez. Primero se simula presionar la tecla encastrada en key1 (sin ser soltada) y luego se simula presionar la tecla encastrada en key2.
  • abrirNavegador: Abre una pestaña nueva del navegador por defecto con la url que se le indique.
  • minimizarVentana: Minimiza la ventana activa en el momento de ejecución.
  • abrirPrograma : Abre un programa instalado en el sistema. Se le debe indicar el nombre del binario.
  • cerrarPrograma : Cierra un programa abierto con el bloque abrirPrograma.
  • edge detector: El detector de flancos permite solucionar el problema de “rebotes” en las señales leídas de los sensores.
  • setProgramName : Le asigna un nombre al programa. Sirve para poder usar parámetros con el mismo nombre en diferentes programas sin que haya interferencia.
  • defaultValue : Este bloque define un parámetro del programa actual, asignándole un valor por defecto en caso que no haya una parametrización previa para el usuario.
  • getValue: Obtiene el valor, previamente salvado, del parámetro del programa. En caso que no haya uno salvado, utiliza el valor por defecto.
  • saveValue: Asigna valor a un parámetro, y lo guarda en el sistema.

Manuales de uso

Proyectos realizados con Xevents

Trabajo a futuro

Actualmente se ha agregado a sugar[1] un barrido simple que fue previamente programado en éste plugin lo que permitirá tener mejor velocidad por ser un servicio de Sugar, y poder configurarlo del panel de control. Se planea trabajar en una extensión al panel de control que permita importar proyectos diseñados con TurtleBots.

Al hablar con X, usando Xlib, es posible usarlo tanto dentro como fuera de Sugar en cualquier sistema GNU/Linux con GUI.


Ahora el prototipo diseñado en turtlebots se integra a sugar como un servicio.

Instantánea5.png

Se puede personalizar en el panel de control de forma sencilla.

Instantánea6.png

[1]: https://www.google-melange.com/gci/task/view/google/gci2014/5784136845361152