Download - >> Modelado – 1
Modelado-1 A. García-Alonso 1
>> Modelado – 1 <<Introducción, Geometría básica
http://www.sc.ehu.es/ccwgamoa/clases
Modelado-1 A. García-Alonso 2
Introducción
• Foley Cap. 11-12-20, Hearn Cap. 10
• Geometría básica
• Modelado geométrico– Modelos o representaciones de sólidos (F 12, H 10.1,14-17)
– Modelado de superficies (F 11, H 10.2-10.13)
– Blobby objects (F 20.8.4, H 10.5)
• Procedimientos (F 20.2)
– Fractales : modelos geométricos (F 20.3, H 10.18)
– Gramáticas (F 20.4, H 10.19)
– Sistemas de partículas (F 20.5, H 10.20)
– Physically based modeling (F 20.7, H 10.21)
Modelado-1 A. García-Alonso 3
Bibliografía adicional
• C. MacHover (Editor), “The CAD/CAM Handbook”, Ed. McGraw Hill, 1995
• C. McMahon, J. Browne, “CAD CAM form Principles to Practice”, Addison-Wesley, 1993
Modelado-1 A. García-Alonso 4
Geometría básica
• El vector
• El punto
• La recta
• El plano
• Cara (plana), polígono o faceta
• Volúmenes Contenedores
Modelado-1 A. García-Alonso 5
El vector
• Unidades– En variables
– En constantes y “#define”
– En interfaz de usuario
• Ángulo de dos vectores– Sin orientar
– Orientado
Modelado-1 A. García-Alonso 6
Angulo entre dos vectores
Angulo entre dos vectores (sin orientar) : 0 ≤ α ≤ π
|a|·|b|·cos α = a.b
α = acos(a.b / |a|·|b|)
Angulo con eje de un sistema de referencia (orientado) : -π ≤ α ≤ π
α = acos( bx / |b| )
if( by<0) α = -α
a
b
α
x
y
z (saliente)
b
b’
α
α’
Modelado-1 A. García-Alonso 7
...Angulo que forma el vector b con el vector a (orientado) : la orientación la define un eje perpendicular al plano definido por los dos vectores
eje
b
aα
eje
b
a
α
eje
b
a
α
ejeb
aα
Modelado-1 A. García-Alonso 8
La recta
• Modos de definir una recta– Ecuación implícita
– Dos puntos
– Punto y vector
– Ecuación implícita (2D)
– Estructuras de datos
• Distancia punto/recta
• Distancia-2D punto/recta
• Distancia-2D aproximada punto/recta
• Punto en recta : tolerancia
• Señalar segmento (2D) : tolerancia
Modelado-1 A. García-Alonso 9
Ecuación implícita de la recta (2D)
• Ecuación implícita de la recta (r)A · x + B · y + C = 0
• Vectores paralelos a la recta (pr) :
λ · ( -B, A ), λ / λ ℝ 0
• Vectores perpendiculares a la recta (nr) :
λ · ( A, B )
Los coeficientes de la recta definida por M, N :A = Ny – My ; B = Mx – Nx ; C = - [ (Ny – My) Mx + (Mx – Nx ) My ]
N
M
nr
pr
Modelado-1 A. García-Alonso 10
Distancia punto/recta
• Sea un punto cualquiera P, y una recta definida por dos puntos M y N
– La (distancia)2 de P a la recta se obtiene despejando δ2
– El cálculo de δ2 requiere: 10 (*), 13 (+), 1 (/)• Los módulos se elevan al cuadrado no se calculan
– Un dividendo se anula si M y N coinciden, pero en ese caso no definen un segmento.
MP
MN
MPMN 22
2
2
N
P
θM δ
P’MPPPMP
222
''
Modelado-1 A. García-Alonso 11
Distancia-2D punto/recta
• El cálculo de δ2 requiere: 7 (*), 8 (+), 1 (/)δ = MP · ( nr / | nr | )
• Sustituyendo y simplificando quedaδ2 = [ (Px - Mx) · A + (Py - My) · B ]2 / (A2 + B2 )
N
P
M δ
nr
Modelado-1 A. García-Alonso 12
Distancia-2D punto/recta
Ecuación implícita de la recta (r) : Ax + By + C = 0
Vectores paralelos a la recta (pr) : λ · ( -B, A ), λ ℝ / λ 0
Vectores perpendiculares a la recta (nr) : λ · ( A, B )
El cálculo de δ2 requiere: 7 (*), 8 (+), 1 (/)δ = MP · ( nr / | nr | )
Sustituyendo y simplificando quedaδ2 = [ (Px-Mx) A + (Py-My) B) ] 2 / (A2 + B2 )
N
P
M δ
nr
pr
Modelado-1 A. García-Alonso 13
Distancia-2D aproximada punto/recta
• Podemos usar una “distancia” evaluada en vertical
– El cálculo de δvert requiere: 3 (*), 4 (+), 1 (/), 1 (abs)
– Restringimos el cálculo a rectas de pendiente [-1,+1]
– Para rectas con pendiente de valor absoluto mayor que 1, se intercambian los ejes x e y
• Evita una degeneración del área de captura• Evita el problema de rectas con pendiente que tiende a infinito
Despejar la pendiente (m) y el pie (b) :
My = m·Mx-b
Ny = m·Nx-b
N
P
M
δv = abs( Py – (m·Px-b) )
x
y
Py
m·Px-b
b
m = tg θ
Modelado-1 A. García-Alonso 14
Señalar segmento (2D) : tolerancia
• El sistema informa de qué píxel se ha señalado
• Comprobamos si ese punto es interior a un área para:
– Evitar problemas de precisión
– Mejorar ergonomía: facilitar al operador la acción de señalar
• El punto no es próximo al segmento si :
– Es exterior al contenedor rectangular “recrecido en ξ”
– Su distancia a la recta soporte es superior a ξ
• Numerosos segmentos : técnicas de ordenación espacial
Área de captura “ideal” Área de captura que implementamos
ξ
ξ
Modelado-1 A. García-Alonso 15
El plano
• Modos de definir un plano– Ecuación implícita
• Interpretación de “las ecuaciones” de un plano : vector normal• Semi-espacios definidos por un plano• Distancia plano a origen
– Tres puntos
– Punto y vector normal, punto y dos vectores
– Elementos geométricos
• Distancia punto/plano
• Punto en el plano : tolerancia
• Señalar plano
Modelado-1 A. García-Alonso 16
Ecuación implícita del plano
• Un plano está formado por todos los puntos P que satisfacen la ecuación: A·Px + B·Py + C·Pz + D = 0
• Existen infinitas descripciones del plano λ·(A, B, C, D)
• λ·(A, B, C) representa las componentes de todos los vectores normales al plano. De ellos, sólo dos son unitarios
• Si el plano está asociado a una cara de un sólido, se suele usar la normal unitaria hacia el exterior
• Conocido un vector normal (nx , ny , nz) y un Punto P del plano:
A = nx, B = ny, C = nz, D = - (nx · Px+ny · Py+ nz · Pz)
Normal unitaria hacia el exterior Normales al plano
Modelado-1 A. García-Alonso 17
Semiespacios definidos por un plano
semiespacio - En A (corte eje z con el plano),
x = y = 0 nz · z + D = 0
y como, nz > 0 y z < 0 D>0
O está en el semiespacio +
nz > 0
semiespacio +
A
y
zO
semiespacio -
nz > 0semiespacio +
B
y
zO
En B, x = y = 0 nz · z + D = 0
y, nz > 0 y z > 0 D<0
O está en el semiespacio -
Sea P(x,y,z) un punto cualquiera del espacio
Sea el plano (nx, ny, nz, D)
La función F(P) = nx · Px + ny · Py + nz · Pz + D
Divide el espacio en dos semiespacios,
En uno se verifica que F(P)>0 y en el otro F(P)<0
Modelado-1 A. García-Alonso 18
Distancia punto/plano
• Sea M un punto cualquiera del plano, y n un vector normal al plano, unitario.
• Se cumplirá :δ = abs( MP · n)
n
P
M
δ
Modelado-1 A. García-Alonso 19
Caras (planas), polígonos o facetas
• Modos de definir una cara– xxx
• Punto interior a una cara
• Clasificación
• Forma adecuada
• Cálculo del vector normal
Modelado-1 A. García-Alonso 20
Clasificación
• Cóncavas y convexas
• Múltiplemente conexos
• Cruces de aristas
Modelado-1 A. García-Alonso 21
Forma adecuada
• Problemas de precisión
• Rapidez de cálculo
• Evitar polígonos– Cóncavos
– Ángulos muy agudos o próximos al recto (180º)
– Con aristas tangentes o secantes
– Con desproporción en las magnitudes de los lados
• Triángulos y cuadriláteros fomentar – Formas equiláteras
– Fomentar formas isósceles o rectangulares
Modelado-1 A. García-Alonso 22
Cálculo del vector normal
• Método simple– Usar tres primeros vértices
– Problemas• Polígonos cóncavos• Vértices no coplanarios• Vértices alineados
• Uso método ponderado (Foley 11.1.3)nx = 0.5 · (zi + zi1 ) · (yi1 - yi )
ny = 0.5 · (xi + xi1 ) · (zi1 - zi )
nz = 0.5 · (yi + yi1 ) · (xi1 - xi )( i: 1 n )
Modelado-1 A. García-Alonso 23
Volúmenes contenedores
• Geometría– Caja contenedora
• El menor prisma rectangular de caras paralelas a los planos coordenados que contiene al cuerpo dado
• Para poliedros :– Inicializar valores min-max con un vértice del cuerpo– Recorrer la geometría recreciendo esos valores iniciales
– Esfera
– Envolvente convexa
xmax
z
yxmin
zminzmax
x
yminymax
Modelado-1 A. García-Alonso 24
...
• Sistema de referencia– Modelado, mundo, cámara
• Jerarquías : dependiente/independiente del tiempo
• Pre-procesado / regenerado (cuándo)– Sistema modelado : varía forma
– Sistema mundo : cambio de posición o forma
– Sistema cámara : cambio posición relativa o forma