Skärningskurva

Inom geometri är en skärningskurva en kurva som är gemensam för två geometriska objekt. I det enklaste fallet skärningspunkten mellan två icke-parallella plan i det euklidiska 3-rummet en linje . I allmänhet består en skärningskurva av de gemensamma punkterna för två tvärgående ytor som skär varandra, vilket betyder att ytnormalerna inte är parallella vid någon gemensam punkt . Denna begränsning utesluter fall där ytorna rör vid varandra eller har ytdelar gemensamma.

Skärningen mellan två plan

Den analytiska bestämningen av skärningskurvan för två ytor är lätt endast i enkla fall; till exempel: a) skärningen av två plan, b) plan sektion av en kvadratisk (sfär, cylinder, kon, etc.), c) skärning av två kvadrater i speciella fall. För det allmänna fallet tillhandahåller litteraturen algoritmer för att beräkna punkter i skärningskurvan för två ytor.

Skärningslinje mellan två plan

Givet: två plan linjärt oberoende , dvs planen är inte parallella.

Önskad: En parametrisk representation av skärningslinjen.

Riktningen på linjen man får från korsprodukten av normalvektorerna: .

En punkt för skärningslinjen kan bestämmas genom att skära de givna planen med planet som är vinkelrät mot och . Att infoga den parametriska representationen av i ekvationerna för och ger parametrarna och .

Exempel:

Normalvektorerna är och skärningslinjens riktning är . För punkt får man från formeln ovan Därför

är en parametrisk representation av skärningslinjen.

Anmärkningar:

  1. I speciella fall kan bestämningen av skärningslinjen genom den Gaussiska elimineringen vara snabbare.
  2. Om ett (eller båda) planen ges parametriskt av , man får som normalvektor och ekvationen är: .

Skärningskurva för ett plan och en quadric

I vilket fall som helst är skärningskurvan för ett plan och en quadric (sfär, cylinder, kon,...) en konisk sektion . För detaljer, se. En viktig tillämpning av plana sektioner av quadris är konturlinjer av quadrics. I vilket fall som helst (parallell eller central projektion) är konturlinjerna för quadrics koniska sektioner. Se nedan och Umrisskonstruktion .

Skärningskurva för en cylinder eller kon och en quadric

Det är en lätt uppgift att bestämma skärningspunkterna för en linje med en quadric (dvs. linjesfär ) ; man behöver bara lösa en andragradsekvation. Så, varje skärningskurva för en kon eller en cylinder (de genereras av linjer) med en quadric består av skärningspunkter för linjer och quadric (se bilder).

Bilderna visar de möjligheter som uppstår när en cylinder och en sfär skärs:

  1. I det första fallet finns det bara en skärningskurva.
  2. Det andra fallet visar ett exempel där skärningskurvan består av två delar.
  3. I det tredje fallet berör sfären och cylindern varandra i en enda punkt. Skärningskurvan är självkorsande.
  4. Om cylindern och sfären har samma radie och sfärens mittpunkt är belägen på cylinderns axel, så består skärningskurvan endast av singulära punkter (en cirkel).

Allmänt fall: marscheringsmetod

Skärningskurva: principen för marschalgoritmen

I allmänhet finns det inga speciella funktioner att utnyttja. En möjlighet att bestämma en polygon av punkter i skärningskurvan för två ytor är marschmetoden (se avsnittet Referenser ). Den består av två väsentliga delar:

  1. Den första delen är kurvpunktsalgoritmen , som bestämmer till en startpunkt i närheten av de två ytorna en punkt på skärningskurvan. Algoritmen beror i huvudsak på representationen av de givna ytorna. Den enklaste situationen är när båda ytorna är implicit givna av ekvationerna , eftersom funktionerna ger information om avstånden till ytorna och visar via gradienterna vägen till ytorna. Om en eller båda ytorna är parametriskt givna existerar inte fördelarna med det implicita fallet. I det här fallet använder kurvpunktsalgoritmen tidskrävande procedurer som bestämningen av fotpunkten för en vinkelrät på en yta.
  2. Den andra delen av marschmetoden börjar med en första punkt på skärningskurvan, bestämmer skärningskurvans riktning med hjälp av ytnormalerna, gör sedan ett steg med en given steglängd i riktning mot tangentlinjen, för att få en startpunkt för en andra kurvpunkt, ... (se bild).

För detaljer om marschalgoritmen, se.

Marschmetoden producerar för varje startpunkt en polygon på skärningskurvan. Om skärningskurvan består av två delar måste algoritmen utföras med en andra bekväm startpunkt. Algoritmen är ganska robust. Vanligtvis är singular punkter inga problem, eftersom chansen att träffa exakt en singular punkt är mycket liten (se bild: skärningspunkten mellan en cylinder och ytan ).

Användning: konturlinje

En punkt av konturlinjen för en implicit yta med ekvation och parallell projektion med riktning måste uppfylla villkoret } vara en tangentvektor, vilket betyder att varje konturpunkt är en punkt i skärningskurvan för de två implicita ytorna

.

För quadrics är alltid en linjär funktion. Därför är konturlinjen för en quadric alltid en plan sektion (dvs. en konisk sektion).

Ytans konturlinje (se bild) spårades med marschmetoden.

Anmärkning: Bestämningen av en konturpolygon för en parametrisk yta behöver spåra en implicit kurva i parameterplan.

Villkor för konturpunkter: .

Skärningskurva för två polyeder

Skärningskurva mellan polyeder: tre hus
Skärning av polyeder: två tori

Skärningskurvan för två polyedrar är en polygon (se skärningspunkten mellan tre hus). Visningen av en parametriskt definierad yta görs vanligtvis genom att kartlägga ett rektangulärt nät i 3-rum. De rumsliga fyrkanterna är nästan platta. Så, för skärningen av två parametriskt definierade ytor, kan algoritmen för skärningen av två polyedrar användas. Se bild på korsande tori.

Se även

Vidare läsning

  • C:L: Bajaj, CM Hoffmann, RE Lynch: Spåra ytkorsningar , Comp. Hjälpte Geom. Design 5 (1988), sid. 285-307.
  • RE Barnhill, SN Kersey: A Marching method for parametrisk yta/ytkorsning , Comp. Hjälpte Geom. Design 7 (1990), sid. 257-280.
  • R. Barnhill, G. Farin, M. Jordan, B. Piper: Surface/Surface intersection , Computer Aided Geometric Design 4 (1987), s 3-16.