Was sind NURBS?

NURBS, Non-Uniform Rational B-Splines, sind mathematische Darstellungen, die beliebige Formen von einfachen 2D-Linien, -Kreise, -Bogen oder -Kurven bis hin zu hoch komplexen organischen 3D-Freiformflächen und -Volumenkörpern darstellen können. Aufgrund ihrer Flexibilität und Genauigkeit können NURBS-Modelle in allen Prozessen von Illustration und Animation bis hin zur Fertigung verwendet werden.

Die NURBS-Geometrie verfügt über fünf wichtige Merkmale, die sie zur idealen Lösung für die computergestützte Modellierung machen.

  • Es werden verschiedene branchenübliche Methoden verwendet, um NURBS-Geometrie auszutauschen. Daher können Kunden ihre wertvolle Geometriemodelle zwischen den verschiedenen Modellierungs-, Render-, Animations- und Analyseprogrammen verschieben.
  • NURBS verfügen über eine genaue und bekannte Definition. An den meisten bedeutenden Universitäten wird die Mathematik wie auch die Computerwissenschaft der NURBS-Geometrie gelehrt. Das bedeutet, dass Anbieter von Spezialsoftware, Ingenieurgruppen, Industriedesignfirmen und Animationshäuser, die benutzerdefinierte Software-Anwendungen erzeugen, geschulte Programmierer finden können, die sich in der NURBS-Geometrie auskennen.
  • NURBS kann sowohl geometrische Objekte wie Linien, Kreise, Ellipsen, Kugeln, Tori als auch Freiformgeometrien wie Autokarosserien und menschliche Körper genau darstellen.
  • Die zur NURBS-Darstellung einer Geometrie nötige Information ist viel geringer als die Information, die für übliche facettierte Annäherungen benötigt wird.
  • Die im Folgenden besprochene NURBS-Bewertungsregel kann effektiv und genau auf einem Computer durchgeführt werden.

Was ist NURBS-Geometrie?

NURBS-Kurven und -Flächen verhalten sich ähnlich und haben eine gemeinsame Terminologie. Da Kurven am einfachsten zu beschreiben sind, werden wir sie genauer betrachten. Eine NURBS-Kurve wird durch vier Dinge definiert: Grad, Kontrollpunkte, Knoten und Bewertungsregel.

Grad

Der Grad ist eine positive Ganzzahl.

Diese Zahl ist normalerweise 1, 2, 3 oder 5, kann aber jede beliebige positive Ganzzahl sein. NURBS-Linien und -Polylinien weisen normalerweise einen Grad von 1, NURBS-Kreise einen Grad von 2 und die meisten Freiformkurven einen Grad von 3 oder 5 auf. Manchmal werden die Begriffe linear, quadratisch, kubisch und quintisch verwendet. Linear bedeutet Grad 1, quadratisch Grad 2, kubisch Grad 3 und quintisch Grad 5.

Sie sehen vielleicht Referenzen zur Ordnung einer NURBS-Kurve. Die Ordnung einer NURBS-Kurve ist eine positive Ganzzahl gleich wie (Grad+1). Demzufolge ist der Grad gleich der (Ordnung-1).

Es ist möglich, den Grad einer NURBS-Kurve zu erhöhen, aber nicht ihre Form zu verändern. Es ist jedoch im Allgemeinen nicht möglich, den Grad einer NURBS-Kurve zu reduzieren, ohne ihre Form zu ändern.

Kontrollpunkte

Kontrollpunkte sind eine Liste von Punkten mit mindestens Grad+1.

Eine der einfachsten Methoden, die Form einer NURBS-Kurve zu verändern, besteht darin, ihre Kontrollpunkte zu verschieben.

Die Kontrollpunkte haben eine angegliederte Zahl, die Wichtung genannt wird. Bis auf einige Ausnahmen sind Wichtungen positive Zahlen. Wenn die Kontrollpunkte einer Kurve alle dieselbe Wichtung (normalerweise 1) haben, wird die Kurve nicht- rational genannt. Andernfalls wird die Kurve rational genannt. Das R in NURBS steht für rational und weist darauf hin, dass für eine NURBS-Kurve die Möglichkeit besteht, rational zu sein. In der Praxis sind die meisten NURBS-Kurven nicht-rational. Manche NURBS-Kurven - Kreise und Ellipsen sind herausragende Beispiele - sind immer rational.

Knoten

Knoten sind eine Liste von Zahlen mit (Grad+N-1), wobei N für die Anzahl Kontrollpunkte steht. Manchmal wird diese Zahlenliste auch Knotenvektor genannt. In diesem Zusammenhang bedeutet das Wort Vektor nicht 3D-Richtung.

Diese Liste von Knotenzahlen muss einige technische Bedingungen erfüllen. Standardmäßig wird die Erfüllung der technischen Bedingungen durch die Voraussetzung garantiert, dass die Zahlen gleich bleiben oder größer werden, während Sie in der Liste abwärts gehen, und die Anzahl duplizierter Werte auf eine Zahl nicht größer als den Grad begrenzen. Für eine NURBS-Kurve vom Grad 3 mit 11 Kontrollpunkten ist die Zahlenliste 0,0,0,1,2,2,2,3,7,7,9,9,9 eine zufriedenstellende Knotenliste. Die Liste 0,0,0,1,2,2,2,2,7,7,9,9,9 ist inakzeptabel, weil die Zwei viermal vorkommt und Vier größer als der Grad ist.

