Fundamentos de Geometría y Geometría Computacionaljctorres/MasterDesarrolloSoftware/...F....

Post on 21-Feb-2021

14 views 2 download

Transcript of Fundamentos de Geometría y Geometría Computacionaljctorres/MasterDesarrolloSoftware/...F....

J.C. Torres 1

F. Geometría y Geometría Computacional

Fundamentos de Geometría y Geometría Computacional

J.C. Torres 2

F. Geometría y Geometría Computacional

Geometría

1. Elementos geométricos en 2D. Rectas. Triángulos. Polígonos. Curvas.

2. Problemas geométricos 2D. Distancia. Intersección.

3. Elementos geométricos 3D. Rectas. Planos. Superficies. Poliedros.

4. Problemas geométricos 3D. Distancia. Inclusión. Intersección.

5. Geometría diferencial. Campos escalares y vectoriales. Gradiente. Isosuperficies.

J.C. Torres 3

F. Geometría y Geometría Computacional

Geometría

Bibliografía

P.J. Shneider; D.H. Eberly: Geometric Tools for Computer Graphics. Morgan Kaufmann. 2003.

J. Vince: Essential mathematics for computer graphics fast. Springer 2006.

A. Paoluzzi. Geometric programming for Computer-Aided Design. Wiley 2003.

J.C. Torres 4

F. Geometría y Geometría Computacional

3. Elementos geométricos en 3D. Rectas. (Shneider chap. 9, 325, Vince 170)

d

P

Qlado + lado -

d=d x ,d y ,d z

Recta que pasa por el punto P

P t =Pt · d

recta : t∈[−∞ ,∞]rayo :t ∈[0 ,∞]línea : t∈[t 0 , t 1]

n0 ·Q−P =0

n1 ·Q−P =0

Par

amét

ricas

Impl

ícita

s

n0

n1

Línea : d=P1−P0

J.C. Torres 5

F. Geometría y Geometría Computacional

3. Elementos geométricos en 3D. Planos (Shneider 326, Vince 173)

n

P

Q

n · Q−P =0

n · Q−n · P=0

n · Qd=0d=−n · P

semiespacio +

semiespacio -

J.C. Torres 6

F. Geometría y Geometría Computacional

3. Elementos geométricos en 2D. Planos. (Shneider 328, Vince 176)

P t , s=Pt · us ·vP t , s=P0t · P1−P 0s · P 2−P 0

n=u×v

a · xb · yc · zd=0

n=[a ,b ,c ]

Paramétricas

Impl

ícita

s

{P , d 0,d 1}

{P0, P1, P 2}{n ,d }

n

P

Q

semiespacio +

semiespacio -

v

u

J.C. Torres 7

F. Geometría y Geometría Computacional

3. Elementos geométricos en 3D. Triángulos. (Shneider 331, Vince 179)

{P0, P1, P 2}

P t0, t1, t 2=t 0P 0t1P1t 2P2

t 0t 1t 2=1 0≤t i≤1

P u , v =u1−v P 01−uv P11−u1−v P 2

u , v∈[0,1]

P0P1

P2

(1,0,0) (0,1,0)

(0,0,1)

n

n=P 2−P0×P1−P 0n×P2d =0

J.C. Torres 8

F. Geometría y Geometría Computacional

3. Elementos geométricos en 2D. Tetraedros

P t0, t 1, t 2, t 3=t 0P 0t1P1t 2P2t 3 P 3

t0t 1t 2t 3=10≤t i≤1

Baricéntricas

J.C. Torres 9

F. Geometría y Geometría Computacional

3. Elementos geométricos en 2D. Poliedros

Sólido= ∩ caras semiespacios

Convexos

{caras ,aristas , vértices}

J.C. Torres 10

F. Geometría y Geometría Computacional

Geometría

1. Elementos geométricos en 2D. Rectas. Triángulos. Polígonos. Curvas.

2. Problemas geométricos 2D. Distancia. Intersección.

3. Elementos geométricos 3D. Rectas. Planos. Superficies. Poliedros.

