55
Particiones binarias del espacio (BSP)

Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

(BSP)

Page 2: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Contenido

1. Introduccion.

2. Quadtrees.

3. Arboles BSP.

4. Aplicacion al algoritmo del pintor.

5. Construccion de un arbol BSP.

6. Conclusiones.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 3: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Contenido

1. Introduccion.

2. Quadtrees.

3. Arboles BSP.

4. Aplicacion al algoritmo del pintor.

5. Construccion de un arbol BSP.

6. Conclusiones.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 4: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Para representar en pantalla parte del “mundo virtual”

almacenado en memoria hay que determinar para cada pıxel

de la pantalla el objeto que es visible en ese pıxel:

• Eliminacion de superficies ocultas.

Otras aplicaciones:

• Localizacion.

• Deteccion de colisiones.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 5: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Algoritmo z-buffer

Algoritmo del pintor

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 6: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Particiones del espacio

* Subdividen el espacio creando un arbol, de forma que en

cada region la geometrıa sea “simple”.

* Tecnicas de subdivision

• Basadas en el espacio: quadtrees, octrees.

• Basadas en los objetos: BSP.

Los dos tipos tienen ventajas e inconvenientes, y el

rendimiento depende muchas veces de la aplicacion y el tipo

de datos que aparezcan.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 7: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Contenido

1. Introduccion.

2. Quadtrees.

3. Arboles BSP.

4. Aplicacion al algoritmo del pintor.

5. Construccion de un arbol BSP.

6. Conclusiones.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 8: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Quadtrees

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 9: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Quadtrees

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 10: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Quadtrees

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 11: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Quadtrees

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 12: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Quadtrees

Q0

Q1 Q2 Q3 Q4Q1

Q5 Q6 Q7 Q8 Q9 Q10 Q11 Q12

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 13: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Quadtrees

• Analogo 3-dimensional: octrees.

Aplicaciones:

• Localizacion.

• Deteccion de colisiones.

• Interseccion de regiones.

? Ventaja: facilidad de construccion y manejo.

? Inconveniente: no se adapta a la geometrıa.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 14: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Contenido

1. Introduccion.

2. Quadtrees.

3. Arboles BSP.

4. Aplicacion al algoritmo del pintor.

5. Construccion de un arbol BSP.

6. Conclusiones.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 15: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Definicion del arbol BSP

La BSP se obtiene dividiendo recursivamente con una lınea.

Las lıneas divisorias cortan tambien los objetos en

fragmentos. La division continua hasta que hay solo un

fragmento en el interior de cada region.Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 16: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Definicion del arbol BSP

Arbol que corresponde a la BSP. Cada hoja corresponde a

una cara de la subdivision final, y el fragmento que hay en

esa cara se almacena en la hoja. Cada nodo interno

corresponde a una lınea divisoria, almacenada en el nodo.Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 17: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Definicion del arbol BSP8<:

d = 2, h recta ax+by+c=0; h+, h− semiplanos;

d = 3, h plano ax+by+cz+d=0; h+, h− semiespacios.

S ≡ Conjunto de objetos

T (S) ≡ Arbol binario correspondiente

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 18: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Definicion recursiva del arbol binario T (S):

- Si card(S) ≤ 1:

• T (S) es una hoja, v;

• En la hoja se almacena el objeto (si existe), S(v).

- Si card(S) > 1:

• La raız ν de T (S) almacena:

– una recta (plano) hν,

– conjunto S(ν) de objetos contenidos en hν.

• Hijo izquierdo de ν: raız de un arbol T (S−), con

S− = {h−ν ∩ S : s ∈ S}.

• Hijo derecho de ν: raız de un arbol T (S+), con

S+ = {h+ν ∩ S : s ∈ S}.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 19: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿Hojas del arbol T (S)?

Regiones (convexas) con un solo objeto.

¿Tamano del arbol T (S)?

Se define como el tamano total de los conjuntos S(ν), ν ∈ T .

Observacion: Si no utilizamos divisiones “inutiles”, el

numero de nodos es lineal en el tamano del arbol.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 20: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Contenido

1. Introduccion.

2. Quadtrees.

3. Arboles BSP.

4. Aplicacion al algoritmo del pintor.

5. Construccion de un arbol BSP.

6. Conclusiones.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 21: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Si el observador esta en h+ν , ningun elemento en h−ν tapa a

ninguno en h+ν .

p: punto de vista.

p

h+ν

h−ν

