Parametrisk form
Linje
La oss se på en rett linje i planet som et første, enkelt eksempel.
Trekantene P1,A,P og P1,B,P2 er likedannede og vi kan sette opp følgende:
og finne f.eks. y uttrykt ved koordinatene til de to kjente punktene og x.
Alternativt kan vi sette opp en parametrisk ligning for linja. Med parametrisk forstår vi at uttrykket skal inneholde en parameter, t, som endrer seg når vi løper langs med linja. For en linje i planet får vi to parametriske uttrykk, ett for x og et for y. Siden vi har en linje, blir begge lineære.
P=P1+t·(P2-P1) x(t)=x1+(x2-x1)·t y(t)=y1+(y2-y1)·t
Vi ser at x(0)=x1 og y(0)=y1, og x(1)=x2 og y(1)=y2. Siden uttrykkene er lineære kan vi slutte at når t løper fra 0 til 1, så løper x og y fra P1 til P2.
En parametrisk form gir oss kontroll over linjestykkets lengde, ikke bare linjeretningen.
Selv dette enkle eksempelet kan være nyttig i en del situasjoner. Dersom vi skal gjennomføre en animasjon i form av en rettlinjet bevegelse, kan vi styre animasjonen ved hjelp av å gå små steg med t. Vi kan kontrollere hastigheten ved å variere t-stegene. Mer sammensatte bevegelser kan styres ved en sekvens av lineære bevegelser, dersom vi ikke finner på noe lurere.
En utvidelse til linjer i rommet er triviell. Dersom vi kjenner endepunktene: P1(x1,y1,z1) og P2(x2,y2,z2), får vi:
P=P1+t·(P2-P1) x(t)=x1+(x2-x1)·t y(t)=y1+(y2-y1)·t z(t)=z1+(z2-z1)·t
Sirkel
Den vanlige måten å skrive en sirkel på er
som kjent:
Parametrisk kan vi skrive dette som:
Når t løper fra 0 til 1, løper vinkelargumentet en full sirkel,
og punktet ( x(t) , y(t) ) beskriver en sirkel.
Eller vi kan like gjerne skrive:
Vi ser at vi har en hendig mekanisme for å regne ut sirkler og sirkelsegmenter.
Husk: at de trigonometriske funksjonene i C, C++ og Java forventer radianer som parameter, mens rotasjonsfunksjonen i OpenGL forventer grader.
Spiral
En del av en spiral i rommet, omkring z-aksen, kan vi skrive som:
Der k angir avstanden mellom to ringer i spiralen. Dersom vi lar t løpe over et større intervall, f.eks. 0..5 vil vi får 5 omdreininger på spiralen.
Dersom vi lar radien være en funksjon av t, så kan vi lage en spiral som f.eks. omslutter en kjegle.
Kule
En kule beskriver vi vanligvis slik, med radius r:
Parametrisk kan vi skrive koordinatene for et punkt på kula slik:
Ellipse
En ellipse skrives vanligvis slik:
Piet Hein, den danske poet og tusenkunstner, lanserte sin superellipse etter følgende formel:
Når eksponenten øker, endres formen på ellipsen i retning av en firkant. Piet Hein mente at 2.5 gir en vakker form. Han formga Sergels torg i Stockholm som en superellipse der de to radiene forholdt seg til hverandre som 5:6.
Parametrisk beskriver vi en ellipse slik:
En superellipse med utgangspunkt i den parametriske beskrivelse får vi dersom vi opphøyer cos og sinus i en faktor, n. Merk at her blir ellipsen mer lik en firkant når n går mot 0. Dersom rx=ry får vi en sirkel når n=1.
Ellipsoide
I tre dimensjoner kan vi beskrive en elliptisk form slik:
På parametrisk form:
En superellipsoide får vi igjen ved å opphøye cos og sin i faktorer:
Normalen i et punkt på overflaten av en superellipse kan beskrives ved:
Disse uttrykkene er tilstrekkelig til at vi kan beregne, og derved tegne, en superellipse. Vi lar de to vinkelparameterne løpe i en dobbeltløkke, regner ut nabopunkter og bruker OpenGLs tegnekommandoer for å generere flater.
Torus
En torus, eller en smultring er tilsynelatende en relativt komplisert matematisk figur. Vi vil forsøke å finne en parametrisk beskrivelse av et punkt p på smultringens overflate.
Smultringen er komplett beskrevet ved de to aktuelle radiene: en hovedradius på R og radien i selve smultringens kropp r. Vi ønsker å finne to parametere som kombinerer de to rotasjonene som er nødvendige for å identifisere et punkt entydig, en om hovedaksen og en om selve smultringkroppens akse.
Normalen i hvert punkt kan vi finne ved å tenke oss en "omhyllende" smultring. Normaler vil gå fra den indre smultringen til den ytre, med samme vinkelverdier.
Vi lar w beskrive rotasjonen om selve smultringens hovedakse, "hullet", og lar v beskrive rotasjonen rundt selve smultringkroppen. Vi tegner smultringen i to projeksjoner:
Ved å studere de to projeksjonene kan vi overbevise oss om at punktet p's koordinater er:
Vi kan altså beskrive et vilket som helst punkt på smultringens overflate ved de tre parametriske ligningene ovenfor. Da er vi også i stand til å avgrense flater på smultringoverflaten med nødvendig presisjon og vi er i stand til å beregne normaler på disse flatene enten ved hjelp av kryssproduktet, eller basert på observasjonen ovenfor.
Et program for å eksperimentere med ellipsoider og toruser (C#): ellipsoide.zip