Wikipedia · einfach zusammengefasst · Stand
Schnittkurve
Unter einer Schnittkurve versteht man in der Geometrie im einfachsten Fall die Schnittgerade zweier nicht paralleler Ebenen des Anschauungsraumes.
Inhalt6 Abschnitte
Begriff und Grundidee
Eine Schnittkurve entsteht aus den gemeinsamen Punkten zweier Flächen. Im einfachsten Fall ist sie die Schnittgerade zweier nicht paralleler Ebenen. Im allgemeinen Fall bilden die gemeinsamen Punkte eine Kurve, wenn sich die Flächen transversal schneiden. Transversal bedeutet, dass die Flächennormalen in jedem gemeinsamen Punkt nicht auf derselben Geraden liegen. Dadurch werden Fälle ausgeschlossen, in denen sich die Flächen nur berühren oder ganze Flächenstücke gemeinsam haben.
Die analytische Bestimmung ist nur in einigen einfachen oder besonders gelagerten Fällen möglich. Dazu gehören die Schnittgerade zweier Ebenen, der Schnitt einer Ebene mit einer Quadrik sowie der Schnitt zweier Quadriken in besonderen Lagen, etwa von Rotationsquadriken mit derselben Rotationsachse. Für allgemeinere Flächen berechnet man meist viele Punkte der Schnittkurve und verbindet sie zu einem Polygonzug. In der darstellenden Geometrie gibt es für häufige technische Fälle, beispielsweise Zylinder-Kugel oder Zylinder-Kegel, zeichnerische Verfahren wie Hilfsebenenverfahren, Pendelebenenverfahren, Mantellinienverfahren und Hilfskugelverfahren.
Schnittgerade zweier Ebenen
Gegeben seien die Ebenen εᵢ: n⃗ᵢ · x⃗ = dᵢ für i = 1, 2. Die Normalenvektoren n⃗₁ und n⃗₂ müssen linear unabhängig sein; dann sind die Ebenen nicht parallel. Gesucht ist eine Parameterdarstellung x⃗ = p⃗ + t r⃗ der Schnittgeraden.
Die Richtung der Schnittgeraden erhält man aus dem Kreuzprodukt der Normalenvektoren:
r⃗ = n⃗₁ × n⃗₂.
Einen Punkt P mit Ortsvektor p⃗ erhält man, indem man die beiden Ebenen mit der zu ihnen senkrechten Ebene ε₃: x⃗ = s₁ n⃗₁ + s₂ n⃗₂ schneidet. Die Parameter s₁ und s₂ werden durch Einsetzen in die Gleichungen von ε₁ und ε₂ bestimmt. Direkt gilt:
p⃗ = [(d₁ n⃗₂² − d₂(n⃗₁ · n⃗₂)) / (n⃗₁² n⃗₂² − (n⃗₁ · n⃗₂)²)] n⃗₁ + [(d₂ n⃗₁² − d₁(n⃗₁ · n⃗₂)) / (n⃗₁² n⃗₂² − (n⃗₁ · n⃗₂)²)] n⃗₂.
Beispiel: Für ε₁: x + 2y + z = 1 und ε₂: 2x − 3y + 2z = 2 sind n⃗₁ = (1, 2, 1)ᵀ und n⃗₂ = (2, −3, 2)ᵀ. Damit ist r⃗ = n⃗₁ × n⃗₂ = (7, 0, −7)ᵀ. Ein Punkt der Schnittgeraden ist p⃗ = ½(1, 0, 1)ᵀ. Eine Parameterdarstellung lautet daher:
x⃗ = ½(1, 0, 1)ᵀ + t(7, 0, −7)ᵀ.
Alternativ kann man bei konkret gegebenen Ebenengleichungen den Gauß-Algorithmus verwenden. Ist eine Ebene parametrisch durch x⃗ = p⃗ + s v⃗ + t w⃗ gegeben, so erhält man mit n⃗ = v⃗ × w⃗ einen Normalenvektor und die Ebenengleichung n⃗ · x⃗ = n⃗ · p⃗.
Ebene und Quadrik
Eine Quadrik ist eine Fläche zweiten Grades, zum Beispiel eine Kugel, ein Kegel, ein Zylinder, ein Paraboloid oder ein Hyperboloid. Der Schnitt einer Ebene mit einer Quadrik ist immer ein Kegelschnitt. Die einzelnen ebenen Schnitte eines senkrechten Kreiskegels werden im Zusammenhang mit den Kegelschnitten behandelt; entsprechende Schnitte von Kugel, Zylinder, Paraboloid und Hyperboloid werden ebenfalls über die jeweilige Quadrik bestimmt.
Ebene Schnitte von Quadriken sind außerdem für die Bestimmung von Umrisskurven wichtig. Sowohl bei der Parallelprojektion als auch bei der Zentralprojektion sind die Umrisse von Quadriken ebene Schnitte. Bei allgemeineren Flächen sind Umrisskurven dagegen meistens keine ebenen Schnitte mehr.
Schnitt von Zylinder oder Kegel mit einer Quadrik
Zylinder und Kegel werden von Geraden erzeugt. Schneidet man eine solche Fläche mit einer Quadrik in impliziter Form, muss für jeden Schnittpunkt einer erzeugenden Geraden mit der Quadrik nur eine quadratische Gleichung gelöst werden. Für die Kugel x² + y² + z² = 1 ist das ein unmittelbarer Spezialfall. Auf diese Weise lassen sich beliebig viele Punkte der Schnittkurve berechnen und anschließend durch einen Polygonzug darstellen.
Beim Schnitt eines Zylinders mit einer Kugel können verschiedene Formen auftreten:
- Die Schnittkurve kann aus einer zusammenhängenden Kurve bestehen.
- Sie kann in zwei getrennte Kurven zerfallen.
- Zylinder und Kugel können sich in einem Punkt berühren. Dieser Punkt ist singulär, weil die Flächennormalen dort dieselbe Richtung haben. Die Schnittkurve durchdringt sich im Berührpunkt selbst.
- Haben Zylinder und Kugel denselben Radius und liegt der Mittelpunkt der Kugel auf der Zylinderachse, berühren sich beide Flächen in einem Kreis. Der gesamte Schnitt besteht dann aus singulären Punkten.
Verfolgung und Umrisskurven
Für allgemeinere Flächen verwendet man einen Verfolgungsalgorithmus, der einen Polygonzug aus Punkten der gesuchten Schnittkurve erzeugt. Er besteht aus zwei wesentlichen Teilen.
Erstens bestimmt ein von der Darstellung der Flächen abhängiger Kurvenpunkt-Algorithmus aus einem Punkt in der Nähe beider Flächen einen Punkt auf der Schnittkurve. Bei implizit gegebenen Flächen ist dies vergleichsweise einfach und schnell: Die Flächenfunktionen können auch in der Umgebung ausgewertet werden, und ihre Gradienten weisen den Weg auf die Flächen. Bei parametrisierten Flächen fehlen diese Informationen; dort verwendet man unter anderem Algorithmen zur Bestimmung von Lotfußpunkten auf den Flächen.
Zweitens geht der Algorithmus von einem bekannten Kurvenpunkt aus. Das Kreuzprodukt der beiden Flächennormalen liefert dort eine Tangente an die Schnittkurve. In Tangentenrichtung wird um eine festgelegte Schrittweite weitergegangen. Der so erhaltene Punkt dient als neuer Startpunkt für den Kurvenpunkt-Algorithmus, der den nächsten Kurvenpunkt berechnet.
Der Verfolgungsalgorithmus verfolgt immer nur eine zusammenhängende Schnittkurve. Gibt es mehrere getrennte Schnittkurven, muss er mit geeigneten Startpunkten mehrfach ausgeführt werden. In der Praxis ist das Verfahren relativ robust und kann auch einzelne Singularitäten meist problemlos überqueren, weil es sehr unwahrscheinlich ist, zufällig genau einen singulären Punkt zu treffen.
Für eine implizite Fläche f(x,y,z) = 0 und eine Parallelprojektion in Richtung v⃗ erfüllt ein Umrisspunkt zusätzlich die Bedingung g(x,y,z) = ∇f(x,y,z) · v⃗ = 0. Die Umrisskurve ist somit die Schnittkurve der beiden impliziten Flächen f(x,y,z) = 0 und g(x,y,z) = 0. Bei Quadriken ist g immer linear; deshalb ist ihre Umrisskurve ein ebener Schnitt. Für eine parametrisierte Fläche x⃗ = x⃗(s,t) lautet die Umrissbedingung g(s,t) = (x⃗ₛ(s,t) × x⃗ₜ(s,t)) · v⃗ = 0.
Schnittkurven zwischen Polyedern
Die Schnittkurve zweier Polyeder ist ein Polygon. Werden parametrisierte Flächen durch Vierecksnetze dargestellt und sind die einzelnen Vierecke annähernd eben, kann man die Schnittkurve als Schnittpolygon der jeweiligen Facetten bestimmen. Ein geeigneter Algorithmus berechnet aus den betroffenen Facetten der beiden Polyeder das gemeinsame Schnittpolygon.