4. Problemas geométricos 3D. Distancia. Inclusión. Intersección.

5. Geometría diferencial. Campos escalares y vectoriales. Gradiente. Isosuperficies.

J.C. Torres 11

F. Geometría y Geometría Computacional

4. Problemas geométricos en 3D. Inclusión

Punto – Plano

n ·Qd=0n · Q−P =0

: n ·Pd =0

n

P

Q

J.C. Torres 12

F. Geometría y Geometría Computacional

4. Problemas geométricos en 3D. Inclusión Punto – Línea

d

P0

QP1

n0 · Q−P0=0n1 · Q−P 0=0Q∈[P0, P1]

n0

n1

n0 ·Qd 0=0n1 ·Qd1=0

n0 ·Q−P =0n1· Q−P =0

J.C. Torres 13

F. Geometría y Geometría Computacional

4. Problemas geométricos en 3D. Inclusión Punto – Triángulo

1. siQ noesta enel plano⇒ noestá enel triángulo2. proyectar sobre plano2D

resolver en 2D

n

Q

P1

P2

P0

J.C. Torres 14

F. Geometría y Geometría Computacional

4. Problemas geométricos en 3D. Distancia (Shneider chap.10, 365) Punto – línea (segmento)

d

P0

Q

Q'(t)

P1

distancia Q ,={ ∥P0−Q∥ si tQ≤0

∥t · dP0−Q∥ si tQ≥1∥P1−Q∥ si tQ≥1 }

d · Q−Q ' t =0d · Q−P 0−tQ

d =0d · Q−P0−tQ ·∥d∥2=0

tQ=d ·Q−P 0

∥d∥2

d=P1−P0

J.C. Torres 15

F. Geometría y Geometría Computacional

4. Problemas geométricos en 3D. Distancia (Shneider 374)

Punto – Plano

r=∥Q−Q '∥=∥Q−P∥cos =

=∥Q−P∥ n · Q−P ∥Q−P∥·∥n∥

=

=n · Q−P ∥n∥

r= n ·Qd∥n∥

n

P

Q rQ'α

P ·nd=0 ∧ ∥n∥=1r ·n=Q−Q '

r ·n ·n=n ·Q−n ·Q 'r=Q ·nd

J.C. Torres 16

F. Geometría y Geometría Computacional

4. Problemas geométricos en 3D. Distancia (Shneider 376)

Punto – Triángulo

Q '=Q−r ·nQ '=Q−n Q−P ·n

Q '=u 1−vP 01−uv P11−u1−v P2

si u , v∈[0,1]⇒distancia=rsi no⇒ distancia²=r²distancia Q' ,arista más próxima ²

n

Q rQ'

P1

P2

P0

J.C. Torres 17

F. Geometría y Geometría Computacional

4. Problemas geométricos en 3D. Distancia (Shneider 376)

Q '=Q−r ·nQ '=Q−n Q−P ·n

Q '=u 1−vP 01−uv P11−u1−v P2

si u , v∈[0,1]⇒distancia=rsi no⇒ distancia²=r²distancia Q' ,arista más próxima ²

n

Qr Q'

P1

P2

P0

Punto – Triángulo

J.C. Torres 18

F. Geometría y Geometría Computacional

4. Problemas geométricos en 3D. Intersección (Shneider 483)

Recta – Plano

n ·Qd=0Q=P 0t P 1−P 0

n ·P 0t P 1−P 0d=0

t=−d−n · P 0

n ·P 1−P 0

nPd

P0

n0

n1Q

P1

J.C. Torres 19

F. Geometría y Geometría Computacional

4. Problemas geométricos en 3D. Intersección (Shneider 530)

Plano – Planod= n0× n1=0

n0 ·Qd 0=0n1 ·Qd 1=0

Q=a · n0b · n1

a=d 1 · n0 · n1−d 0

n0 · n1−1

b=d 0 · n0 · n1−d 1

n0 · n1−1con∥n0∥=∥n1∥=1

n0

P0

d

n1

P1

Q