Die Anzahl Male, die ein Knotenwert dupliziert wird, wird Vielfalt des Knotens genannt. Im vorherigen Beispiel einer zufriedenstellenden Knotenliste verfügt der Knotenwert 0 über eine Vielfalt von drei, der Knotenwert 1 über eine Vielfalt von eins, der Knotenwert 2 eine Vielfalt von drei, der Knotenwert 3 eine Vielfalt von eins, der Knotenwert 7 eine Vielfalt von zwei und der Knotenwert 9 eine Vielfalt von drei. Ein Knotenwert ist ein voller Vielfaltsknoten, wenn der Grad mehrfach dupliziert ist. Im Beispiel haben die Knotenwerte 0, 2 und 9 volle Vielfalt. Ein Knotenwert, der nur einmal vorkommt, wird einfacher Knoten genannt. Im Beispiel sind die Knotenwerte 1 und 3 einfache Knoten.

Wenn eine Knotenliste mit einem vollen Vielfaltsknoten beginnt, von einfachen Knoten gefolgt wird, mit einem vollen Vielfaltsknoten endet und die Werte einen gleichmäßigen Abstand aufweisen, werden die Knoten uniform (einheitlich) genannt. Wenn z. B. eine NURBS-Kurve vom Grad 3 mit 7 Kontrollpunkten die Knoten 0,0,0,1,2,3,4,4,4 besitzt, dann hat die Kurve uniforme Knoten. Die Knoten 0,0,0,1,2,5,6,6,6 sind nicht uniform. Nicht-uniforme (nicht einheitliche) Knoten sind uneinheitlich. Das N und das U in NURBS stehen für nicht-uniform und deuten darauf hin, dass die Knoten in einer NURBS-Kurve uneinheitlich sein dürfen.

Duplizierte Knotenwerte in der Mitte der Knotenliste machen eine NURBS-Kurve weniger glatt. Im Extremfall bedeutet ein voller Vielfaltsknoten mitten in der Knotenliste, dass die NURBS-Kurve an einer Stelle in einen scharfen Knick verbogen werden kann. Aus diesem Grund mögen manche Designer Knoten hinzuzufügen und zu entfernen und danach Kontrollpunkte anzupassen, damit die Kurven glatter oder mit mehr Knicken erscheinen. Da die Anzahl Knoten gleich ist wie (N+Grad-1), wobei N die Anzahl Kontrollpunkte ist, werden beim Hinzufügen von Knoten auch Kontrollpunkte hinzugefügt und beim Entfernen von Knoten auch Kontrollpunkte entfernt. Knoten können hinzugefügt werden, ohne dass die Form einer NURBS-Kurve verändert wird. Im Allgemeinen wird beim Entfernen von Knoten die Kurvenform verändert.

Knoten und Kontrollpunkte

Eine weitverbreitete Falschannahme ist die, dass jeder Knoten mit einem Kontrollpunkt gepaart ist, was jedoch nur auf NURBS von Grad 1 (Polylinien) zutrifft. Für NURBS mit einen höheren Grad gibt es Knotengruppen vom Grad 2 x, die Kontrollpunktgruppen vom (Grad+1) entsprechen. Nehmen wir z. B. an, wir haben eine NURBS vom Grad 3 mit 7 Kontrollpunkten und Knoten 0,0,0,1,2,5,8,8,8. Die ersten vier Kontrollpunkte werden mit den ersten sechs Knoten gruppiert. Die Kontrollpunkte zwei bis fünf werden mit den Knoten 0,0,1,2,5,8 gruppiert. Die dritten bis sechsten Kontrollpunkte werden mit den Knoten 0,1,2,5,8,8 gruppiert. Die letzten vier Kontrollpunkte werden mit den letzten sechs Knoten gruppiert.

Manche Modellierer, die ältere Algorithmen für die NURBS-Berechnung verwenden, benötigen zwei zusätzliche Knotenwerte für ein Total von Knoten vom (Grad+N+1). Beim Export und Import von NURBS-Geometrie werden diese zwei überflüssigen Knoten je nach Bedarf automatisch hinzugefügt und entfernt.

Bewertungsregel

Eine Bewertungsregel verwendet eine mathematische Formel, die eine Zahl nimmt und einen Punkt zuordnet.

Die NURBS-Bewertungsregel ist eine Formel, die mit Grad, Kontrollpunkten und Knoten arbeitet. Die Formel enthält sogenannte B-Spline-Basisfunktionen. Das B und das S in NURBS stehen für basis spline. Die Zahl, mit der die Bewertungsregel beginnt, heißt Parameter. Sie können sich die Bewertungsregel als schwarzes Kästchen vorstellen, das einen Parameter nimmt und einen Punktstandort erzeugt. Grad, Knoten und Kontrollpunkte bestimmen, wie das schwarze Kästchen funktioniert.

Wenn Sie mit dem Lesen mathematischer Formeln vertraut sind, werfen Sie einen Blick in ikipedia: Non uniform rational b spline.