Autor
|
Tema: Calculo Intersección de rectangulos (Leído 8,893 veces)
|
guillehampp
Desconectado
Mensajes: 13
|
Hola, me han dado un problema, como calcular la intersección de dos rectángulos? La verdad que eh googleado y no me ha quedado del todo claro. Alguien sabe como?, muchas gracias!!
|
|
|
En línea
|
|
|
|
engel lex
|
intersección de rectangulos... primero imagen explicativa... en caso de estar paralelos al eje lo primero que hay que hallar son los 2 vertices más extremos horizontales y verticales horizontales: 1,3,7,8 verticales: 1,2,3,4 la interseccion en cada eje son los vertices que no pertenecen a los extremos así que horizotales: 2,4,5,6 verticales: 5,6,7,8 como estamos separandolos por eje entonces sabemos que (le daré nombre) X 2 = X 4 -> X IX 5 = X 6 -> X IIY 5 = Y 7 -> Y IY 6 = Y 8 -> Y IIlo que nos resulta en 2 X y 2 Y para crear 4 coordenadas (X I,Y I) -> punto A en el grafico (X I,Y II) -> punto B en el grafico (X II,Y I) -> punto 5 en el grafico (X II,Y II) -> punto 6 en el grafico y con esto ya tenemos todas las coordenadas de nuestro rectángulo intersección espero se entienda!
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
guillehampp
Desconectado
Mensajes: 13
|
Muy Claro!!, Muchas Gracias!
|
|
|
En línea
|
|
|
|
Gh057
Desconectado
Mensajes: 1.190
|
Hola! tan solo una pequeña observación, lo que consultas puedes localizarlo como "colisiones". La misma puede calcularse tanto para objetos irregulares, esferas, o en su forma más simple, rectángulos; detectándose mediante la diferencia de sus extremos. Saludos. (agrego) una pequeña referencia en el motor de búsqueda del foro, es referido a como "evitarlos" mas, puede serte útil para redondear el concepto... http://foro.elhacker.net/buscador2-t426904.0.html;msg1986728#msg1986728
|
|
« Última modificación: 9 Abril 2015, 06:10 am por Gh057 »
|
En línea
|
4 d0nd3 1r4 3l gh057? l4 r3d 3s 74n v4s74 3 1nf1n1t4...
|
|
|
guillehampp
Desconectado
Mensajes: 13
|
Claro, lo que pasa que no es propiamente una Colisión, yo tomo 4 valores por pantalla de 1 rectángulo (largo, alto, X , Y), y de otro rectángulo lo mismo.
Según las medidas que yo de y la ubicación, tendría que saber en que puntos se intersectan. No se si me explico bien
|
|
|
En línea
|
|
|
|
engel lex
|
eso se llama una colisión... una colisión es una intersección...
si explicas un poco más sobre tu tema, podríamos caer en detalle
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
Gh057
Desconectado
Mensajes: 1.190
|
me cito a mí mismo... detectándose mediante la diferencia de sus extremos.
mirando el gráfico propocionado por engel lex se puede entender perfectamente, detectas mediante diferencia que el punto 5 está dentro del rango del vector 12, tu coordenada de corte es sobre X la misma que 2 (colisión por derecha, puede suceder que el punto 5 no corte, pero si lo haga el punto 7 por izquierda...) misma lógica para el eje Y y obtienes los puntos que te permiten armar tu rectángulo por proyección... Por lo mismo indicaba lo de los tres puntos necesarios para formar el par de vectores. Espero haber sido más claro, sino por favor indícanos con más detalle el problema y podríamos ser más específicos... saludos!
|
|
« Última modificación: 9 Abril 2015, 16:03 pm por Gh057 »
|
En línea
|
4 d0nd3 1r4 3l gh057? l4 r3d 3s 74n v4s74 3 1nf1n1t4...
|
|
|
Soquita
Desconectado
Mensajes: 1
|
intersección de rectangulos... primero imagen explicativa... en caso de estar paralelos al eje lo primero que hay que hallar son los 2 vertices más extremos horizontales y verticales horizontales: 1,3,7,8 verticales: 1,2,3,4 la interseccion en cada eje son los vertices que no pertenecen a los extremos así que horizotales: 2,4,5,6 verticales: 5,6,7,8 como estamos separandolos por eje entonces sabemos que (le daré nombre) X 2 = X 4 -> X IX 5 = X 6 -> X IIY 5 = Y 7 -> Y IY 6 = Y 8 -> Y IIlo que nos resulta en 2 X y 2 Y para crear 4 coordenadas (X I,Y I) -> punto A en el grafico (X I,Y II) -> punto B en el grafico (X II,Y I) -> punto 5 en el grafico (X II,Y II) -> punto 6 en el grafico y con esto ya tenemos todas las coordenadas de nuestro rectángulo intersección espero se entienda! Entiendo todo lo que explicas y te lo agradezco porque se nota que esta persona también también estuvo en el mismo curso que estoy ahora. Mi problema es llevarlo al código, por favor me puedes indicar si me quedó bien escrito o esta perverso?... Gracias // ¡Declara tu estructura rectangular aquí! struct rectangle { int x, y, width, height; }; // ESCRIBE ESTA FUNCION rectangle canonicalize(rectangle r) { r.x=abs(r.x); r.y=abs(r.y); r.width=abs(r.width); r.height=abs(r.height); return r; } rectangle intersection(rectangle r1, rectangle r2) { // ESCRIBE ESTA FUNCION r1.x=(r1.x,r2.x); r1.y= (r1.y,r2.y); r1.width=(r1.width,r2.width); r1.height=(r1.height,r2.height); return r1; }
|
|
|
En línea
|
|
|
|
r32
|
Hola Soquita, probablemente no te has dado cuenta que el tema es de hace 4 años, con lo que no esperes una respuesta. Abre un nuevo tema y se te atenderá.
Gracias y un saludo.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Como dibujar rectangulos
« 1 2 »
Java
|
pereb
|
10
|
14,103
|
28 Abril 2008, 00:17 am
por -Ramc-
|
|
|
Reto - Intersección de 2 cubos
Ejercicios
|
[D4N93R]
|
4
|
7,869
|
19 Agosto 2010, 21:36 pm
por [D4N93R]
|
|
|
Calcular la intersección de dos segmentos
Programación C/C++
|
DickGumshoe
|
6
|
15,876
|
31 Octubre 2011, 23:11 pm
por DickGumshoe
|
|
|
¿Qué son estos misteriosos rectángulos en YouTube?
« 1 2 »
Foro Libre
|
Carloswaldo
|
11
|
4,694
|
10 Abril 2015, 17:31 pm
por Carloswaldo
|
|
|
Intersección de dos vectores
Programación C/C++
|
tokyo13
|
2
|
4,007
|
30 Junio 2019, 07:17 am
por CalgaryCorpus
|
|