J.C. Torres 20

F. Geometría y Geometría Computacional

nP1

P2

P0

4. Problemas geométricos en 3D. Intersección (Shneider 485)

Triángulo – línea

d

Q0

Q

Q1

signo n ·Q0d ≠signo n ·Q1d

ó

1. Los vértices del segmento están a distintos lados del plano. Hay intersección con el plano.

signo volumen [P0, P1, P2,Q1]≠signo volumen [P0, P1, P2,Q2]

J.C. Torres 21

F. Geometría y Geometría Computacional

nP1

P2

P0

4. Problemas geométricos en 3D. Intersección Triángulo – línea

d

Q0

Q

Q1

signo volumen [ P0, P1, Q1,Q2]=signo volumen [ P1, P2,Q1,Q2]=signo volumen [ P2, P0,Q1,Q2]

2. y, Q es interior al triángulo. Las aristas de este están al mismo lado de la línea.

J.C. Torres 22

F. Geometría y Geometría Computacional

Geometría

1. Elementos geométricos en 2D. Rectas. Triángulos. Polígonos. Curvas.

2. Problemas geométricos 2D. Distancia. Intersección.

3. Elementos geométricos 3D. Rectas. Planos. Superficies. Poliedros.

4. Problemas geométricos 3D. Distancia. Inclusión. Intersección.

5. Geometría diferencial. Curvas. Superficies. Campos escalares y vectoriales. Gradiente. Isosuperficies.

J.C. Torres 23

F. Geometría y Geometría Computacional

Bibliografía

T. M. Apostol: Calculus Reverté , 1992

A. Paoluzzi. Geometric programming for Computer-Aided Design. Wiley 2003.

Boehm, W. and Prautzsch, H. 1994 Geometric Concepts for Geometric Design. A. K. Peters, Ltd.

M. Desbrun, P.. Schröder: Discrete Differential Geometry: An Applied Introduction. SigGraph. Full-Day tutorial, 31 July 2005.http://ddg.cs.columbia.edu/SIGGRAPH05/NOTES-small.pdf

J.C. Torres 24

F. Geometría y Geometría Computacional

5. Geometría diferencial [Boehm 351]

Utiliza el cálculo diferencial e integral para resolver problemas geométricos.

Se desarrollo para estudiar propiedades de curvas y superficies.

Una herramienta esencial en geometría diferencial es el uso de sistemas de coordenadas locales, que cambia de forma continua e infinitesimal a lo largo del elemento geométrico.

J.C. Torres 25

F. Geometría y Geometría Computacional

1. Curvas [Boehm 353]

x=x t =[ x t y t z t ] , t ∈[a ,b ]⊂ℝ

x t =[ x t y t z t ]≠0

donde x(t), y(t), z(t) son diferenciables. Consideramos solo parametrizaciones regulares.

x(t)

x'(t)

x'(t) es la pendiente a la curva |x'(t)| dt diferencial de arco

s=s t0=∫a

t0∣x t ∣d t

x '= d xd s

J.C. Torres 26

F. Geometría y Geometría Computacional

Marcos de Frenet [Boehm 354]

Podemos definir un sistema de coordenadas local en cada punto x de la curva, a partir de las tres primeras derivadas, siempre que sean linealmente independientes

F= (t , m , b , x)

con

t

t

m

b

x

t= x∣x∣

b= x× x∣x× x∣

m=b×t

t: vector tangentem: vector normal principalb: vector binormal

J.C. Torres 27

F. Geometría y Geometría Computacional

Curvatura y torsión [Boehm 356]

Curvatura

k=∣x ' '∣=∣d² xd s²

∣=∣x× x∣∣x∣3

Torsión

= 1k²

det [ x ' x ' ' x ' ' ' ]= det [ x x x ]∣x× x∣2

J.C. Torres 28

F. Geometría y Geometría Computacional

Interpretación geométrica [Desbrun]

Curvatura. k es la inversa del radio de la circunferencia tangente a la curva

1k

J.C. Torres 29

F. Geometría y Geometría Computacional