h

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 22: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Algoritmo PINTOR (T , p)

1. Sea ν la raız de T.

2. if ν es una hoja

3. then pintar objetos en S(ν)

4. else if p ∈ h+ν

5. then PINTOR (T−, p)

6. pintar objetos en S(ν)

7. PINTOR (T+, p)

8. else if p ∈ h−ν9. then PINTOR (T+, p)

10. pintar objetos en S(ν)

11. PINTOR (T−, p)

12. else % p ∈ hν%

13. PINTOR (T+, p)

14. PINTOR (T−, p)

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 23: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿De que depende la eficiencia del algoritmo?

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 24: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿De que depende la eficiencia del algoritmo?

Esencialmente, del tamano del BSP.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 25: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿De que depende la eficiencia del algoritmo?

Esencialmente, del tamano del BSP.

Dado un conjunto de objetos en R2 o R3,

¿admiten un BSP de tamano “pequeno”?

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 26: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Contenido

1. Introduccion.

2. Quadtrees.

3. Arboles BSP.

4. Aplicacion al algoritmo del pintor.

5. Construccion de un arbol BSP.

6. Conclusiones.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 27: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

• Sea S ⊂ R2 un conjunto de segmentos rectilıneos que no

se cortan.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 28: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

• Sea S ⊂ R2 un conjunto de segmentos rectilıneos que no

se cortan.

• Consideraremos auto-particiones, i.e., solo consideramos

lıneas que contienen uno de los segmentos como lıneas

divisoras.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 29: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

• Sea S ⊂ R2 un conjunto de segmentos rectilıneos que no

se cortan.

• Consideraremos auto-particiones, i.e., solo consideramos

lıneas que contienen uno de los segmentos como lıneas

divisoras.

• Sea l(s) la lınea que contiene un segmento s.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 30: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

• Sea S ⊂ R2 un conjunto de segmentos rectilıneos que no

se cortan.

• Consideraremos auto-particiones, i.e., solo consideramos

lıneas que contienen uno de los segmentos como lıneas

divisoras.

• Sea l(s) la lınea que contiene un segmento s.

• Algoritmo recursivo para construir un BSP.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 31: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Algoritmo 2DBSP(S)

Input. Conjunto S = {s1, s2, . . . , sn} de segmentos.

Output. Un arbol BSP de S.

1. if card(S ≤ 1)

2. then crear arbol T con una sola hoja y almacenar S

en dicha hoja.

3. return T

4. else % usar l(s1) como lınea divisoria %

5. S+ = {s ∩ l(s1)+ : s ∈ S}; T+ := 2DBSP (S+)

6. S− = {s ∩ l(s1)− : s ∈ S}; T− := 2DBSP (S−)

7. Crear BSP con raız ν, subarbol izqdo T−,

subarbol dcho T+, S(v) = {s ∈ S : s ⊂ l(s1)}.

8. return T.Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 32: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿Cual es el tamano del BSP?

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 33: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿Cual es el tamano del BSP?

puede llegar a ser cuadratico.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 34: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿Cual es el tamano del BSP?

puede llegar a ser cuadratico.

¿Podemos escoger s1 “con mas cuidado’‘’?

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 35: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿Cual es el tamano del BSP?

puede llegar a ser cuadratico.

¿Podemos escoger s1 “con mas cuidado’‘’?

Quizas sı, pero resulta complicado

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 36: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿Cual es el tamano del BSP?

puede llegar a ser cuadratico.

¿Podemos escoger s1 “con mas cuidado’‘’?

Quizas sı, pero resulta complicado

¿Que ocurre si lo escogemos aleatoriamente?

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 37: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Proposicion.- Sea S′ una permutacion aleatoria de los

segmentos de S. El numero esperado de fragmentos

generados por 2DBSP(S′) es O(n log n).

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 38: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Proposicion.- Sea S′ una permutacion aleatoria de los

segmentos de S. El numero esperado de fragmentos

generados por 2DBSP(S′) es O(n log n).

Dem.

si segmento fijo.

Si cortamos por l(si), ¿a cuantos segmentos cortamos?

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 39: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Proposicion.- Sea S′ una permutacion aleatoria de los

segmentos de S. El numero esperado de fragmentos

generados por 2DBSP(S′) es O(n log n).

Dem.

si segmento fijo.

Si cortamos por l(si), ¿a cuantos segmentos cortamos?

si

d = 0

d = 1

d = 2

d = 2

