Articulo de referencia

Prueba de impacto

En la programación de gráficos por computadora, la prueba de impacto ( detección de impacto , selección o correlación de selección [1] ) es el proceso de determinar si un cursor...

En la programación de gráficos por computadora, la prueba de impacto ( detección de impacto , selección o correlación de selección [1] ) es el proceso de determinar si un cursor controlado por el usuario (como un cursor de mouse o un punto táctil en una interfaz de pantalla táctil) intersecta un objeto gráfico dado (como una forma, línea o curva) dibujado en la pantalla. La prueba de impacto se puede realizar en el movimiento o la activación de un mouse u otro dispositivo señalador.

Los entornos GUI utilizan pruebas de aciertos para responder a las acciones del usuario, como seleccionar un elemento del menú o un objetivo en un juego en función de su ubicación visual. En lenguajes de programación web como HTML , SVG y CSS , esto se asocia con el concepto de eventos de puntero (por ejemplo, el movimiento del cursor iniciado por el usuario o la selección de objetos).

La detección de colisiones es un concepto relacionado para detectar intersecciones de dos o más objetos gráficos diferentes, en lugar de la intersección de un cursor con uno o más objetos gráficos.

Algoritmo

Existen muchos algoritmos diferentes que se pueden utilizar para realizar pruebas de aciertos, con diferentes resultados de rendimiento o precisión. Un algoritmo de prueba de aciertos común para cuadros delimitadores alineados con ejes. Una idea clave es que el cuadro que se está probando debe estar completamente arriba, completamente abajo, completamente a la derecha o a la izquierda del cuadro actual. Si esto no es posible, están en colisión. La lógica de ejemplo se presenta en el pseudocódigo a continuación:

función HitTest ( Rectángulo r1 , Rectángulo r2 ) devuelve un valor booleano { devuelve no (( r1 . X + r1 . Ancho < r2 . X ) o ( r1 . X > r2 . X + r2 . Ancho ) o ( r1 . Y + r1 . Alto < r2 . Y ) o ( r1 . Y > r2 . Y + r2 . Alto )); }      

                           

En Python :

def  hit_test ( r1 :  Rectángulo ,  r2 :  Rectángulo )  - >  bool : 
" " " Devuelve verdadero si acierta , de lo contrario devuelve falso . " " " return ( no ( r1.x + r1.width < r2.x ) o ( r1.x > r2.x + r2.width ) o ( r1.y + r1.High < r2.y ) o ( r1.y > r2.y + r2.high ) )    
     
             
             
             
             
    

Véase también

Referencias

  1. ^ Gráficos por computadora: principios y práctica, segunda edición en C, Foley et al, Addison-Wesley , 1997.
  • MSDN: Pruebas de impacto en la capa visual
  • MSDN: Pruebas de impacto de líneas y curvas
Obtenido de "https://es.wikipedia.org/w/index.php?title=Prueba de aciertos&oldid=1245883175"