Interpretación geométrica [Desbrun]

Representación de Gaus: El vector normal se puede representar sobre un circulo (o una esfera)

J.C. Torres 30

F. Geometría y Geometría Computacional

Interpretación geométrica [Desbrun]

Número de giros, (índice de rotación) (K).+/- 1: curva simple

J.C. Torres 31

F. Geometría y Geometría Computacional

Interpretación geométrica [Desbrun]

Teorema del número de giros. La integral de la curvatura (con signo) de cualquier curva cerrada depende solo del número de giros.

J.C. Torres 32

F. Geometría y Geometría Computacional

Interpretación geométrica [Desbrun]

Podemos aplicar los mismos conceptos a elementos discretizados.

J.C. Torres 33

F. Geometría y Geometría Computacional

vv

u u

2. Superficies

J.C. Torres 34

F. Geometría y Geometría Computacional

Superficies

Vectores tangentes en superficies paramétricas

∂ S∂u

S u , v

∂ S∂ v

P

J.C. Torres 35

F. Geometría y Geometría Computacional

Superficies

Vector normal en superficies paramétricas

n=

∂ S∂ v

× ∂ S∂ v

∣∂ S∂ v

× ∂ S∂ v

∂ S∂u

S u , v

∂ S∂ v

P n

J.C. Torres 36

F. Geometría y Geometría Computacional

div =∇ · =∂ x

∂ x

∂ y

∂ y

∂ z

∂ z

K =∇ ·n

Superficies

Curvatura

∂ S∂u

S u , v

∂ S∂ v

P n

J.C. Torres 37

F. Geometría y Geometría Computacional

3. Campo escalar. (Apostol)

: Eℝ

J.C. Torres 38

F. Geometría y Geometría Computacional

Campo escalar: Isosuperficies y líneas de flujo

P =x² y²−1

s=k≡x² y²−1k =0

s=k

: Eℝ

J.C. Torres 39

F. Geometría y Geometría Computacional

Campo escalar: gradiente

∇ =∂∂ x

,∂∂ y

,∂∂ z

∇ n=∇

∣∇ ∣

P =x² y²−1

∇ = x2 ,2 y

n= x , y x² y²

J.C. Torres 40

F. Geometría y Geometría Computacional

Campo escalar: curvatura

div =∇ · =∂ x

∂ x

∂ y

∂ y

∂ z

∂ z

K =∇ ·n=∇ ·∇

∣∇ ∣

P =x² y²−1

= 1

x² y²

∇ · ∇ =∇ ²= ∂ ²∂ X²

∂ ²∂ y²

∂ ²∂ z²

J.C. Torres 41

F. Geometría y Geometría Computacional

Campo vectorialF :Eℝ3

J.C. Torres 42

F. Geometría y Geometría Computacional

Campo vectorial

El gradiente de un campo escalar es un campo vectorial

∇ =∂∂ x

,∂∂ y

,∂∂ z

P =x² y²−1

∇ =2x.2y

J.C. Torres 43

F. Geometría y Geometría Computacional

Campo vectorial

x =∫a

xF ds

∇ =∂∂ x

,∂∂ y

,∂∂ z

=F x ,F y ,F z

Si F es un campo vectorial continuo en un espacio conexo, S, y su integral de línea es independiente del camino, podemos definir un campo escalar a partir de cualquier punto fijo de S..

J.C. Torres 44

F. Geometría y Geometría Computacional

Campo vectorial

Si F es un campo vectorial continuo en un espacio conexo, S, y su integral de línea es independiente del camino, podemos definir un campo escalar a partir de cualquier punto fijo de S..

rotacional F=∇×F=0 x =∫a

xF ds

∇ =∂∂ x

,∂∂ y

,∂∂ z

=F x ,F y ,F z

J.C. Torres 45

F. Geometría y Geometría Computacional

Cálculo en sistemas discretos

∂∂ x

≈i1−i−1

2 x

∂ ²∂ x²

≈i1−2ii−1

i i+1i -1i -2

j -1

j

j +1

j +2