Το ακρωνύμιο είναι κυριολεκτικά ο ορισμός: Non-Uniform Rational B-Splines. Τρεις λέξεις, τρεις ξεχωριστές προσθήκες πάνω στην ίδια βάση — και καθεμία απαντά σε άλλο αίτημα του σχεδιαστή. Αν αφαιρέσεις και τις τρεις, μένει μια απλή καμπύλη Bézier.The acronym is literally the definition: Non-Uniform Rational B-Splines. Three words, three separate additions on top of one basis — and each answers a different demand from the designer. Take all three away and a plain Bézier curve is what is left.
B
B-splines — ο τοπικός φορέαςB-splines — local support
Η καμπύλη είναι κατά τμήματα πολυωνυμική, και κάθε λαβή αγγίζει μόνο p+1 διαστήματα κόμβων. Χωρίς αυτό, κάθε διόρθωση θα κουνούσε ολόκληρο το σχήμα — το διάγραμμα του 3D Design το μετράει: 40% απέναντι σε 100%.The curve is piecewise polynomial, and each handle touches only p+1 knot spans. Without that, every correction would move the entire shape — the 3D Design diagram measures it: 40% against 100%.
N
Non-uniform — το διάνυσμα κόμβωνNon-uniform — the knot vector
Οι κόμβοι δεν είναι υποχρεωμένοι να ισαπέχουν, ούτε να είναι διακριτοί. Πυκνώνεις εκεί που χρειάζεσαι ανάλυση· επαναλαμβάνεις έναν κόμβο και ρίχνεις τη συνέχεια επί τόπου: με πολλαπλότητα p η καμπύλη αποκτά γωνία, με p+1 σπάει σε δύο κομμάτια.Knots need not be equally spaced, nor even distinct. You densify where resolution is needed; you repeat a knot and drop the continuity right there: at multiplicity p the curve gains a corner, at p+1 it breaks into two pieces.
R
Rational — τα βάρηRational — the weights
Κάθε συντελεστής κουβαλάει έναν αριθμό w. Η καμπύλη παύει να είναι πολυώνυμο και γίνεται πηλίκο δύο πολυωνύμων — και αυτό ακριβώς είναι που της επιτρέπει να είναι κύκλος. Όχι σχεδόν κύκλος: κύκλος.Every coefficient carries a number w. The curve stops being a polynomial and becomes a ratio of two polynomials — and that is exactly what lets it be a circle. Not nearly a circle: a circle.
C(t) = Σ wiNi(t)Pi ÷ Σ wiNi(t)
Ο παρονομαστής είναι όλη η διαφορά από τον τύπο των B-spline — και είναι επίσης ο λόγος που τίποτα δεν χάνεται. Το κλάσμα ορίζει μια νέα βάση, τις ρητές συναρτήσεις Ri = wiNi / ΣwjNj, που εξακολουθούν να είναι μη αρνητικές (όσο τα βάρη είναι θετικά) και να αθροίζουν στη μονάδα. Άρα το κυρτό περίβλημα, ο τοπικός φορέας και η προβλεψιμότητα επιβιώνουν αυτούσια.The denominator is the whole difference from the B-spline formula — and it is also why nothing is lost. The fraction defines a new basis, the rational functions Ri = wiNi / ΣwjNj, which are still non-negative (as long as the weights are positive) and still sum to one. So the convex hull, the local support and the predictability all survive untouched.
Ρητά B-splinesRational B-splines
1975
Βαθμός στο CADDegree in CAD
p = 3
Βάρος για τεταρτοκύκλιοWeight for a quarter circle
√2⁄2
Άθροισμα της ρητής βάσηςThe rational basis sums to
1
Αν και οι τρεις προσθήκες μοιάζουν τεχνικές, η συνέπειά τους είναι θεσμική: επειδή η αναπαράσταση αυτή περιγράφει ταυτόχρονα ελεύθερες μορφές και ακριβείς κωνικές, έγινε η γλώσσα των προτύπων ανταλλαγής — IGES και STEP — και άρα το κοινό έδαφος κάθε συστήματος CAD. Δεν επικράτησε επειδή είναι η πιο κομψή· επικράτησε επειδή είναι η μόνη που δεν χρειάζεται δεύτερη αναπαράσταση δίπλα της.The three additions look technical, but their consequence is institutional: because this one representation describes free-form shapes and exact conics, it became the language of the interchange standards — IGES and STEP — and therefore the common ground of every CAD system. It did not win by being the most elegant; it won by being the only one that needs no second representation beside it.
ΠεριγραφήDescription
Από τις τρεις προσθήκες, οι δύο πρώτες είναι ευκολίες. Η τρίτη είναι αδυναμία που καλύπτεται: υπάρχει σχήμα που καμία πολυωνυμική καμπύλη δεν μπορεί να δώσει, όσο κι αν ανεβάσεις τον βαθμό ή πυκνώσεις τους κόμβους. Αυτό το σχήμα είναι ο κύκλος — και μαζί του ο κύλινδρος, ο κώνος, η σφαίρα, δηλαδή σχεδόν κάθε κατασκευασμένο κομμάτι.Of the three additions, the first two are conveniences. The third is a limitation being lifted: there is a shape no polynomial curve can produce, however high the degree or dense the knots. That shape is the circle — and with it the cylinder, the cone, the sphere, which is to say nearly every manufactured part.
Το βάρος που λυγίζει την καμπύληThe weight that bends the curveτετραγωνική · wquadratic · w0.707
Τρεις συντελεστές, ένα βάροςThree coefficients, one weight ·
η διακεκομμένη είναι ο αληθινός κύκλοςthe dashed line is the true circle
Η ρητή βάσηThe rational basis ·
χλωμά οι πολυωνυμικές (w = 1) — το άθροισμα μένει 1 και στις δύοthe polynomial ones (w = 1) in pale — both sum to 1
Σύρε το βάροςDrag the weight
w = 0.05βάρος του μεσαίουweight of the middle onew = 3
Απόκλιση από τον κύκλοOff the circle
2.2e-14 mm
ΕίδοςKind
τόξο κύκλουcircular arc
ΆθροισμαSum
1.000
συντελεστές · και η διάμεσός τουςcoefficients · and their medianη καμπύλη · με τον ώμο της στο t = 0.5the curve · with its shoulder at t = 0.5
Οι τρεις κόκκινοι συντελεστές δεν κουνιούνται καθόλου. Κουνιέται ένας αριθμός — και μαζί του αλλάζει το είδος της καμπύλης: κάτω από το 1 έλλειψη, ακριβώς στο 1 παραβολή, πάνω από το 1 υπερβολή. Και οι τρεις κωνικές τομές βγαίνουν από την ίδια μηχανή, με τρεις λαβές. Στο w = √2⁄2 η έλλειψη γίνεται κύκλος και ο μετρητής πέφτει στο 10⁻¹⁴ mm — δηλαδή στο έψιλον της αριθμητικής, όχι σε ανοχή σχεδίασης.The three red coefficients never move. One number moves — and with it the kind of curve: below 1 an ellipse, exactly at 1 a parabola, above 1 a hyperbola. All three conic sections come out of the same machine, with three handles. At w = √2⁄2 the ellipse becomes a circle and the counter drops to 10⁻¹⁴ mm — the epsilon of the arithmetic, not a drafting tolerance.
Πάτησε τώρα w = 1. Αυτή είναι η πολυωνυμική περίπτωση — κάθε καμπύλη Bézier, κάθε B-spline, ό,τι δηλαδή υπήρχε πριν από το «R». Ο μετρητής γράφει 6.07 mm σε ακτίνα 100 mm. Δεν είναι σφάλμα υλοποίησης και δεν μικραίνει με πύκνωση: είναι η απόσταση ανάμεσα σε μια παραβολή και έναν κύκλο.Now press w = 1. That is the polynomial case — every Bézier, every B-spline, everything that existed before the “R”. The counter reads 6.07 mm on a 100 mm radius. It is not an implementation error and it does not shrink with refinement: it is the distance between a parabola and a circle.
Ο κύκλος δεν είναι πολυώνυμοThe circle is not a polynomialΚαι αποδεικνύεται σε δύο γραμμές. Έστω x(t), y(t) πολυώνυμα με x² + y² = 1 παντού. Ο μεγιστοβάθμιος όρος του x² + y² έχει συντελεστή a² ή a² + b², όπου a, b οι μεγιστοβάθμιοι συντελεστές — και για πραγματικούς αριθμούς αυτό μηδενίζεται μόνο αν a = b = 0. Άρα, αν κάποιο από τα δύο πολυώνυμα έχει βαθμό ≥ 1, το x² + y² δεν είναι σταθερό. Ο μόνος τρόπος να ισχύει η εξίσωση είναι x, y σταθερά: ένα σημείο, όχι κύκλος. Το πηλίκο δύο πολυωνύμων δεν έχει αυτόν τον περιορισμό.And it takes two lines to prove. Let x(t), y(t) be polynomials with x² + y² = 1 everywhere. The leading term of x² + y² has coefficient a² or a² + b², where a, b are the leading coefficients — and over the reals that vanishes only if a = b = 0. So if either polynomial has degree ≥ 1, then x² + y² is not constant. The only way the equation can hold is x, y constant: a point, not a circle. A ratio of two polynomials carries no such restriction.
Το βάρος είναι αναλογίαThe weight is a ratioΗ διακεκομμένη από το μέσο της χορδής προς τον μεσαίο συντελεστή είναι η διάμεσος, και ο ώμος της καμπύλης κάθεται πάνω της σε λόγο ακριβώς w/(1+w). Στο √2⁄2 ο λόγος βγαίνει √2−1 ≈ 0.414. Το βάρος δεν είναι αφηρημένος συντελεστής: είναι αυτό το κλάσμα, ορατό.The dashed line from the chord midpoint to the middle coefficient is the median, and the shoulder of the curve sits on it at a ratio of exactly w/(1+w). At √2⁄2 that ratio is √2−1 ≈ 0.414. The weight is not an abstract coefficient: it is that fraction, made visible.
Ο διακόπτης δεν φτάνει το κουμπίThe slider cannot reach the buttonΟ διακόπτης έχει βήμα 0.001, οπότε το πιο κοντινό που πιάνει είναι το 0.707 — και εκεί ο μετρητής γράφει 2.6·10⁻³ mm, όχι μηδέν. Το κουμπί βάζει την ακριβή τιμή. Η διαφορά των τεσσάρων δεκαδικών είναι μετρήσιμη ακριβώς επειδή ο μετρητής δεν στρογγυλεύει: 2.6 μικρά είναι μεν κάτω από την ανοχή των 0.01 mm που κουβαλάει το τυπικό αρχείο CAD, αλλά είναι της ίδιας τάξης — και δεν είναι μηδέν.The slider steps by 0.001, so the closest it reaches is 0.707 — and there the counter reads 2.6·10⁻³ mm, not zero. The button sets the exact value. Those four decimals are measurable precisely because the counter does not round: 2.6 microns is below the 0.01 mm tolerance a typical CAD file carries, but it is of the same order — and it is not zero.
Θετικά βάρη, πάνταPositive weights, alwaysΑν ένα βάρος γίνει αρνητικό, ο παρονομαστής μπορεί να μηδενιστεί μέσα στο διάστημα — και η καμπύλη εκτινάσσεται. Γι’ αυτό ο διακόπτης εδώ ξεκινά από το 0.05 και όχι από το μηδέν, και γι’ αυτό τα συστήματα CAD δεν αφήνουν αρνητικά βάρη: μαζί τους θα έφευγαν το κυρτό περίβλημα και κάθε εγγύηση που στηρίζεται σε αυτό.If a weight goes negative the denominator can vanish inside the span — and the curve blows up. That is why the slider here starts at 0.05 rather than zero, and why CAD systems refuse negative weights: with them would go the convex hull and every guarantee resting on it.
Το τίμημα δεν είναι στην καμπύλη· είναι στην επιφάνεια. Μια επιφάνεια NURBS είναι ορθογώνιο μπάλωμα: έχει γραμμές και στήλες συντελεστών, άρα κάθε εσωτερική της κορυφή έχει ακριβώς τέσσερις γείτονες. Ό,τι δεν χωράει σε αυτό το σχήμα — μια κορυφή όπου συναντιούνται πέντε έδρες, μια οπή, μια διακλάδωση — απαιτεί κόψιμο (trimming) και ραφές ανάμεσα σε γειτονικά μπαλώματα. Και οι ραφές δεν κλείνουν ακριβώς: κλείνουν μέσα σε ανοχή.The price is not on the curve; it is on the surface. A NURBS surface is a rectangular patch: it has rows and columns of coefficients, so every interior vertex has exactly four neighbours. Whatever does not fit that shape — a vertex where five faces meet, a hole, a branch — requires trimming and seams between adjacent patches. And seams do not close exactly: they close within a tolerance.
Εκεί ακριβώς αρχίζει η άλλη αναπαράσταση. Οι επιφάνειες υποδιαίρεσης δέχονται την κορυφή βαθμού 5 χωρίς τίποτα να κοπεί και χωρίς ραφή να κλείσει — αλλά δεν σου δίνουν ακριβή κύκλο. Οι δύο δεν ανταγωνίζονται· λύνουν τα συμπληρωματικά μισά του ίδιου προβλήματος, και γι’ αυτό η συνηθισμένη διαδρομή είναι μορφή σε SubD, μετατροπή σε NURBS για την κατασκευή.That is exactly where the other representation begins. Subdivision surfaces accept the valence-5 vertex with nothing trimmed and no seam to close — but they will not give you an exact circle. The two are not competitors; they solve complementary halves of the same problem, which is why the usual route is form in SubD, convert to NURBS for manufacturing.
Όχι κλάδοι — αυτούς τους απαριθμεί η γενική σελίδα. Εδώ είναι τρεις στιγμές όπου η λέξη ακριβώς έχει νόημα, και μία όπου δεν φτάνει.Not industries — the overview page lists those. Here are three moments where the word exactly means something, and one where it is not enough.
A
Η οπή είναι Ø20The hole is Ø20
Μια οπή που πρέπει να δεχτεί άξονα Ø20 h7 δεν είναι σχήμα, είναι διάσταση. Αν η γεωμετρία είναι πολυωνυμική προσέγγιση, η διάμετρος μεταβάλλεται κατά μήκος της περιφέρειας — και το ερώτημα «ποια είναι η διάμετρος;» χάνει το νόημά του πριν καν φτάσει στη μηχανή. Με βάρη, η περιφέρεια είναι κύκλος και η διάμετρος ένας αριθμός.A hole that has to take a Ø20 h7 shaft is not a shape, it is a dimension. If the geometry is a polynomial approximation, the diameter varies around the circumference — and the question “what is the diameter?” loses its meaning before it ever reaches the machine. With weights, the circumference is a circle and the diameter is one number.
B
Ό,τι γεννιέται από περιστροφήAnything born of a revolve
Κύλινδροι, κώνοι, σφαίρες, τόροι, φιλέτα σταθερής ακτίνας: όλα βγαίνουν περιστρέφοντας ένα προφίλ. Επειδή το τόξο είναι ακριβές, είναι ακριβής και η επιφάνεια — χωρίς επιπλέον συντελεστές και χωρίς σφάλμα που να συσσωρεύεται. Ένα τυπικό μηχανολογικό κομμάτι είναι σε μεγάλο ποσοστό ακριβώς αυτό.Cylinders, cones, spheres, tori, constant-radius fillets: all of them come from revolving a profile. Because the arc is exact, so is the surface — with no extra coefficients and no error to accumulate. A typical mechanical part is, in large part, exactly this.
C
Το αρχείο που το διαβάζουν όλοιThe file everyone reads
Ένα STEP που φεύγει για προσφορά πρέπει να ανοίξει σε άλλο σύστημα, άλλης εταιρείας, άλλης έκδοσης. Ανοίγει επειδή και τα δύο μιλούν την ίδια γλώσσα επιφανειών. Η τυποποίηση δεν είναι λεπτομέρεια της υλοποίησης — είναι ο λόγος που η αναπαράσταση επιβίωσε πέντε δεκαετίες.A STEP file sent out for a quote has to open in another system, from another vendor, of another version. It opens because both speak the same surface language. Standardisation is not an implementation detail — it is why the representation has survived five decades.
Τι ζητά κανείς από την αναπαράσταση και τι απαντούν τα NURBSWhat is asked of the representation, and what NURBS answer
ΑίτημαRequest
Απάντηση — και πού την βλέπειςAnswer — and where you see it
ακριβής κωνικήexact conic
Ναι — και με τρεις μόνο συντελεστές: το διάγραμμα, στο w = √2⁄2.Yes — and with three coefficients only: the diagram, at w = √2⁄2.
τοπικός έλεγχοςlocal control
Ναι — p+1 διαστήματα, ίδιος με του B-spline: 3D Design.Yes — p+1 spans, the same as the B-spline’s: 3D Design.
αιχμηρή ακμήsharp edge
Ναι — με πολλαπλότητα κόμβου p· η καμπύλη χάνει μία παράγωγο εκεί και μόνο εκεί.Yes — via knot multiplicity p; the curve loses one derivative there and only there.
αυθαίρετη τοπολογίαarbitrary topology
Όχι — ορθογώνια μπαλώματα, κοπή και ραφές· εκεί κερδίζει η υποδιαίρεση.No — rectangular patches, trimming and seams; that is where subdivision wins.
στεγανό στερεόwatertight solid
Μέσα σε ανοχή, όχι ακριβώς — και αυτό είναι τοπολογικό ζήτημα: CAD.Within a tolerance, not exactly — and that is a topological matter: CAD.
Πού τελειώνει η ακρίβεια. Τα βάρη λύνουν το πρόβλημα της μορφής μιας επιφάνειας, όχι της συναρμογής δύο. Ένα μοντέλο CAD δεν είναι μία επιφάνεια αλλά δεκάδες μπαλώματα που πρέπει να συναντιούνται — και εκεί ο ακριβής κύκλος δεν βοηθάει σε τίποτα: το ερώτημα γίνεται αν η ακμή που τα ενώνει είναι κοινή ή απλώς κοντινή. Αυτή η διάκριση, και το τι κοστίζει, είναι ολόκληρη η σελίδα CAD.Where exactness ends. Weights solve the problem of the shape of one surface, not the joining of two. A CAD model is not one surface but dozens of patches that have to meet — and there an exact circle helps not at all: the question becomes whether the edge joining them is shared or merely nearby. That distinction, and what it costs, is the whole of the CAD page.
Έχετε γεωμετρία που πρέπει να είναι και λεία και ελεγχόμενη;Have geometry that must be both smooth and controllable?
Πείτε μας τι φτιάχνετε και θα σας πούμε αν η υποδιαίρεση είναι το σωστό εργαλείο — και αν όχι, ποιο είναι.Tell us what you are building and we will tell you whether subdivision is the right tool — and if not, what is.