IN01802C

30
Cap´ ıtol 3 Geometria m` etrica i aplicacions L’ objectiu d’aquest cap´ ıtol ´ es el de presentar els conceptes b`asics de la geometria m` etrica i les seves aplicacions. Molts dels resultats i les t` ecniques que s’hi exposarans´on de gran import` ancia en inform` atica gr` afica i CAD. En aquest cap´ ıtol s’introdueixen els conceptes m` etrics m´ es importants, orientats per una banda a resoldre problemes de tipus m` etric i, per l’altra, a la construcci´ o de bases ortonor- mals i, en conseq¨ u` encia, sistemes de coordenades cartesianes amb els quals resoldre problemes geometricogr`afics utilitzant canvi de sistema de coordenades. Tamb´ e s’hi introdueixen el producte escalar, la norma derivada d’un producte escalar, les bases ortonormals, el producte vectorial i el concepte d’angle orientat. Un aspecte important ´ es el canvi entre bases orto- normals. A la figura que acompanya aquesta descripci´ o s’ha substitu¨ ıt cada aresta d’un dodec` aedre per un cilindre d’eix l’esmentada aresta: aix` o s’ha fet construint una ´ unica vegada l’estructura cil´ ındrica i situant-la en el lloc corresponent mitjan¸ cant canvi de sistema de coordenades, amb la construcci´o pr` evia de sistemes cartesians de tercer eix coincidint amb l’aresta del pol´ ıedre. 3.1 Producte escalar Una de les eines b` asiques de la geometria ´ es la noci´o de producte escalar. 3.1.1 Concepte de producte escalar Sigui V un espai vectorial real (´ es a dir, el cos d’escalars ´ es R).

description

IN01802C

Transcript of IN01802C

  • Captol 3

    Geometriametrica i aplicacions

    L objectiu daquest captol es el de presentar els conceptes basics de la geometria metricai les seves aplicacions. Molts dels resultats i les tecniques que shi exposaran son de granimportancia en informatica grafica i CAD.

    En aquest captol sintrodueixen els conceptes metrics mesimportants, orientats per una banda a resoldre problemes detipus metric i, per laltra, a la construccio de bases ortonor-mals i, en consequencia, sistemes de coordenades cartesianesamb els quals resoldre problemes geometricografics utilitzantcanvi de sistema de coordenades. Tambe shi introdueixen elproducte escalar, la norma derivada dun producte escalar, lesbases ortonormals, el producte vectorial i el concepte dangleorientat. Un aspecte important es el canvi entre bases orto-normals.

    A la figura que acompanya aquesta descripcio sha substitutcada aresta dun dodecaedre per un cilindre deix lesmentadaaresta: aixo sha fet construint una unica vegada lestructura

    cilndrica i situant-la en el lloc corresponent mitjancant canvi de sistema de coordenades, ambla construccio previa de sistemes cartesians de tercer eix coincidint amb laresta del poledre.

    3.1 Producte escalar

    Una de les eines basiques de la geometria es la nocio de producte escalar.

    3.1.1 Concepte de producte escalar

    Sigui V un espai vectorial real (es a dir, el cos descalars es R).

  • 52 Geometria per a la informatica grafica i CAD

    Definicio 3.1 Laplicacio V V R, (x, y) x y es un producte escalar sobre V si escompleixen les propietats seguents:

    1. Bilinealitat, es a dir,

    (x+ y) z = x z + y z, x, y, z V,

    x (y + z) = x y + x z, x, y, z V,

    (x y) = x (y) = (x y), x, y V, R.

    2. Simetria, es a dir,x y = y x, x, y V.

    3. Definida positiva i no degenerada, es a dir,

    x x 0, x V,

    x = 0 = x x = 0.

    Observacions sobre la definicio

    De la propietat de bilinealitat sen deriva x 0 = 0,x V , ja que sempre podem escriurex 0 = x 0x = 0(x x) = 0. Amb aixo, si tenim en compte la propietat de ser definida positivai no degenerada, dedum tambe x = 0 x x = 0.

    Una altra observacio que podem fer es referent a les propietats de bilinealitat, que shan enunciatde forma redundant, ja que algunes es poden deduir de les altres utilitzant la propietat desimetria: en efecte, les propietats x (y + z) = x y + x z, x, y, z V , x (y) = (x y), x, y V, R, es poden derivar de les altres propietats de bilinealitat si sutilitza la

    propietat de simetria: x (y + z)(2)= (y + z) x = y x + z x

    (2)= x y + x zAnalogament:

    x (y) = (y) x = (y x) = (x y).

    3.1.2 El producte escalar ordinari

    Un exemple molt important de producte escalar es el producte escalar ordinari. Consideremlespai vectorial V = Rn, amb la base canonica usual : e1 = (1, 0, . . . , 0, 0), e2 = (0, 1, . . . , 0, 0),

    . . ., ei = (0, 0, . . . ,i1 , . . . , 0, 0), . . ., en = (0, 0, . . . , 0, 1).

    Siguin x = (x1, . . . , xn) i y = (y1, . . . , yn) les expressions dels vectors x, y Rn en components

    en la base canonica o usual. Definint

    x y = x1y1 + . . .+ xnyn =n

    i=1

    xiyi,

    sobte un producte escalar sobre Rn, com facilment es pot comprovar. Aquest es el producteescalar usual o ordinari de Rn, i es el que utilitzarem sovint en els casos n = 2, 3 (noteu ladependencia respecte de la base canonica de Rn).

  • 3 Geometria metrica i aplicacions 53

    Exemple. En el cas n = 3, si tenim expressats en la base canonica els vectors x = (1, 2, 3) i y =(1, 0, 2), aleshores el producte escalar ordinari daquests vectors es xy = 1(1)+20+32 = 5.

    En Mathematica el producte escalar euclidia o ordinari de dos vectors u,v es calcula escrivintsimplement u.v; amb aquest programa no cal fer distincions dimensionals, ja que funcionaratant si els vectors son bidimensionals com tridimensionals.

    3.1.3 El resultat fonamental: la desigualtat de Schwarz

    Un resultat molt important es el que enunciem a continuacio. Observem que el producte escalardun vector amb si mateix es sempre positiu o nul i, en consequencia, podem extreuren larrelquadrada. Per aquest motiu tenen sentit les expressions que apareixen a lenunciat seguent:

    Teorema 3.1 (Desigualtat de Schwarz) Si V es un espai vectorial real amb producte escalarque denotem per x y i x, y V , aleshores es compleix

    (x y)2 (x x)(y y),

    o be, equivalentment,|x y|

    x x

    y y.

    A mes, en la desigualtat de Schwarz la igualtat es valida si, i nomes si, els vectors x, y sonlinealment dependents.

    Demostracio Vegem en primer lloc la desigualtat. Ates que el producte escalar dun vectoramb si mateix es sempre no negatiu, tenim que per a qualsevol R es compleix

    0 (x+ y) (x+ y).

    Si ara utilitzem les propietats de bilinealitat i simetria, resulta

    0 (x+ y) (x+ y) = x x+ x (y) + (y x) + (y) (y)

    = x x+ (x y) + (y x) + 2(y y)

    = (y y)2 + 2(x y)+ x x.

    Interpretant ara lexpressio final de la dreta com una expressio quadratica en ,

    t() = (y y)2 + 2(x y)+ x x,

    resultara, ates que y y 0, que en principi les grafiques possibles son les de la figura 3.1.

    t

    t

    t Figura 3.1

    Aquests casos es corresponen respectivament amb arrels complexes (discriminant negatiu delequacio de segon grau), arrel real doble (discriminant nul) i arrels reals diferents (discriminantpositiu). Ates que

    (y y)2 + 2(x y)+ x x 0,

  • 54 Geometria per a la informatica grafica i CAD

    estem en algun dels dos primers casos, de discriminant negatiu o nul. Es a dir, que sha decomplir

    = (2(x y))2 4(y y)(x x) 0,

    o sigui,

    (x y)2 (y y)(x x).

    Finalment, justifiquem lultima afirmacio. Si hi ha igualtat, aleshores el discriminant det() = 0 sanul.la, cosa que correspon a lexistencia duna arrel real (doble) de t() = 0, es adir, que existeix 0 R tal que t(0) = 0. Ara be, t() = (xy) (xy) i, en consequencia,resulta 0 | (x 0y) (x 0y) = 0.Per les propietats (iii) i, en particular, lequivalenciaz z z = 0, resulta 0 | x 0y = 0,es a dir, x = 0y; per tant, x, y son linealmentdependents.

    Seguint largumentacio anterior, pero a linversa, podem veure tambe que si x, y son linealmentdependents, aleshores hi ha igualtat a la desigualtat de Schwarz (resoleu-ho com a exercici).Tambe es podria justificar directament per substitucio, ja que, si y = x, resulta immediatament

    (x x)(y y) = 2(x x)2 = (x (x))2 = (x y)2.

    Vegem un resultat auxiliar que es fa servir en diverses situacions, com tindrem ocasio de veure:

    Corol.lari 3.1 Si u, v son linealment independents, aleshoresu u u vv u v v > 0.

    Demostracio Per la independencia lineal, aplicant la desigualtat de Schwarz, es compleix que

    (u v)2 < (u u)(v v),

    es a dir,

    (u u)(v v) (u v)2 > 0.

    Pero aixo es justament el valor del determinant.

    3.1.4 Exercicis

    1 Comproveu que el que hem anomenat producte escalar ordinari de Rn satisfa efectivament totesles propietats de la definicio de producte escalar.

    3.2 Norma i espai normat

    3.2.1 Concepte de norma i espai normat

    Sigui V un espai vectorial real. Considerem una aplicacio V R+, que denotarem x x,i considerem la definicio seguent:

  • 3 Geometria metrica i aplicacions 55

    Definicio 3.2 Direm que laplicacio V R+, x x es una norma sobre V si es com-pleixen les propietats seguents:

    i) x = 0 x = 0,

    ii) x+ y x+ y,x, y V,

    iii) x =| | x, R,x V.

    Sanomena espai normat tot espai vectorial amb una norma.

    Observacio. De fet, de (iii) es deriva que, si x = 0, aleshores es x = 0, ja que 0 = 0w =|0|w = 0.

    x+ y

    x

    y

    Figura 3.2. x+ y x+ yLa desigualtat (ii) sanomena tambe desigualtat triangu-lar , ja que es la generalitzacio de la coneguda desigualtatper a triangles de la geometria plana, de la qual es unatranscripcio abstracta. Expressa el fet que la longitud dequalsevol costat dun triangle no supera la suma de leslongituds dels altres dos.

    A continuacio tenim un exemple simple de norma en un espai vectorial.

    Exemple 3.1. Sigui V = R. Considerem x = |x| = max(x,x), valor absolut ordinari.Aleshores, per les propietats del valor absolut ja conegudes, es compleix el seguent:

    i) |x| = 0 si, i nomes si, x = 0

    ii) |x+ y| |x|+ |y|,x, y R

    iii) |x| = |||x|,, x R

    En consequencia, x |x| es un cas trivial de norma en R.

    3.2.2 Norma derivada dun producte escalar

    Vegem a continuacio que sempre es pot definir una norma a partir dun producte escalar, normaque sanomenara derivada del producte escalar en questio.

    Teorema 3.2 Sigui V espai vectorial real amb producte escalar x y i definim x =x x

    per a cada x V . Aleshores, x x es una norma en V .

    Demostracio En primer lloc lexpressio x =x x es correcta, es a dir, esta definida per a

    cada x V , ja que x x 0, per a tot x V . Vegem ara que es compleixen les propietats quecalen per poder afirmar que x =

    x x es efectivament una norma:

    a) x =(x) (x) =

    2(x x) = ||

    x x = ||x, x V, R.

    b) x = 0 x x x x = 0 x = 0.

    c) Per demostrar la desigualtat triangular, considerem lexpressio x + y2; farem servir ladesigualtat de Schwarz, que sexpressa ara mitjancant |x y| xy. Utilitzant repetidamentles propietats de bilinealitat del producte escalar obtenim

    x+ y2 = (x+ y) (x+ y) = x (x+ y) + y (x+ y) = x x+ x y + y x+ y y

  • 56 Geometria per a la informatica grafica i CAD

    = x x+ 2(x y) + y y = x2 + 2(x y) + x2

    x2 + 2|x y|+ x2 x2 + 2xy+ x2 = (x+ y)2.

    Aix,

    x+ y2 (x+ y)2,

    don es deriva immediatament la desigualtat triangular.

    Per tant, de tot producte escalar es deriva una norma segons la definicio anterior que sanomenanorma derivada del producte escalar i es la que sobreentendrem quan es parli de norma dunvector en un espai vectorial amb producte escalar. Observeu que podem reescriure x x =x2, x.

    3.2.3 La norma euclidiana

    Un exemple important de norma es la norma euclidiana de Rn. Sigui V = Rn. Si x =(x1, . . . , xn), es lexpressio del vector x en la base canonica de R

    n, considerem lexpressio de lanorma associada al producte escalar ordinari:

    x =x x =

    x1x1 + + xnxn =

    x21 + + x

    2n =

    ni=1

    x2i

    Aquesta es la norma ordinaria o euclidiana de Rn.

    Com a exemple, si x = (2,1, 3), es x =22 + (1)2 + 32 =

    14 la norma ordinaria del

    vector (2,-1,3), expressat en la base canonica. O be, si u = (1, 1, 1), es u =3, i si y = (1, 2),

    es y =

    (1)2 + 22 =5.

    Podem veure que en els casos n = 2 i n = 3 aquesta definicio es correspon amb lhabitual demodul dun vector al pla o lespai, respectivament:

    x1

    x2

    x

    Figura 3.3

    x3

    x1 x2

    x

    Figura 3.4

    Com veiem, doncs, les propietats (i), (ii) i (iii) de la definicio de norma tradueixen en abstractelassignacio duna longitud o una certa mesura de grandaria a un vector dun espai tambe

  • 3 Geometria metrica i aplicacions 57

    abstracte.

    c

    a

    d

    b

    Figura 3.5.Observem finalment que en dimensio 3, si x =(a, b, c), aleshores x =

    a2 + b2 + c2 expressa

    la longitud de qualsevol de les diagonals dun pris-ma recte de costats a, b i c.

    Amb Mathematica podem programar el calcul de la norma euclidiana dun vector n-dimensionalde la forma mes simple amb el codi seguent:

    norma[v_]:=Sqrt[v.v](*//N//Chop*)

    Observem que no cal fer distincions sobre la dimensio del vector.

    Un primer exemple daplicacio

    Exemple 3.2. Formulats en termes de norma i producte escalar, algunes vegades pot ser facilprovar propietats geometriques de les figures. Vegem, com a exemple, com es pot formular iprovar la ben coneguda propietat de la geometria elemental, la llei del paral.lelogram: la sumadels quadrats de les longituds de les diagonals dun paral.lelogram es igual al doble de la sumadels quadrats de les longituds dels costats.

    a+b

    b

    ab

    aFigura 3.6

    Observeu que lenunciat es pot formular en els termes seguents:

    2a2 + 2b2 = a+b2 + ab2.

    Demostrem, doncs, aquesta propietat geometrica provant lanterior igualtat entre normes:

    a+b2 + ab2 = (a+b) (a+b) + (ab) (ab)

    = a (a+b) +b (a+b) + a (ab)b (ab)

    = a a+ a b+b a+b b+ a a a bb a+b b

    = 2a a+ 2b b = 2a2 + 2b2

    Aquest es un nou exemple, completant la col.leccio dexemples del captol anterior, de com ambsenzilles manipulacions algebraicovectorials es poden deduir propietats geometriques. Moltesaltres propietats es poden deduir amb aquesta tecnica.

  • 58 Geometria per a la informatica grafica i CAD

    3.2.4 Exercicis

    1 Proveu que en un espai normat V es compleix, per a tot x, y, |x y| x y.

    x

    y

    x y

    Figura 3.7.Aquesta desigualtat admet una interpretaciogeometrica interessant: la longitud dun cos-tat dun triangle es mes gran que el valor ab-solut de la diferencia de les longituds dels al-tres dos.

    2 Calculeu les longituds de les mitjanes del triangle de vertexs A = (1, 5), B = (5,1) i C = (10, 3).

    3 Sigui ABCD (en ordre antihorari, per exemple) un paral.lelogram del pla. Considerem 0 1

    i el quadrilater donat per ABCD (en el mateix ordre), onAA =

    AB,

    BB =

    BC,

    CC =

    CD i

    DD =

    DA, dacord amb lesquema

    A A

    B

    B

    C

    C

    D

    D

    Figura 3.8

    a) Proveu que ABCD es un paral.lelogram.

    b) Proveu que, si ABCD es un quadrat, tambe ho es ABCD.

    c) Conegudes les coordenades dels punts A, B, C i D, que formen un paral.lelogram, calculeules coordenades de A, B, C i D.

    3.3 Distancia

    3.3.1 Distancia i espai metric

    Introdum a continuacio el concepte de distancia en un conjunt i la nocio associada despaimetric:

    Definicio 3.3 Sigui E un conjunt qualsevol (no buit). Aleshores, una distancia sobre E es unaaplicacio

    d : E E R+

    per a la qual es compleixen les propietats seguents:

  • 3 Geometria metrica i aplicacions 59

    1. d(x, y) = d(y, x),x, y E

    2. d(x, y) d(x, z) + d(z, y),x, y, z E (desigualtat triangular)

    3. d(x, y) = 0 x = y

    Aleshores es diu que el parell (E, d) es un espai metric.

    3.3.2 Distancia derivada duna norma

    Vegem a continuacio que, sempre que en un espai vectorial V tenim una norma, podem parlarde distancia entre vectors, es a dir, que tota norma indueix una distancia en un espai normat:

    Teorema 3.3 Donat un espai vectorial amb norma , aleshores d(x, y) = y x defineixuna distancia.

    Demostracio En efecte, sigui V un espai normat, amb norma , i considerem laplicaciod : V V R+ donada per

    d(x, y) = x y.

    Comprovem que es compleixen les propietats (1), (2) i (3) anteriors de la definicio de distancia.La propietat (1) es compleix clarament per la propietat (iii) de la definicio de norma, la propietat(2) es consequencia de la desigualtat triangular i, finalment, (3) es deriva del fet que z =0 z = 0:

    1) d(x, y) = x y = (y x) = | 1|y x = d(y, x)

    2) d(x, y) = x y = (x z) + (z y) x z+ z y = d(x, z) + d(z, y)

    3) d(x, y) = 0 x y = 0 x y = 0 x = y

    Novament un exemple dimportancia fonamental es el de la distancia associada en Rn a lanorma derivada del producte escalar ordinari: la distancia usual o euclidiana.

    Si x = (x1, . . . , xn), y = (y1, . . . , yn) es lexpressio dels vectors indicats en la base canonica, ladistancia ordinaria es

    d(x, y) = x y =(x y) (x y) =

    (x1 y1)2 + . . .+ (xn yn)2.

    En particular, es x = d(x,0).

    En el cas del pla i de lespai de punts tridimensional podem considerar la nocio derivada dedistancia entre punts si lespai vectorial associat a lespai af es normat. La manera de definir-laes la natural, com es veu a la figura 3.9.

    P

    Qw

    Figura 3.9.Q = P + wPQ = Q P = wd(P,Q) =

    PQ = w

    La distancia euclidiana, derivada de la norma euclidiana, es pot calcular amb Mathematica demanera molt simple, sense haver de fer distincions sobre la dimensio dels punts:

  • 60 Geometria per a la informatica grafica i CAD

    distancia[P_,Q_]:=norma[Q-P]

    Exemple 3.3. Calculeu les longituds de les arestes del tetraedre de vertexs A = (1, 2, 3),B = (5, 6, 5), C = (4, 6, 15) i D = (2, 1, 1), referits a la base canonica.

    A

    B CD

    Figura 3.10

    Caldra calcular AC,

    AB,

    BC,

    BD i

    CD. Per exemple:

    AB = B A = (4, 4, 2),

    don AB =

    42 + 42 + 22 =

    16 + 16 + 4 =

    36 = 6.

    3.3.3 Objectes importants: cercle, esfera, cilindre

    Vegem alguns exemples interessants en relacio amb els conceptes de norma i distancia.

    3.3.3.1 La circumferencia i el cercle

    Volem obtenir lequacio de la circumferencia com a lloc geometric dels punts del pla que distendun punt fix, el centre, una quantitat constant, el radi. Suposem que tot esta referit a la basecanonica de R2. Si el centre es C = (a, b) i el radi es R, la circumferencia es el conjunt C ={(x, y)|d((x, y), (a, b)) = R}; aleshores, la condicio anterior dona lloc a lequacio corresponent:

    d((x, y), (a, b)) = R,

    don

    (x a)2 + (y b)2 = R2.

    Linterior de la circumferencia, comptant-hi el contorn o frontera, es a dir el cercle corresponent,es pot definir en termes metrics com el conjunt {(x, y)|d((x, y), (a, b)) R}, de manera queaquest conjunt es donat per la inequacio (x a)2 + (y b)2 R2. Si sexclou el contorn,aleshores es (x a)2 + (y b)2 < R2. Lexterior de la circumferencia amb exclusio del contornes (x a)2 + (y b)2 > R2, i, si sinclou, aleshores es (x a)2 + (y b)2 R2. Aixo permetformular tests simples de punt interior a una circumferencia que poden ser utils en algorismesgeometrics o grafics.

    Desenvolupant lequacio de la circumferencia obtenim

    x2 + y2 2ax 2by + a2 + b2 R2 = 0

    Es pot expressar vectorialment lequacio de la circumferencia, en la forma seguent: (X C) (X C) = R2. Aquesta forma es especialment comoda per tractar el problema del calcul de lainterseccio duna recta X = A+u amb la circumferencia: caldra trobar els valors de (si nhiha) per als quals (A+ uC) (A+ uC) = R2. Es poden fer les manipulacions vectorialspertinents:

  • 3 Geometria metrica i aplicacions 61

    (A+ u C) (A + u C)R2 = 0

    (u u)2 + 2(u A u C) + (A A 2A C + C C R2) = 0,

    equacio de segon grau en . Del discriminant dependra que hi hagi dues, una o cap interseccio,que es poden calcular de manera efectiva quan nhi ha.

    3.3.3.2 Lesfera

    C

    P

    Figura 3.11

    Lequacio de lesfera, coma superfcie formada pelspunts (x, y, z) la distanciadels quals a un punt fix C =(a, b, c), el centre, es unamagnitud constant, el radiR, sobte a continuacio. Su-posem que tot esta referit ala base canonica de R3.

    Si el centre es (a, b, c) i el radi R, aleshores, expressant la condicio

    d((x, y, z), (a, b, c)) = R

    obtenim la coneguda equacio de lesfera en coordenades cartesianes:

    (x a)2 + (y b)2 + (z c)2 = R2.

    Desenvolupant lequacio en coordenades resulta

    x2 + y2 + z2 2ax 2by 2cz + (a2 + b2 + c2 R2) = 0

    Lequacio de lesfera de centre lorigen i radi R es x2 + y2 + z2 = R2.Lesfera de centre lorigeni radi 1 x2 + y2 + z2 = 1 sanomena esfera unitat.

    De manera similar al cas de la circumferencia, tambe podem descriure la bola esferica, ambo sense superfcie frontera i lexterior de lesfera, cosa que pot ser util per formular un testde pertinenca dun punt a una esfera. Concretament, els punts de linterior, amb lexclusiode la superfcie esferica, son els que satisfan (x a)2 + (y b)2 + (z c)2 < R2; amb lainclusio de la superfcie, (x a)2 + (y b)2 + (z c)2 < R2; els exteriors sense superfcie,(xa)2+(y b)2+(z c)2 > R2; amb la superfcie esferica, (xa)2+(y b)2+(z c)2 R2.

    Vectorialment es tambe, de manera equivalent, (X C) (X C) = R2, equacio que resultaidentica formalment a la de la circumferencia en el pla. Per aquest motiu, el problema decalcular la interseccio duna esfera amb una recta es formalment identic i es poden fer servir lesmateixes formules, amb els avantatges que sen deriven per a la programacio.

  • 62 Geometria per a la informatica grafica i CAD

    3.3.3.3 El cilindre circular recte

    Es defineix el cilindre circular recte deix Oz i de radi R com la figura de lespai o lloc geometricdels punts que disten R de leix, es a dir, que satisfan d((x, y, z), (0, 0, z)) = R. Desenvolupant-ho, sobte lequacio del cilindre:

    x2 + y2 = R2.

    Linterior del cilindre es el conjunt de punts que satisfan x2+y2 < R2; lexterior, x2+y2 > R2.

    Observeu que la figura del cilindre no es fitada. Com a conjunt es

    C = {(x, y, z) R3|x2 + y2 = R2, z R}

    Moltes vegades es considera nomes una part del cilindre, la limitada per dos plans perpendicularsa leix; aquesta es la situacio en el cas de la informatica grafica i el modelatge de solids.

    3.3.4 Exercicis

    1 Mitjancant canvi de sistema de coordenades, escriviu lequacio del cilindre de radi R i deix larecta paral.lela a leix Oz que passa per (a, b, 0).

    2 Directament per arguments metrics o mitjancant canvi de sistema de coordenades, escriviu le-quacio del cilindre de radi R i deix Oy.

    3 Utilitzeu que langle inscrit en una semicircumferencia es /2 per obtenir una equacio de lesferadonats dos punts diametralment oposats.

    4 Estudieu completament el problema de la interseccio duna recta amb una circumferencia.

    5 Estudieu completament el problema de la interseccio duna recta amb una esfera.

    3.4 Angle i ortogonalitat

    3.4.1 Angle de dos vectors

    Donats dos vectors x, y no nuls dun espai vectorial real amb producte escalar, tenim que escompleix, en virtut de la desigualtat de Schwarz, que

    |x y| xy |x y|

    xy 1 1

    x y

    xy 1.

    Essent el nombre xyxy [1, 1], i per propietats ben conegudes de la funcio cosinus1, sabem

    que existeix un unic [0, ] tal que

    x y

    xy= cos , o be, equivalentment, = arccos

    x y

    xy.

    Mes formalment,

    Definicio 3.4 Si x = 0, y = 0, langle que formen els vectors x, y es, per definicio, lunic [0, ] per al qual es compleix la igualtat

    x y = xy cos .

    1Concretament, la funcio es estrictament decreixent en [0, ] amb valors maxim cos 0 = 1 i mnim cos = 1

  • 3 Geometria metrica i aplicacions 63

    En consequencia, es

    = arccosx y

    xy.

    Una observacio important a fer es que aquesta formula ens dona nomes langle en magnitud,pero no amb signe; aquesta questio la resoldrem mes endavant. Per tant, amb aixo nomespodem saber langle que formen dos vectors, pero no langle que forma un dells amb laltre.

    x

    y

    x

    y

    Figura 3.12.

    Noteu tambe que, dels dos angles queen principi podrem pensar com a pos-sibles, sempre obtenim el mes petit, alinterval [0, ].

    Expressio de langle en components. Considerant en R2 o R3 el producte escalar ordinari, iexpressats els vectors x, y en la base canonica, tenim:

    a) En R2,

    = arccosx1y1 + x2y2

    x21 + x22

    y21 + y

    22

    .

    b) En R3,

    = arccosx1y1 + x2y2 + x3y3

    x21 + x22 + x

    23

    y21 + y

    22 + y

    23

    .

    En Mathematica es pot calcular facilment langle mitjancant una funcio que calca essencialmentla formula matematica:

    angle[u_,v_]:=ArcCos[(u.v)/(norma[u]*norma[v])]

    Angle de dues rectes. Considerem dues rectes r, s de vectors directors respectius u,v. Hi hadues accepcions possibles per a langle de dues rectes. En la primera accepcio, es consideraangle langle agut que determinen les rectes, a linterval [0, 2 ], i que es calcula mitjancant

    angle(r, s) = arccos|u v|

    uv

    En la segona accepcio, es consideren les rectes orientades per les eleccions fetes de vectorsdirectors i es defineix com a angle de les dues rectes langle entre els dos vectors directorsconcrets. Aquest angle esta compres entre 0 i i sobte com

    angle(r, s) = arccosu v

    uv

    3.4.2 Ortogonalitat

    Definicio 3.5 Si x = 0, y = 0, direm que x, y son ortogonals si, i nomes si, x y = 0.

  • 64 Geometria per a la informatica grafica i CAD

    Dacord amb la igualtat x y = xy cos , resulta que els vectors x, y no nuls son ortogonalssi, i nomes si, = /2, essent langle que formen x, y.

    Definicio 3.6 Dues rectes son perpendiculars si, i nomes si, els seus vectors directors sonortogonals.

    Daqu es deriva immediatament un test de perpendicularitat de dues rectes de direccions do-nades pels vectors directors u, v: les dues rectes son perpendiculars si, i nomes si, u v = 0.

    3.4.3 Exemples

    Vegem alguns exemples daplicacio dels conceptes daquesta seccio.

    e2

    e1

    u

    w

    Figura 3.13

    Exemple 3.1. Donat el vector u = (a, b), estracta dobtenir un vector ortogonal a u. Espodria fer exigint la condicio dortogonalitat,pero en el cas bidimensional es mes immedi-at, ja que es suficient escollir w = (b, a). Siu = 0, es pot comprovar que u, w son lineal-ment independents (despres ho veurem coma consequencia dun resultat mes general), i,per tant, formen base si lespai vectorial es dedimensio 2 i podem veure que aquesta elec-cio de w fa que {u, w} sigui una base de lamateixa orientacio que loriginal en la qual

    sexpressen u, w. En efecte,

    det(u, w) =

    a bb a = a2 + b2 > 0.

    Tambe shagues pogut escollir w1 = (b,a), pero aleshores {u, w1} definiria una orientaciodiferent, cosa que pot convenir en determinades ocasions.

    Per tant, es trivial obtenir en el pla la direccio ortogonal a una direccio donada. En particular,una equacio parametricovectorial de la recta que passa per P0 i es perpendicular a una rectade vector director u = (a, b), es P = P0 + w, amb w = (b, a).

    En el cas tridimensional hi ha infinites solucions possibles. Si a = (a1, a2, a3) i suposem, perexemple, que algun dels dos primers components son no nuls, aleshores trivialment podemprendre com a direccio ortogonal la del vector (a2,a1, 0) o altres variants. Tambe es potprocedir de manera mes sistematica imposant lortogonalitat: 0 = a u = a1u1 + a2u2 + a3u3 siu = (u1, u2, u3).

    Exemple 3.2. El conegut teorema del cosinus per a triangles no es mes que lexpressio de laigualtat basica anterior. En efecte:

    a

    b

    c

    Figura 3.14

  • 3 Geometria metrica i aplicacions 65

    Tenim a = c b, i si indiquem a = a, b = b i c = c, podem escriure a2 = a2 =

    (cb) (cb) = c c2b c+b b = c2+b22bc cos . Es a dir, a2 = b2+ c22bc cos .

    Exemple 3.3. Calcul de les longituds de les diagonals dun paral.lelogram conegudes les longitudsdels costats i langle que formen.

    a

    bb a

    a+b Figura 3.15

    Hem de calcular a+b i b a. Es una simple manipulacio algebraica:

    a) a + b2 = (a + b) (a + b) = a (a + b) + b (a + b) = a2 + a b + b a + b2 =

    a2 + b2 + 2ab cos = a2 + b2 + 2ab cos.

    b) b a2 = (b a) (b a) = b (b a) a (b a) = b2 b a a b + a2 =

    a2 + b2 2ab cos = a2 + b2 2ab cos . Daqu sobte immediatament la longitud deles diagonals.

    Continuem amb aquest mateix exemple:

    Exemple 3.4. Calcul de langle de les diagonals dun paral.lelogram, conegudes les longituds delscostats i langle que formen. Suposem les notacions i els resultats de lexemple immediatamentanterior, i sigui langle que formen les diagonals esmentades.

    a

    bd2

    d1 Figura 3.16

    Tenim, duna banda, que

    (a+b) (b a) = a b a a+b bb a = b2 a2,

    i, de laltra, que

    (a+b) (b a) = a+bb a cos.

    Per tant,

    cos =b2 a2

    a2 + b2 + 2ab cos

    a2 + b2 2ab cos

  • 66 Geometria per a la informatica grafica i CAD

    Exemple 3.5. Langle inscrit a una semicircumferencia es /2. Considerem lesquema seguent:

    A BOr

    bp

    a Figura 3.17

    Aleshores podem escriure ab = (r+p)(p+r) = r(p+r)+p(p+r) = rp+rrpp+pr =r r p p = r2 r2 = 0.

    Exemple 3.6. Determinacio de les bisectrius dun angle. Determinats algorismes de geome-tria computacional requereixen el calcul de la bisectriu dun angle donat. Considerem langledeterminat per e1, e2, tal com sindica a la figura 3.18.

    b1b2

    e1

    e2

    e1

    Figura 3.18

    Siguin b1, b2 vectors directors de les bisectrius interior i exterior. Es tracta dobtenir-ne lex-pressio en termes del vectors e1, e2. Suposem = 0. Suposem e1 = e2 = 1 (de fet, nomes

    cal que les normes coincideixin). Sigui b1 = 1e1 + 2e2 = 0. Aleshores tenim

    e1 b1 = e1b1 cos = b1 cos,

    e2 b1 = e2b1 cos = b1 cos,

    es a dir, e1 b1 = e2 b1. Daqu dedum:

    e1 (1e1 + 2e2) = e1 (1e1 + 2e2)

    1e12 + 2e1 e2 = 1e2 e1 + 2e2

    2

    1 + 2e1 e2 = 1e1 e2 + 2

    (1 e1 e2)1 = (1 e1 e2)2

    El cas e1 e2 = 1 es trivial, ja que aleshores cos 2 = 1 i, per tant, = 0, cas que sexclou, i,en consequencia, 1 = 2.

    Aix doncs podem prendre b1 = e1 + e2i, analogament, b2 = e1 e2.

    Exemple 3.7. Les bisectrius dun angle son perpendiculars. En efecte, mantenint el mateixesquema i les notacions de lexemple anterior, haurem de demostrar simplement que b1 b2 = 0,

  • 3 Geometria metrica i aplicacions 67

    cosa que es trivial: b1 b2 = (e1 + e2) (e1 e2) = e1 (e1 e2) + e2 (e1 e2) = e1 e1 e1 e2 + e2 e1 e2 e2 = e12 e22 = 0.

    Exemple 3.8. Considerem lesquema de la figura 3.19. Sigui P un punt del pla x = 0 i Q unpunt del pla y = 0. Considerem els vectors u =

    OQ, w =

    OP . Ens podem plantejar sota quines

    condicions u, w poden ser ortogonals.

    e1e2

    e3

    P

    Q

    x

    y

    z

    Figura 3.19

    Suposem que en la base canonica es u = (u1, 0, u3), w = (0, w2, w3). Aix, u w = 0 u3w3 = 0 u3 = 0 o w3 = 0. Per tant, nomes hi pot haver perpendicularitat si la direcciodel vector u coincideix amb la de leix Ox o be si la del vector w coincideix amb la de Oy.

    Es veu molt clarament que langle dels vectors i de les projeccions sobre el pla z = 0 nocoincideixen en general.

    Exemple 3.9. (geometria del tetraedre) Una parella darestes del tetraedre es diu que es darestesoposades si no tenen cap vertex en comu.

    1. Suposem que, per a dues parelles darestes oposades, les arestes de cada parella sonperpendiculars. Demostreu que tambe ho son les arestes de la parella restant.

    2. Demostreu que, en la hipotesi de lapartat anterior, les sumes dels quadrats de les longitudsde les arestes duna parella darestes oposades es la mateixa per a cada parella.

    O

    A

    C

    B

    e3

    e1 e3e1

    e2

    e3 e2

    e1 e2

    Figura 3.20

    En efecte, pel que fa a la primera part, la perpendicularitat sexpressa vectorialment per lanul-lacio del producte escalar dels vectors directors corresponents. Suposem que son ortogonals lesparelles seguents, per exemple: e2, e1 e3 i e3, e1 e2, cosa que significa 0 = e2 (e1 e3) i0 = e3(e1e2). Desenvolupant-ho, resulta e1e2 = e2e3 = e1e3. Hem de provar que e1 i e3e2son ortogonals, es a dir, e1 (e3 e2) = 0. Pero, si calculem i apliquem e1 e2 = e2 e3 = e1 e3,resulta e1 (e3 e2) = e1 e3 e1 e2 = 0.

    Quant a la segona part, utilitzarem de lapartat anterior les igualtats e1 e2 = e2 e3 = e1 e3.Calculem ara, per exemple, OA2 +BC2 = e12 + e3 e22 = e12 + (e3 e2) (e3 e2) =e12 + e22 + e32 2e3 e2.

    Ara be, la suma dels tres primers termes es simetrica en e1, e2, e3 i sera la mateixa per aqualsevol altra parella darestes, i el quart terme sera tambe el mateix, donades les igualtats

  • 68 Geometria per a la informatica grafica i CAD

    e1 e2 = e2 e3 = e1 e3. En consequencia, la suma dels quadrats de les longituds sera la mateixaper a cada parella darestes oposades.

    3.4.4 Angles orientats en el pla

    La nocio dangle entre dos vectors no nuls que hem donat pot no ser suficient per a moltesaplicacions. Podem necessitar assignar un signe als angles, sobre tot quan aixo shagi de traduirposteriorment en una rotacio o un recorregut de trajectories.

    Per aquest motiu introdum el concepte dangle orientat en el pla. Aquest concepte es netamentbidimensional, de la geometria del pla i, a mes, ho es del pla orientat, es a dir del pla per alqual sha fet una eleccio duna base {e1, e2} que considerem positiva o directa i que orientalespai vectorial bidimensional. En canviar lorientacio canviara tambe langle orientat. Lanocio dangle orientat entre dos vectors ens permet obtenir angles a linterval [, ].

    Definicio 3.7 Langle orientat entre la parella ordenada de vectors {u,v} (relatiu a lorientacioescollida en el pla) es defineix de la manera seguent:

    angleOr2D(u,v) =

    {angle(u,v) si dete(u,v) 0angle(u,v) si dete(u,v) < 0

    ,

    on angle(u,v) = arccos uvuv , angle ordinari, en magnitud, entre els vectors.

    La idea es mantenir la mateixa magnitud i assignar un signe. En el cas que els vectors u,vsiguin linealment independents, aleshores {u,v} es una base i sassigna signe positiu si, i nomessi, la base anterior es de la mateixa orientacio que lorientacio del pla, cosa que es tradueix enel fet que dete(u,v) 0. Langle orientat es positiu si, i nomes si, els vectors ordenats formenuna base de la mateixa orientacio; en cas contrari es negatiu. Si u,v son linealment dependents,aleshores dete(u,v) = 0, determinen la mateixa direccio i formen un angle igual a 0 o a , angleque sera calculat automaticament per lexpressio angle(u,v) = arccos uvuv . Totes aquestes

    idees estan condensades en la definicio anterior.

    Sobserva que aquest calcul de langle orientat es trivialment programable en Mathematica.Aquest es de fet el treball que ja fa directament la funcio ArcTan de Mathematica, o la funcioatan2 de C i de C++.

    Es pot considerar una reformulacio equivalent:

    angleOr2D(u,v) =

    {signe(dete(u,v))angle(u,v) si dete(u,v) = 0angle(u,v) si dete(u,v) = 0

    Si lorientacio se sobreenten, es parla simplement de langle orientat entre els vectors u,v. Perposar emfasi en lordenacio dels vectors tambe es parla e vegades de langle orientat que uforma amb v, que sera igual en modul pero diferent en signe del que v forma amb u. Com esveu, hem perdut la simetria que hi havia en el concepte dangle (no orientat). Es compleix queangleOr2D[u,v] = angleOr2D[v, u].

    Si volem angles entre [0, 2], aleshores poden considerar una altra variant, relacionada amb lanocio anterior, que per a alguns autors es considera definicio del concepte dangle orientat:

    angleOr2Db(u,v) =

    {angle(u,v) si dete(u,v) 02 angle(u,v) si dete(u,v) < 0

  • 3 Geometria metrica i aplicacions 69

    3.4.5 Exercicis

    1 Calculeu la interseccio de dues bisectrius interiors dun triangle.

    2 Proveu que les bisectrius interiors dun triangle es tallen en un punt.

    3 Calculeu la interseccio duna bisectriu interior dun triangle amb el costat oposat.

    4 Demostreu que, en un tetraedre regular, dues arestes oposades qualssevol son perpendiculars.

    5 Trobeu langle format pels vectors (2, 1, 3) i (1, 2,2).

    6 Trobeu langle que formen les rectes seguents:

    a) x12

    = y 2 = z35

    i x12

    = y12

    = z25

    .

    b)

    {2x y = 0

    x z = 2i

    {x z = 1

    y 2z = 1.

    7 Trobeu langle format per la recta r i el pla . r : x1 = y2 = z13

    : x+2yz = 4.

    8 Demostreu que les rectes 5x y 6 = 0, x+5y 22 = 0, 5x y 32 = 0 i x+5y+4 = 0 formenun quadrat.

    9 Trobeu lequacio de la bisectriu de langle (agut) format per les rectes x2y4 = 0 i 4xy4 = 0.

    10 Donat el triangle A = (1, 2, 3), B = (0, 0,1) i C = (2,1, 6), calculeu lequacio de la bisectriucorresponent al vertex B.

    11 Les equacions dels costats dun triangle pla son 5x7y+27 = 0, 9x2y15 = 0 i 4x+5y+11 = 0.Trobeu-ne els angles.

    12 En una piramide de base triangular MABC, els costats MA, MB i MC son perpendiculars entresi; se suposen conegudes a = ||MA||, b = ||MB|| i c = ||MC||. Sigui D el punt mitja de AM .Calculeu langle format per CA i DB.

    13 Escriviu lequacio de la recta del pla que passa pel punt (3, 4) i forma un angle de 45 amb larecta y = 2x+ 1.

    14 Trobeu langle entre les diagonals dun paral.lelogram construt sobre els vectors a = (2, 1, 0) ib = (0,2, 1).

    15 Donat el triangle A = (2, 3, 1), B = (0, 2, 1) i C = (1, 3, 1), calculeu la direccio de lalturacorresponent al vertex A. Quina es lequacio de la recta corresponent? Utilitzeu la projeccioortogonal. Proposeu altres metodes de resolucio.

    16 Trobeu langle format pels plans x+ 2y + 3z + 4 = 0 i 2x y + z + 3 = 0.

    17 Quina condicio han de complir els punts que equidisten dels punts (1, 2,1) i (1, 1, 1)? Quinafigura de lespai formen aquests punts?

    18 Donats els punts A, B, C i D de lespai:

    a) Demostreu queAB

    CD +

    AC

    DB +

    AD

    BC = 0.

    b) Deduu de la relacio anterior que, si dues parelles darestes oposades dun tetraedre sonperpendiculars, aleshores les arestes del tercer parell tambe ho son.

    3.5 Bases ortonormals

    Suposem que V es un espai vectorial amb producte escalar.

  • 70 Geometria per a la informatica grafica i CAD

    3.5.1 Definicio i exemples

    Definicio 3.8 Un vector e es unitari si e = 1 (en particular, e = 0); en termes de producteescalar resulta que e es unitari si, i nomes si, e e = 1

    Si un vector e = 0 no es unitari, sempre es pot obtenir un altre vector unitari v que siguide la mateixa direccio i que orienti en el mateix sentit la direccio que determina, simplementdividint per la norma. En efecte, considerant v = 1ee, cosa que te sentit perque e = 0,resulta

    v = 1

    ee =

    1

    ee = 1,

    utilitzant les propietats de la norma.

    Definicio 3.9 Un sistema de vectors {e1, , ek} es un sistema ortonormal si tots els vectorsson unitaris i ortogonals dos a dos, es a dir si

    1. ei = 1, i

    2. ei ej = 0, i = j, i, j = 1, , k.

    En termes de producte escalar, les dues condicions anteriors es poden formular de la maneraseguent:

    ei ej =

    {1, si i = j0, si i = j

    Notacio. De vegades es comode i util expressar les condicions anteriors en la forma condensadaseguent

    ei ej = ij , essent ij =

    {1, si i = j,0, si i = j,

    cosa que hem de considerar com un simple artifici notacional.

    Definicio 3.10 Una base ortonormal de lespai vectorial es una base de vectors unitaris dos ados ortogonals.

    Exemple 3.1. En Rn, i respecte del producte escalar ordinari, la base canonica es una baseortonormal; en el cas n = 3, es e1 = (1, 0, 0), e2 = (0, 1, 0), e3 = (0, 0, 1).

    Exemple 3.2. La base u1 = (1, 0, 0), u2 = (0, 1, 0), u3 = (0, 0, 1) es una base ortonormal.

    3.5.2 Interes de les bases ortonormals

    Ens podem plantejar quin es linteres o quins son els avantatges de considerar el concepte debase ortonormal. La resposta es que, segons veurem, treballar en base ortonormal sol simplificarmolt les coses i que, aix, diverses expressions importants resulten mes senzilles.

  • 3 Geometria metrica i aplicacions 71

    3.5.2.1 Expressio del producte escalar en una base

    Vegem en primer lloc quina es lexpressio del producte escalar de dos vectors en una basequalsevol, i com nhi ha prou de coneixer el producte escalar dels vectors de la base per podercalcular el producte escalar de vectors arbitraris.

    Sigui e1, , en una base de lespai, i siguin x = x1e1 + + xnen i y = y1e1 + + ynen

    les expressions dels vectors x, y en aquesta base. Fent us repetit de les propietats de bilinealitati simetria del producte escalar obtenim:

    x y = (n

    i=1

    xiei) (n

    j=1

    xjej) = (n

    i=1

    (xiei) (n

    j=1

    xjej))

    =n

    i=1

    nj=1

    (xiei) (xjej) =n

    i=1

    nj=1

    xiyj(ei ej)

    Resulta doncs suficient coneixer com actua el producte escalar sobre una base qualsevol perconeixer x y, x, y.

    3.5.2.2 Expressio del producte escalar en base ortonormal

    De lexpressio anterior del producte escalar en una base, x y =n

    i=1

    nj=1 xiyj(ei ej),en

    resulta, si la base es ortonormal, el seguent:

    x y =n

    i=1

    nj=1

    xiyjij =n

    i=1

    xiyi,

    expressio del producte escalar en una base ortonormal. Per tant, en una base ortonormalla formula del producte escalar es la mateixa que la del producte escalar ordinari en la basecanonica de Rn.

    3.5.2.3 Expressio de la norma en base ortonormal

    Pel que acabem de veure, en una base qualsevol lexpressio de la norma sera la seguent:

    x =x x =

    ni=1

    nj=1

    xixj(ei ej).

    En consequencia, si la base {e1, , en} es ortonormal, resulta

    x =

    ni=1

    x2i =x21 + + x

    2n,

    expressio molt mes comoda que la general, amb la qual recuperem el que tenem per al producteescalar ordinari de Rn. Una lectura que es pot fer daixo es la seguent: el quadrat de la distanciade qualsevol punt a lorigen es igual a la suma dels quadrats de les distancies als plans decoordenades.

  • 72 Geometria per a la informatica grafica i CAD

    3.5.2.4 Expressio de la distancia en base ortonormal

    Seguint els desenvolupaments anteriors, resultara en base ortonormal

    d(x, y) =

    ni=1

    (yi xi)2.

    3.5.2.5 Expressio de langle en base ortonormal

    Si e1, , en es una base ortonormal i x = (x1, , xn) i y = (y1, , yn) son les expressions enaquesta base, aleshores, i si es langle que formen x, y, tenim:

    cos =x1y1 + + xnynn

    i=1 x2i

    ni=1 y

    2i

    .

    3.5.3 Sistemes de coordenades cartesianes

    Definicio 3.11 Un sistema de coordenades S = (O; {e1, , en}) es diu que es un sistema decoordenades cartesianes si la base corresponent {e1, , en} es una base ortonormal.

    A lespai vectorial Rn, dotat del producte escalar ordinari, el sistema de referencia S =(O; {e1, , en}) associat a la base canonica e1, , en es un sistema de coordenades carte-sianes.

    Un resultat molt util a la practica es el seguent:

    Teorema 3.4 Vectors no nuls ortogonals dos a dos son linealment independents.

    Demostracio Siguin u1, , ur vectors no nuls mutuament ortogonals, i siguir

    i=1 iui =0

    una combinacio lineal dels vectors igualada a zero. Hem de veure que tots els coeficients que hiapareixen son nuls. Multiplicant els dos membres de la igualtat escalarment per uj, j = 1, , r,obtenim j(uj uj) = 0. Ara be, uj = 0 i, en consequencia, j = 0, j.

    En particular, un sistema de vectors ortonormal es sempre un sistema de vectors linealmentindependents.

    Observacio important. Aixo permet no haver de comprovar o provar la independencia lineal devectors no nuls que hagim conseguit pel procediment que sigui, si son ortogonals dos a dos. Si,a mes, el nombre de vectors es igual a la dimensio de lespai, aleshores son base, i daquestamanera obtenim una base de lespai. Aixo sera molt util en moltes aplicacions practiques, jaque ens descarregara de comprovacions innecessaries.

    3.5.4 Exercicis

    1 Proveu que la unitaritzacio de vectors conserva els angles que formen i, en particular no alteralortogonalitat.

    2 Sanomenen cosinus directors de x R3, x = 0 els cosinus dels angles que forma x amb elsvectors e1, e2, e3 de la referencia cartesiana usual. Denotarem per i langle format per x,ei,i = 1, 2, 3.

    a) Expresseu x en termes dels cosinus directors.

    b) Proveu que per a tot x = 0 es compleix3

    i=1 cos2 i = 1.

  • 3 Geometria metrica i aplicacions 73

    3.6 Canvi entre bases ortonormals

    Es molt clar que es interessant disposar de bases ortonormals. En aquest apartat veurem una raoaddicional mes, ja que els canvis entre bases ortonormals es produeixen de manera especialmentcomoda. Estudiarem, doncs, com funciona el canvi entre bases ortonormals.

    3.6.1 Plantejament del problema

    La pregunta en concret es si la propietat de ser les bases ortonormals es traduira o no en algunapropietat especial de la matriu de canvi de base: la resposta es afirmativa.

    Siguin e1, , en i e1 , , en dues bases de lespai vectorial V . Si x = x1e1 + + xnen ix = x1e1

    + + xnen, expressem mitjancant matrius columna els components del vector x

    en les dues bases:

    X =

    x1...

    xn

    , X =

    x1...xn

    .

    Si expressem els vectors e1, , en en termes dels vectors de la base e1, , en, tindrem

    e1 = a11e1 + a21e2 + + an1en

    ei = a1ie1 + a2ie2 + + anien

    en = a1ne1 + a2ne2 + + annen

    Recordem que la matriu daquests coeficients en columna

    A =

    a11 a12 a1na21 a22 a2n...

    ... ...

    an1 an2 ann

    es lanomenada matriu de canvi de base i que es compleix X = AX . Tot aixo es general i eraconegut anterioriorment. Quant a la pregunta que ens hem formulat, la resposta es resumeixen el resultat de lapartat seguent (on ens referim a les notacions anteriors).

    3.6.2 Matrius ortogonals

    Teorema 3.5 Si A es la matriu de canvi entre bases ortonormals, aleshores es compleix:

    1. AAT = ATA = I (es a dir: A1 = AT )

    2. detA = 1.

    Demostracio 1) De les expressions

    ei =

    nk=1

    akiek, ej =

    nm=1

    amjem,

  • 74 Geometria per a la informatica grafica i CAD

    nobtenim, en general,

    ei ej

    = (n

    k=1

    akiek) (n

    m=1

    amjem) =n

    k,m=1

    akiamj(ek em),

    i si les bases son ortonormals, aleshores resulta

    ij =n

    k,m=1

    akiamjkm =n

    k=1

    akiakj , i, j = 1 n.

    Aquestes son les anomenades condicions dortonormalitat ; ara be, aquestes relacions es conden-sen matricialment en les igualtats, com es pot comprovar immediatament:

    AAT = ATA = I,

    tal com es volia demostrar.

    2) Es una simple consequencia d1). Utilitzem que en general es det(MN) = detM detN ,i que detCT = detC; de I = AAT es deriva que 1 = det I = det(AAT ) = detAdetAT =detAdetA = (detA)2, don resulta detA = 1.

    Definicio 3.12 Les matrius M que satisfan la condicio MMT = MTM = I, es a dir, aquellesper a les quals la inversa resulta ser la transposta, sanomenen matrius ortogonals.

    3.6.3 Canvis de sistemes de coordenades cartesianes

    Suposem que fem un canvi de coordenades cartesianes i passem del sistema S = (O; {e1, , en})

    al sistema S = (O; {e1 , , en }), essent W =OO en la referencia S, i A la matriu de canvi

    de base, corresponent al canvi deixos de coordenades. Aleshores tenim X = AX + W i, engeneral, si volem obtenir les coordenades noves en funcio de les antigues, cal escriure X =A1(X W ) = A1X A1W . En el cas particular del canvi entre sistemes de coordenadescartesianes, resulta la simplificacio

    X = ATX ATW = AT (X W ).

    Aixo representa una simplificacio computacional, ja que no cal calcular la inversa de la matriude canvi de base i, a mes, lobtenim sense errors daproximacio a partir de A.

    Observacions

    Un canvi entre bases ortonormals conserva lorientacio depenent del signe de detA; en efecte,lorientacio es conserva si, i nomes si, detA = 1.

    Un cas especial es el del canvi de coordenades cartesianes per rotacio deixos en el pla (ianalogament a lespai). Els detalls es presenten a la seccio seguent.

    3.6.3.1 Rotacio deixos en el pla

    Un cas particular especialment important es el de la rotacio dels eixos cartesians del pla, origi-nalment perpendiculars, rotacio dangle en sentit antihorari respecte de lorigen.

    Teorema 3.6 Les equacions del canvi de coordenades per rotacio dels eixos rectangulars delpla respecte de lorigen de coordenades i dangle son les seguents:

  • 3 Geometria metrica i aplicacions 75

    {x = x cos y sin y = x sin + y cos

    Demostracio

    Considereu lesquema de la figura 3.21.

    Utilitzant les propietats elementals (que suposem conegudes) de les rotacions en el pla tenimque els vectors de la base e1 = (1, 0), e2 = (0, 1) es transformen, respectivament, en e1

    i e2

    (figura 3.21),

    (1, 0)e1

    e11

    (0, 1)

    e2e2 Figura 3.21

    i tenim en la base {e1, e2}: e1 = (cos , sin ), e2 = ( sin , cos )

    Aleshores, la matriu de canvi de base es(cos sin sin cos

    )

    amb la qual cosa resulten les equacions(xy

    )=

    (cos sin sin cos

    )(x

    y

    )i

    (x

    y

    )=

    (cos sin sin cos

    )(xy

    )

    ja que es pot veure immediatament que la inversa de la matriu(cos sin sin cos

    )es la matriu

    (cos sin sin cos

    )

    i, en tot cas, esta justificat pel teorema anterior.

    Aixo acaba la demostracio.

    En el llenguatge de Mathematica es pot programar ara el canvi de coordenades de manera quees consideri la possibilitat que el canvi es faci entre bases ortonormals, cas que es consideraper defecte en el codi seguent. En el codi, com es pot observar, es tradueix aquest fet amblexpressio de la inversa de la matriu de canvi com a transposta. Aquest codi completa el queja es va presentar al captol 1.

    1: canviCoordenades2D[2: objecte_,3: M_, (*matriu canvi de base:nous vectors per files *)4: W_, (*nou origen*)5: NA_:1, (*1:de noves a antigues, 0: dantigues a noves*)

  • 76 Geometria per a la informatica grafica i CAD

    6: O_:1 (*1: M matriu ortogonal, 0: M no ortogonal*)7: ]:=8: Module[{Q,QI},9: Q=Transpose[N[M]]; (*matriu canvi de base per columnes*)10: QI=If[O==1,Transpose[Q],Inverse[Q]];(*inversa*)11: If[NA==1,12: N[objecte]/.{a_?NumberQ,b_?NumberQ}->Q.{a,b}+W,13: N[objecte]/.{a_?NumberQ,b_?NumberQ}->QI.({a,b}-W)14: ]15: ]16:17: canviCoordenades3D[18: objecte_,19: M_, (*matriu canvi de base:nous vectors per files *)20: W_, (*nou origen*)21: NA_:1, (*1:de noves a antigues, 0: dantigues a noves*)22: O_:1 (*1: M matriu ortogonal, 0: M no ortogonal*)23: ]:=24: Module[{Q,QI},25: Q=Transpose[N[M]]; (*matriu canvi de base per columnes*)26: QI=If[O==1,Transpose[Q],Inverse[Q]];(*inversa*)27: If[NA==1,28: N[objecte]/.{a_?NumberQ,b_?NumberQ,c_?NumberQ}->Q.{a,b,c}+W,29: N[objecte]/.{a_?NumberQ,b_?NumberQ,c_?NumberQ}->QI.({a,b,c}-W)30: ]31: ]

    Es pot considerar tambe una variant especfica per a la rotacio deixos en el pla:

    1: canviCoordenades2D2[objecte_,angle_,2: W_, (*nou origen*)3: NA_:1 (*1:de noves a antigues, 0: dantigues a noves*)4: ]:=5: Module[{Q,QI,M},6: M={7: {Cos[angle],Sin[angle]},8: {-Sin[angle],Cos[angle]}9: };10: Q=Transpose[N[M]]; (*matriu canvi de base per columnes*)11: QI=Transpose[Q];(*inversa*)12: If[NA==1,13: N[objecte]/.{a_?NumberQ,b_?NumberQ}->Q.{a,b}+W,14: N[objecte]/.{a_?NumberQ,b_?NumberQ}->QI.({a,b}-W)15: ]16: ]

    3.7 Equacio metrica del pla i aplicacions

    En aquest apartat es tracta destudiar alguns dels problemes mes tpics en termes de geometriaanaltica, es a dir, en termes de coordenades, que suposarem cartesianes. Totes les formules quesobtindran son molt importants en informatica grafica. Dentre els problemes que tractarem,en la seva versio analtica, esmentem els seguents: equacio metrica dun pla, perpendicular dunpunt a un pla, projeccio ortogonal dun punt a un pla, i distancia entre varietats.

  • 3 Geometria metrica i aplicacions 77

    En aquest apartat i en apartats posteriors es presenten diverses maneres de resoldre uns ma-teixos problemes amb diverses aproximacions i diverses tecniques; es una duplicitat que hembuscat expressament a benefici del lector.

    Recordem que un vector es normal a un pla si es ortogonal a tot vector sobre el pla, es a dir,a tota combinacio lineal dels vectors duna base del subespai director del pla. Alternativament,en termes no vectorials, una recta es perpendicular a un pla si, i nomes si, ho es a totes lesrectes del pla (i per garantir-ho nhi ha prou que ho sigui a dues no paral.leles). Aleshores, unvector es normal a un pla si les rectes, la direccio de les quals determina, son perpendiculars alpla.

    3.7.1 El resultat fonamental: equacio metrica del pla

    Amb independencia del sistema de coordenades, lequacio del pla es de la forma ax + by +cz + d = 0. En el cas de coordenades cartesianes podem assignar significat metric al vectorN = (a, b, c), format a partir dels coeficients de lequacio anterior o, equivalentment, podeminterpretar metricament lequacio del pla. Tot aixo es resumeix en el teorema seguent:

    Teorema 3.7 Suposem en R3 una referencia cartesiana, a la qual referim les equacions i elsvectors daquest enunciat. Aleshores el vector

    N = (a, b, c) es normal al pla dequacio ax+

    by + cz + d = 0, d.

    Demostracio Suposem d = 0. Aleshores el pla passa per lorigen de coordenades, com potcomprovar-se immediatament.

    O P

    Figura 3.22

    Aleshores, donat que estem treballant en base ortonor-mal, lequacio ax + by + cz = 0 equival a (a, b, c) (x, y, z) = 0, es a dir, a

    N

    OP = 0, per a qualse-

    vol P . Aixo demostra queN es ortogonal a tot

    OP , per a tot P , i, en consequencia, es ortogonalal pla .

    Si d = 0, podem considerar el pla donat per ax+by+cz = 0, que obviament passa per lorigen i es paral.lel alpla , ja que el sistema format per les dues equacionsdels plans es incompatible, ates que d = 0, i ara podem

    aplicar a el que sha dit en el cas anterior, en el qual el terme independent es nul. Per tant,N es ortogonal a i, per paral.lelisme, a .

    Daquest resultat es deriven immediatament consequencies molt utils, sempre que es treballi encoordenades cartesianes, com tindrem ocasio de veure.

    Expressio vectorial dun pla. Com a consequencia del resultat podem reexpressar lequacio delpla en termes vectorials com

    N

    X + d = 0, o tambe, si el pla passa pel punt A, el podem

    expressar comN (X A) = 0. Lequacio dun pla sexpressa tambe com

    N

    X = k.

    Plans orientats. Un pla esta determinat per un punt pel qual passa i la direccio o subespaidirector U , que es bidimensional. Escollir una base de U es establir una orientacio de U i,per extensio, del pla. Donat un pla, podem triar essencialment dentre dues normals. Podemorientar un pla escollint una normal

    N dacord amb el procediment seguent: sescull una base

    {u1, u2} de U de tal manera que {u1, u2,N } sigui una base de la mateixa orientacio que la de

    lespai orientat, es a dir, tal que dete(u1, u2,N ) > 0.

    Angle de dos plans. Te dues accepcions. En la primera, langle que formen dos plans devectors normals N1, N2 es el mnim dels angles angle(N1, N2), angle(N1, N2). Com es veu,

  • 78 Geometria per a la informatica grafica i CAD

    esta compres entre 0 i /2 i es pot calcular tambe per

    arccos|N1 N2|

    N1N2

    En la segona, si els plans estan orientats per les normals N1, N2, aleshores langle que formenels plans orientats es simplement langle (en [0, ]) que formen els vectors N1, N2, es a dir

    arccosN1 N2

    N1N2

    En aquest cas depen de lorientacio o eleccio de normals. En la primera accepcio nomes dependels plans.

    Angle de recta i pla. Hi ha tambe diverses accepcions possibles. En una primera accepcio, eslangle de la recta i la projeccio ortogonal de la recta sobre el pla, cosa que ens porta a daltresproblemes, que es tractaran posteriorment. En una segona accepcio, si u es un vector directorde la recta i v es un vector perpendicular al pla, es defineix langle entre la recta i el pla com elmnim de angle(u,v) i angle(u,v); varia entre 0 i /2. En una tercera accepcio, es considerala recta orientada per un vector director, el pla orientat per una eleccio de vector normal ilangle com a varietats orientades es langle que formen els vectors esmentats.

    3.7.2 Rectes i plans perpendiculars

    Considerem una recta r de vector director u = (u1, u2, u3) i el pla dequacio ax+by+cz+d = 0.

    Aleshores el vectorN = (a, b, c) es normal al pla i, en consequencia, la perpendicularitat de

    r i equivaldra a la condicio de serN ,u linealment dependents; aquesta es la clau per resoldre

    els problemes seguents.

    3.7.2.1 Recta per un punt que es perpendicular a un pla

    Considerem el punt M = (x0, y0, z0) i el pla : ax+by+cz+d = 0. Es suficient prendre com a

    vector director de la recta el vectorN = (a, b, c). Aix, lequacio de la recta sera X = M + t

    N ,

    o be en forma parametricoescalar,

    x = x0 + tay = y0 + tbz = z0 + tc

    M

    M

    Figura 3.23

    3.7.2.2 Projeccio ortogonal dun punt sobre un pla

    Considerem el pla : ax+by+cz+d= 0 i el punt M = (x0, y0, z0) i suposem que volem trobarla projeccio ortogonal M del punt M sobre el pla . La projeccio buscada es la interseccioamb de la recta per M perpendicular al pla, de la qual tenim les equacions parametrico-escalars de lapartat anterior. Per trobar el punt dinterseccio imposem que un punt genericde la recta sigui tambe del pla, i despres trobarem el valor del parametre t1 corresponent a lainterseccio; posteriorment obtindrem el punt dinterseccio a partir de les equacions de la recta.De a(x0 + ta) + b(y0 + tb) + c(z0 + tc) + d = 0obtenim

    t1 = ax0 + by0 + cz0 + d

    a2 + b2 + c2=

    N

    M + d

    N

    N

    ,

  • 3 Geometria metrica i aplicacions 79

    onN = (a, b, c), i daquesta manera podem trobar la projeccio M = (x0, y

    0, z

    0):

    M = M N

    M + d

    N

    N

    N .

    En coordenades seria

    x0 = x0 aax0 + by0 + cz0 + d

    a2 + b2 + c2

    y0 = y0 bax0 + by0 + cz0 + d

    a2 + b2 + c2

    z0 = z0 cax0 + by0 + cz0 + d

    a2 + b2 + c2

    Es pot calcular en termes vectorials des del principi: en efecte, els punts de la recta son dela forma X = M +

    N i els punts del pla son els que satisfan

    N (X A) = 0, on A es un

    punt del pla. Calcularem la projeccio ortogonal segons la idea anterior, obtenint 0 que satisfaN (M + 0

    N A) = 0 mitjancant manipulacions algebraiques simples:

    N (M +

    N A) = 0

    N

    M +

    N

    N

    N

    A = 0

    0 =N

    A

    N

    M

    N

    N

    M = M + 0N .

    Si haguessim partit de lequacio del pla en la formaN

    X + d = 0 haguessim obtingut un

    resultat exactament coincident amb les formules anteriors.

    Sempre que sigui possible es recomanable treballar vectorialment (fins i tot el mateix patrodeductiu i la mateixa manipulacio algebraica es podrien repetir en el cas bidimensional, en elqual el problema seria el de projectar ortogonalment un puntM sobre una recta que passa per Ai te vector director u = (a, b); si w = (b, a), aleshores la recta sexpressa com w(XA) = 0 i espodria raonar de manera similar). Es tambe interessant disposar de resolucions de problemes enformulacio vectorial ja les formules solen ser tradubles directament a llenguatges dalt nivell,com els de Mathematica o Maple. En aquest cas, podrem escriure trivialment el codi enMathematica per obtenir la projeccio ortogonal dun punt sobre un pla.

    3.7.2.3 Equacio del pla que passa per un punt i es perpendicular a una rectadonada

    Sigui M = (x0, y0, z0) el punt pel qual ha de passar el pla, i suposem que la recta es de vectordirector u = (a, b, c). Aleshores el pla ax+ by + cz + d = 0 es perpendicular a la recta. Nomescal finalment imposar que passi per M per tal dobtenir d, es a dir, ax0 + by0 + cz0 + d = 0.Resulta d = ax0 by0 cz0. Substituint sarriba a lequacio buscada:

    a(x x0) + b(y y0) + c(z z0) = 0.

    O be, en termes de producte escalar, u (X

    M) = 0, si

    X = (x, y, z).

  • 80 Geometria per a la informatica grafica i CAD

    Aquests calculs tambe shaguessin pogut fer enterament de manera vectorial; en efecte, lequaciodel pla perpendicular a la recta es de la forma u

    X + d = 0, don d = u

    M . Substituint,

    ens queda u X u

    M = 0, es a dir u (

    X

    M ) = 0.

    3.7.2.4 Projeccio ortogonal dun punt sobre una recta 3D

    Sigui M la projeccio ortogonal del punt M0 = (x0, y0, z0) sobre la recta r que passa perM1 = (x1, y1, z1) i es de vector director u = (a, b, c), dequacio

    x = x1 + tay = y1 + tbz = z1 + tc

    El punt M que busquem es la interseccio del pla perpendicular a la recta r que passa perM , pla dequacio

    a(x x0) + b(y y0) + c(z z0) = 0.

    Per trobar aquesta interseccio sera suficient substituir:

    a(x1 + ta x0) + b(y1 + tb y0) + c(z1 + tc z0) = 0,

    don sobte

    t1 =a(x0 x1) + b(y0 y1) + c(z0 z1)

    a2 + b2 + c2=

    u (M0 M1)

    u u,

    i ara substitum a lequacio parametrica de la recta per obtenir el punt corresponent.

    Vegem com a exemple que podem fer tots els calculs a nivell vectorial:

    u (X M0) = 0

    u ((M1 + tu)M0) = 0

    u M1 + t(u u) u M = 0

    t =u (M0 M1)

    u uM = M0 + tu

    Es podria escriure immediatament el codi en Mathematica per al calcul de la projeccio:

    Mprojeccio=M0+(u.(M0-M1)/(u.u)*u

    En el cas bidimensional es podra resoldre posteriorment el problema amb la projeccio vectorialdun vector sobre una direccio, o be es podria fer alguna argumentacio similar utilitzant que,si u = (a, b) es un vector director de la recta, aleshores w = (b, a) es un vector ortogonal itambe podem expressar la recta en la forma w (X A) = 0, essent A un punt de la recta.

    c: Els autors, 1999; Edicions UPC, 1999.