Al dibujar un rectángulo, comprobar si hay otro dibujado en esas coordenadas



  • Hola. Tengo una tabla donde se definen varios rectángulos con su tamaño y sus coordenadas. Al ir dibujando los rectángulos tengo que evitar dibujarlo si se va a superponer con otro ya dibujado. Estoy bastante perdido sobre como afrontar esto, no se si tengo la posibilidad de saber si coincide con otro al ir a dibujarlo.

    Gracias.



  • Hola

    ¿No te vale la clase QRect ?

    Saludos



  • @jlazanza Si esos rectangulos han sido dibujados de manera dinamica yo primero creo el objeto (ejemplo: un boton) despues lo muevo con move y ahi incerto sus coordenadas.

    Para evitar que se crucen puedes usar loops teninedo en cuenta las coordenadas del rectangulo inicial.



  • Una posible solución es tener una lista de QRect o QRectF que contenga la información de los rectangulos, y asociar a cada uno un flag que por defecto sea falso, despues escoger el i-esimo rectángulo y comparar con los demas usando el método intersects y si es verdaderos setear el flag a verdadero. Al final solo debes dibujar los rectángulos que tengan el flag en falso.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.