d = 1d = 0

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 40: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Sean

• N = # segmentos que cortan l(si) entre si y sj

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 41: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Sean

• N = # segmentos que cortan l(si) entre si y sj

• distsi(sj) =

8<:

N, si l(si) ∩ sj 6= ∅;

∞, en otro caso.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 42: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Sean

• N = # segmentos que cortan l(si) entre si y sj

• distsi(sj) =

8<:

N, si l(si) ∩ sj 6= ∅;

∞, en otro caso.

• sj1 , sj2 , . . . , sj2 , los segmentos entre si y sj.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 43: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Sean

• N = # segmentos que cortan l(si) entre si y sj

• distsi(sj) =

8<:

N, si l(si) ∩ sj 6= ∅;

∞, en otro caso.

• sj1 , sj2 , . . . , sj2 , los segmentos entre si y sj.

Entonces:

Pr[l(si) corte sj] =1

2 + distsi(sj).

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 44: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Sean

• N = # segmentos que cortan l(si) entre si y sj

• distsi(sj) =

8<:

N, si l(si) ∩ sj 6= ∅;

∞, en otro caso.

• sj1 , sj2 , . . . , sj2 , los segmentos entre si y sj.

Entonces:

Pr[l(si) corte sj] =1

2 + distsi(sj).

(i debe ser el menor ındice del conjunto {i, j, j1, . . . , jk})

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 45: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Podemos acotar el numero esperado de cortes generados por

si:

E[# cortes generados por si] ≤Xj 6=i

1

2 + distsi(sj)

≤ 2

n−2Xk=0

1

k + 2≤ 2 ln n

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 46: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Podemos acotar el numero esperado de cortes generados por

si:

E[# cortes generados por si] ≤Xj 6=i

1

2 + distsi(sj)

≤ 2

n−2Xk=0

1

k + 2≤ 2 ln n

Por tanto,

E[# cortes generados por todos los segmentos ] ≤ 2n ln n

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 47: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Podemos acotar el numero esperado de cortes generados por

si:

E[# cortes generados por si] ≤Xj 6=i

1

2 + distsi(sj)

≤ 2

n−2Xk=0

1

k + 2≤ 2 ln n

Por tanto,

E[# cortes generados por todos los segmentos ] ≤ 2n ln n

Observacion: Se puede demostrar que al menos la mitad de

las permutaciones conducen a una BSP de tamano

≤ n + 4n ln n

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 48: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿Cual es la complejidad del algoritmo?

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 49: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿Cual es la complejidad del algoritmo?

• n ln n llamadas recursivas,

• O(n) para cada llamada,

En total, O(n2 ln n)

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 50: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Problema abierto

¿Es cierto que para un conjunto S de segmentos en el plano

existe siempre un BSP de tamano O(n), o existen conjuntos

que requieren O(n ln n)?

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 51: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Problema abierto

¿Es cierto que para un conjunto S de segmentos en el plano

existe siempre un BSP de tamano O(n), o existen conjuntos

que requieren O(n ln n)?

• En R3, todo analogo pero mas complicado.

• En particular, S: conjunto de n triangulos.

• El tamano esperado del BSP es O(n2).

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 52: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Contenido

1. Introduccion.

2. Quadtrees.

3. Arboles BSP.

4. Aplicacion al algoritmo del pintor.

5. Construccion de un arbol BSP.

6. Conclusiones.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 53: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Particiones binarias del espacio

* Herramientas originalmente desarrolladas para eliminar

partes ocultas.

* Util tambien para

• clipping-culling

• deteccion de colisiones

* Parte esencial de juegos como Doom o Quake.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 54: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

Otras aplicaciones de las BSP

Para representar en pantalla parte del ”mundo virtual” en

memoria hay que:

• Determinar que parte del modelo queda dentro del

”volumen de vision” - clipping, culling.

• Representar los objetos del volumen de vision en

pantalla:

– Eliminacion de partes ocultas

∗ z-buffer

∗ Algoritmo del pintor

– Rasterizacion (nivel de pixel)

• Si el entorno es dinamico, detectar colisiones.

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)

Page 55: Particiones binarias del espacio (BSP) · Particiones binarias del espacio Particiones del espacio * Subdividen el espacio creando un ´arbol, de forma que en cada regi´on la geometr´ıa

Particiones binarias del espacio

¿Preguntas?

Pedro Ramos – Raquel Viana (Dpto. Matematicas, UAH)