You are on page 1of 23


‘A' Class surfacing and its importance: A class surfaces are those aesthetic/ free form surfaces, which are visible to us (interior/exterior), having an optimal aesthetic shape and high surface quality. Mathematically class A surface are those surfaces which are curvature continuous while providing the simplest mathematical representation needed for the desired shape/form and does not have any undesirable waviness. Curvature continuity: It is the continuity between the surfaces sharing the same boundary. Curvature continuity means that at each point of each surface along the common boundary has the same radius of curvature. Why Class A is needed: We all understand that today products are not only designed considering the functionality but special consideration are given to its form/aesthetics which can bring a desire in ones mind to own that product. Which is only possible with highclass finish and good forms. This is the reason why in design industries Class A surface are given more importance.

Understanding for Class A surfaces: 1. The fillets - Generally for Class A, the requirement is curvature continuous and Uniform flow of flow lines from fillet to parent surface value of 0.005 or better (Position 0.001mm and tangency to about 0.016 degrees). 2. The flow of the highlight lines - The lines should form a uniform family of lines. Gradually widening or narrowing but in general never pinching in and out. 3. The control points should form a very ordered structure - again varying in Angle from one Row to the next in a gradual manner (this will yield the good Highlights required). 4. For a Class A model the fillet boundary should be edited and moved to form a Gentle line - and then rematched into the base surface. 5. Matched iso-params in U & V direction are also a good representation of class A. 6. The degree (order) of the Bezier fillets should generally be about 6 (also for arc Radius direction) sometimes you may have to go higher. 7. Also you have to take care of Draft angle, symmetry, gaps and matching of surfaces Created with parent or reference surfaces. 8. Curvature cross-section needles across the part - we make sure the rate of Change of curvature (or the flow of the capping line across the top of the part) is Very gentle and well behaved. The physical meaning: Class A refers to those surfaces, which are CURVATURE continuous to each other at their respective boundaries. Curvature continuity means that at each "point" of each surface along the common boundary has the same radius of curvature. This is different to surfaces having; Tangent continuity - which is directional continuity without radius continuity - like fillets. Point continuity - only touching without directional (tangent) or curvature equivalence. In fact, tangent and point continuity is the entire basis most industries (aerospace, shipbuilding, BIW etc ). For these applications, there is generally no need for curvature.

By definition: Class A surface refers to those surfaces which are VISIBLE and abide to the physical meaning, in a product. This classification is primarily used in the automotive and increasingly in consumer goods (toothbrushes, PalmPC's, mobile phones, washing machines, toilet lids etc). It is a requirement where aesthetics has a significant contribution. For this reason the exterior of automobiles are deemed Class-A. BIW is NOT Class-A. The exterior of you sexy toothbrush is Class-A, the interior with ribs and inserts etc is NOT Class-A. QUESTION: What is Body_in_white? What is class A surface? Are the interior trim (A,B,C pillar, dash board, center console, handles) of a car using class A surface? Anybody using the basic design bundle of UG for class A surfacing? UG\Shape Studio? How does it compare with Catia? Ans:1 A class A surface is anything that you the customer sees. i.e. exterior panels and interior surfaces. A Class B surface is something that is not always visible i.e. the underside of a fascia that you would have to bend down to see. A Class C surface is the back side of a part of a surface that is permanently covered by another part. BIW is stuff like the body side etc.. Ans:2 Actually 'body in white' is the term used to describe the whole vehicle body after it has been welded/bolted together before it is painted or any parts are attached on the fit up line. Ans:3 We also use it to mean after it has been painted - I always assumed that the white bit refers to primer. Next step is to fit the windscreen and backlight, when it becomes the glazed body in white, or BIW+G. ANS: 4 BIW - Some surfaces are Class A, i.e. body side, roof, sill appliqué. I heard some time ago from a old designer that the term BIW comes from when cars were built from wood, they were painted white as it gives the frame a uniform color so imperfections were easily visible.

Ans:5 BIW meaning Body In White is so called due to its appearance after the application of the primer to the entirely Body panel assembled vehicle just before going into the painting process. Usually the primer is white or silver grey which gives the so called name. ANS: 6 Catia is mostly used for BIW design (Ford switching to catia, and Toyota). Is this because it could easily create quintic surfaces? With UG with Design bundle only, most of the surfaces created are cubic. ------------------------------------------------------------------ANS: 7 A class surface means - it is not just seen surface and unseen surface In normal no technical words, A class surface means It is smooth looking reflective surface with no distortion of light highlights, which moves in a smooth uniform designer intended formations. when you create - car body panel, due to their complex shapes it not possible to create the surface with one single face /patch so you make multiple face/patch ( surface is a group of face/patch added together.) when these things are added, at the boundary of joining you need to have connectivity and continuation of minimum order two. for example In case one, at the connecting boundary of two patches you have common boundary but it is sharp corner. this does not qualify as A class surface. In case two - at the connecting boundary of two patches have common boundary and no sharp corner - but you have tangent continuity, this also does not qualify as A class surface. In case two - at the connecting boundary of two patches have common boundary and no sharp corner - you have tangent continuity and curvature continuity this does qualify as A class surface. ( sine curve is good example for curvature continuity. but you can not call it a A class surface ) reason is very simple the real requirement of aesthetic and good looking and designer intended shape is not there.

ANS: 8 For obtaining Class-A surfaces, CATIA is more commonly used due to its inherent ability to model very high quality surfaces in general. But, any engineering software (CATIA, UG, IDEAS, Pro-E, etc) cannot develop a Class-A surface. This being due to engineering calculations involved in any surface generated by such softwares. For pure Class-A surfaces you would need styling softwares like Alias, Studio, etc. The use of any software would depend on the level of expectations placed on you. If your projects need only the modeling of the trim, generic engg softwares will do, but if you intend to go down right from styling, you would need Studio, etc. ------------------------------------------------------------------ANS: 9 IHO, Catia V4 has added a tool called Blend surf that is able to obtain virtual curvature continuity. Previously, even styling was comfortable with models- and hence tools- defining fillets with conics, and many OEMs still accept this for Class-A surfaces. Catia V5 has GUI interfaces to impose curvature continuity the same way that Alias-Wave front Studio Tools (Auto Studio) does. They are both based on piece-wise polynomial equations, for what its worth. While a conic fillet is not technically curvature continuous, there are many vehicles, including luxury models, that have utilized them for Class-A surfaces and downstream- parts. Considering the tolerances in creating molds and dies and then producing parts from them.... a sheet metal panel is not a math model. ------------------------------------------------------------------ANS: 10 It is true that it is tough to make good curvature continuous surface in UG, but not impossible. Remember one thing A-class doesn't mean just curvature continuity. and smooth reflections on CAD surface. it is lot more than that. Imagine. what happens to your A class surface in case pressed sheet metal body panel. and molded plastic components. They have to retain there intended smoothness and other characteristics to remain A class. to achieve this lot of other things has to be taken care while designing A class surfaces. For example : 1- Line features on body side external panel and feature on hood panel which is very common, are to be designed to avoid skidding while they are pressed. like wise 2 -Flange width and other things are to be taken care while designing fenders wheel arch area for avoiding bulging effect and skidding effect. 3 - Fuel lid opening area, plunged flange for bulge effect. 4 - Panel stretching needs to be taken care. Lot many other things go in designing A class sheet metal panels for door , roof etc. 5 - In case of plastic, sink marks and other things.

ANS: 11 In Europe a 'A' class surface is generally taken to be the visible side of any component / assembly - a 'B' class surface generally relates to the opposite (or inside) face of an 'A' surface - i.e. the surface which defines the thickness of the part, and is where the mounting and reinforcing detail tends to be located. 'B' class surfaces can also be referred to as 'engineering surfaces. I have not personally heard of any surface being referred to as a 'C' type. Catia, while it is ok for surfacing tends to be more used for generating engineering surface detail and solid models - software packages like ICEMSURF tend to be more used for generating visual quality surfaces. ------------------------------------------------------------------ANS: 12 True A-class surfacing - especially on vehicle exteriors goes further than G2 or "curvature" continuity. G3 is often sought on the more major block surfaces. G3 deals with curvature "acceleration", i.e. the rate of change of curvature across a boundary. G2 means as has been described before that the curvature value is the same across a boundary. G3 means that the surface curvature leading to the boundary is changing shape at the same rate. Its like driving a car round a bend, you start off straight then gently add steering lock to the point where you need no more, then you gently wind off the steering until you're straight again. If you look at the curve your car made, this would be G3. A-Class and B-class would refer to surface quality required for the component which is different to A-side and B-side which refers to which is the visible/non visible part of a component. ICEM surf is considered the best tool for speedy A-class surfacing due to the sophistication of its real-time diagnostics.

The consequence: The consequence of these surfaces apart from visually and physically aesthetic shapes is the way they reflect the real world. What would one expect to see across the boundary of pairs of point continuity, tangent continuity and curvature continuity surfaces when reflecting a straight and dry tree stump in the desert???? Point Continuity (also known as G0 continuity) - will produce a reflection on one surface, then at the boundary disappear and re-appear at a location slightly different on the other surface. The same reflective phenomenon will show when there is a gap between the surfaces (the line markers on a road reflecting across the gap between the doors of a car). Tangent Continuity (also known as G1 continuity) - will produce a reflection on one surface, then at the boundary have a kink and continue. Unlike Point continuity the reflection (repeat REFLECTION) is continuous but has a tangent discontinuity in it. In analogy, it is "like" a greater than symbol. Curvature Continuity (also known as G2 continuity, Alias can do G3!) - this will produce the unbroken and smooth reflection across the boundary. To achieve the same Class 'A' surfaces that automotive manufacturers demand, consumer product manufacturers have availed themselves of the same advanced surface modeling tools. What is a Class 'A' surface? The simple answer is that it is a perfectly smooth surface with no anomalies, in which all adjoining surfaces have curvature continuity. This means that where two surfaces meet, the graduation of one into the other is achieved without discernible abrupt transitions. The techniques used to create Class 'A' surfaces typically reside in top level surface modeling software developed for the motor industry, rather than midrange mechanical CAD packages that have evolved from 3D solid modeling for mechanical assemblies.

Analyzing A Class Surface
Highlight plot : Highlight is the behavior of the form or Shape of a surface when a light or nature reflects on it. This reflection of light or nature gives you an understanding about the quality of surface. This reflection required should be natural, streamline and with uniformity

Designer Fillets: If you take two adjoining 2D lines, or a couple of tangential surfaces, the intersection between them can be turned into an arc (2D) or a fillet (3D), each of which is inserted with a constant radius. However the transition from each line or surface can often be too abrupt for the design. According to Mike Lang, Technical Director of VX, fillets should look simple - you shouldn't see a fillet line in a model. They should also be simple to create. "Achieving tangent and curvature continuity in complex shapes on other systems is hard work. A reduction in the weight of a curve will allow it to retain its tangency, but sharpen the change in curvature. This can be seen most effectively by reducing the weight almost to zero. Fairings - the shape of the curve - can be influenced by energy, variation, jerk, bend or tension - each of which will produce a subtle difference in the mathematical fit through the curve. Echo Attributes: Part of the process of obtaining Class 'A' surfaces is being able to see what's happening to the curve or the surface as it is being developed. Increasing the scale of the iso lines allows designers to pick up smaller imperfections in surfaces. Where blue iso lines lose their curve they change to white. The shifting colors of Gaussian shading are also particularly adept at detecting subtle blemishes. Echo Attributes also has numerous other modifiable elements, including the ability to apply colors to lines and surfaces, and to alter the transparency of the surface. Curvature plots on non-designer fillets show regular arcs, unlike designer fillets that show the weighting of the curve at each point. "good design work relies on good wire frame technology. If you don't have basic curve geometry, you won't be able to produce a good surface”. Designers must always go through the routine of checking curves, especially if the design has come in from an outside source - perhaps containing older style Bezier curves with lots of points.

Bezier Curves
The following describes the mathematics for the so called Bezier curve. It is attributed and named after a French engineer, Pierre Bezier, who used them for the body design of the Renault car in the 1970's. They have since obtained dominance in the typesetting industry. Consider N+1 control points pk (k=0 to N) in 3 space. The Bezier parametric curve function is of the form.

B(u) is a continuous function in 3 space defining the curve with N discrete control points Pk. u=0 at the first control point (k=0) and u=1 at the last control point (k=N).

Notes: •The curve in general does not pass through any of the control points except the first and last. From the formula B(0) = P0 and B(1) = PN. •The curve is always contained within the convex hull of the control points, it never oscillates wildly away from the control points. •If there is only one control point P0, i.e.: N=0 then B(u) = P0 for all u. •If there are only two control points P0 and P1, i.e.: N=1 then the formula reduces to a line segment between the two control points.

•the term shown below is called a blending function since it blends the control points to form the Bezier curve.

•The blending function is always a polynomial one degree less than the number of control points. Thus 3 control points results in a parabola, 4 control points a cubic curve etc. •Closed curves can be generated by making the last control point the same as the first control point. First order continuity can be achieved by ensuring the tangent between the first two points and the last two points are the same. •Adding multiple control points at a single position in space will add more weight to that point "pulling" the Bezier curve towards it.

•As the number of control points increases it is necessary to have higher order polynomials and possibly higher factorials. It is common therefore to piece together small sections of Bezier curves to form a longer curve. This also helps control local conditions, normally changing the position of one control point will affect the whole curve. Of course since the curve starts and ends at the first and last control point it is easy to physically match the sections. It is also possible to match the first derivative since the tangent at the ends is along the line between the two points at the end. Second order continuity is generally not possible.

•Except for the redundant cases of 2 control points (straight line), it is generally not possible to derive a Bezier curve that is parallel to another Bezier curve. A circle cannot be exactly represented with a Bezier curve. It isn't possible to create a Bezier curve that is parallel to another, except in the trivial cases of coincident parallel curves or straight line Bezier curves.

Bezier curves have wide applications because they are easy to compute and very stable. There are similar formulations which are also called Bezier curves which behave differently, in particular it is possible to create a similar curve except that it passes through the control points. See also Spline curves. Examples: The pink lines show the control point polygon, the grey lines the Bezier curve. 6. The degree of the curve is one less than the number of control points, so it is a quadratic for 3 control points. It will always be symmetric for a symmetric control point arrangement. The curve always passes through the end points and is tangent to the line between the last two and first two control points. This permits ready piecing of multiple Bezier curves together with first order continuity. The curve always lies within the convex hull of the control points. Thus the curve is always "well behaved" and does not oscillating erratically. Closed curves are generated by specifying the first point the same as the last point. If the tangents at the first and last points match then the curve will be closed with first order continuity.. In addition, the curve may be pulled towards a control point by specifying it multiple times.







The Bezier surface is formed as the Cartesian product of the blending functions of two orthogonal Bezier curves.

Where Pi,j is the i,jth control point. There are Ni+1 and Nj+1 control points in the i and j directions respectively. The corresponding properties of the Bezier curve apply to the Bezier surface. - The surface does not in general pass through the control points except for the corners of the control point grid. - The surface is contained within the convex hull of the control points. Along the edges of the grid patch the Bezier surface matches that of a Bezier curve through the control points along that edge. Closed surfaces can be formed by setting the last control point equal to the first. If the tangents also match between the first two and last two control points then the closed surface will have first order continuity. While a cylinder/cone can be formed from a Bezier surface, it is not possible to form a sphere.

A little history of Surface Modeling
A little history Surface modeling was developed in the automotive and aerospace industries in the late 1970s to design and manufacture complex shapes. Nurbs -- nonuniform rational B-splines -- and cubic-surface formats appeared early and remain the primary spline and surface formats used throughout the CAD industry. Nurbs and cubics are supported by IGES (Initial Graphics Exchange Specification), a neutral file format for exchanging data between CAD systems. Nurbs and cubic formats are represented in a computer by polynomial equations generated by a CAD system, and onscreen through the location and shape of curves and surfaces. For example, the equation of a line, a first-degree polynomial, has this form Y = ax + b The equation for a parabola, a second-degree polynomial, has the form Y = ax2 + bx + c And the equation of a cubic spline, a third-degree polynomial, looks like Y = ax3 + bx2 + cx + d The more terms in the polynomial equation, the more "shape" the curve or surface has. The data structure of a Nurbs curve or surface is comprised of points, weights, and parameter values that define a control net which is tangent to the curve or surface. The control net on a Nurbs surface is a rectangular grid of connected straight-line elements which define the tangency of the surface at positions along the control net. The points in the database which describe the control net are not actually on the surface, they are at the vertices of the control net. Weights in the Nurbs data structure determine the amount of surface deflection toward or away from its control point. Cubic data structures use third-degree polynomials that describe points actually on the curve or surface. Therefore, the Nurbs control net is an abstraction of the underlying surface, whereas the cubic equation is the surface.

Nurbs and cubic formats each have advantages and disadvantages. Nurbs equations model more complex shapes by increasing the degree of the exponents in the polynomial, thus increasing the memory required to store and evaluate the equation. Cubic equations, on the other hand, require less storage and can capture complex shapes by adding more cubic segments to the spline or surface. Nurbs and cubic equations are said to be "piecewise" and "parametric," which means the curve or surface is a sequence of connected segments that use parametric u and v values ranging from 0 to 1 or 0 to n (number of segments) to calculate points along the curve or surface. Nurbs and cubic formats each have advantages and disadvantages. Nurbs equations model more complex shapes by increasing the degree of the exponents in the polynomial, thus increasing the memory required to store and evaluate the equation. Cubic equations, on the other hand, require less storage and can capture complex shapes by adding more cubic segments to the spline or surface. Nurbs and cubic equations are said to be "piecewise" and "parametric," which means the curve or surface is a sequence of connected segments that use parametric u and v values ranging from 0 to 1 or 0 to n (number of segments) to calculate points along the curve or surface. Ultimately, a good CAD system shields users from having to know too much about the mathematics that represent the underlying surfaces. In addition, surface modelers should: Provide enough tools to completely define any feature on the part using surfaces. Have many functions for defining the different shapes of surfaces including ruled, revolved, lofted, extruded, swept, offset, filleted, blended, planar boundary, and drafted. Each of these functions have further variations. For example, offset surfaces should allow for constant or tapered offsets. Draft-surface functions should let users input curves to define the draft surface, or allow using curves on a surface whereby the draft angle is referenced off a surface-normal vector at points along the curve. The lofted surface should allow for the input of cross-section curves or for the input of curves both along and across the surface. Support functions such as surface trimming, extending, intersecting, projecting, polygon tessellation, IGES translation, coordinate-system transformations, and editing. Allow extracting surface data such as flow curves, vectors, and planes, among other functions. Have a set of tools for defining points, planes, vectors, and splines used with surface modeling. Most surface creation functions need user inputs to define surfaces.

Two useful surface-modeling functions are the controlled sweep and the draft surface. A controlled sweep forces a profile curve to remain perpendicular to the sweep path by using a control surface. Without a control surface in the construction of a swept surface, the profile curve typically wants to lay down or spin around the sweep path. A properly defined control surface solves the problem. A draft surface is similar to a controlled sweep in that it uses curves lying on one surface to create another. The resultant draft surface passes through the input curve and is composed of straight-line elements radiating from the reference surface at an angle to the surface normal vectors taken at points along the input curve. A draft-surface function can build one surface perpendicular to another, along a curve.

A Comparison Between Solid-Surface Modeling: While surface modelers excel at defining complex shapes, solid modeling is good at quickly building primitive geometry. Primitive geometry consists of basic surfaces such as planes, cylinders, cones, spheres, and tori. Surface modeling is not as fast at creating simple part geometry, but if your solid modeler can't easily model a feature, such as a fillet, surface modeling can almost always finish the part. And for every solid-modeling function there is a counterpart in surface modeling. Nurbs surfaces can be incorporated into an existing solid model by "stitching" the Nurbs surface to the solid model. Some parts can be completely defined by a solid modeler as a collection of primitive surfaces, while other parts require Nurbs surfaces to fully define the geometry. Most parts manufactured with tooling require some kind of Nurbs surface to support production. Reverse engineering is heavily dependent on Nurbs surfaces to capture digitized points into surfaces. In addition, Nurbs-surface files generated over the last 20 years are circulating in IGES format between vendors and subcontractors. These files support the design of parts in one system and manufacturing in another. Solid modeling will not replace Nurbs-surface modeling because the two work hand in hand to complete part geometry.


Continuity is a measure of how well two curves or surfaces "flow" into each other. •POSITION (G0) This type of continuity between curves implies that the endpoints of the curves have the same X,Y, and Z position in the world space. This is the minimum requirement for obtaining G0. •TANGENT (G1) This type of continuity between curves implies that the tangent CVs must be on one line. •CURVATURE (G2) This continuity type impacts the third CV of the curve. All three CVs have to be considered in order to maintain a smooth curvature comb. If a curvature comb does not have a smooth transitional line. In order to improve the curvature comb, manually modify the position of the three CVs that constitute the G2 continuity.

Surface Blending: Surface Blending is one of the most critical functions of any surface design package. With Surface Blending you can construct a large complex smooth objects such as a car body or a face. Higher order blending (G2, G3, etc.) can be used to construct surfaces which have very nice reflective and aesthetic qualities. Higher order blending is used extensively in auto body design and industrial design.

Blending Two Surfaces Using Derivative Surface Technology: The top image shows two surfaces with corresponding derivative surfaces constructed from them. Just below that we show just a G1 derivative surface. The type of derivative surface and its magnitude can be changed to produce different blending surfaces. The image on the right shows a simple G1 blend of these two surfaces.

Change Strength of One of Derivative Surfaces In this image we have increased the strength of the left derivative surface by a factor of 2.

Change Continuity of Derivative Surfaces and Resulting Blend The above images show a G2 continuity on the top and G3 continuity just below it. Note that the higher continuity in this case causes the surface to have a sharper ripple in it. This can easily be adjusted by changing the strength of the Derivative Surface.

Adjust Strength of G3 Continuity Here we have adjusted the strength of the G3 continuity to a smaller value. Below you can see a larger image with G3 continuity. It is impossible to visually tell where one surface begins and the other ends. The reflective qualities of a high continuity blend are far superior to lower continuity blending.

What Does NURBS Mean?
NURBS, Non-Uniform Rational B-Splines, are mathematical representations of 3-D geometry that can accurately describe any shape from a simple 2-D line, circle, arc, or curve to the most complex 3-D organic free-form surface or solid. Because of their flexibility and accuracy, NURBS models can be used in any process from illustration and animation to manufacturing. NURBS geometry has five important qualities that make it an ideal choice for computer-aided modeling. There are several industry standard ways to exchange NURBS geometry. This means that customers can and should expect to be able to move their valuable geometric models between various modeling, rendering, animation, and engineering analysis programs. They can store geometric information in a way that will be usable 20 years from now. NURBS have a precise and well-known definition. The mathematics and computer science of NURBS geometry is taught in most major universities. This means that specialty software vendors, engineering teams, industrial design firms, and animation houses that need to create custom software applications, can find trained programmers who are able to work with NURBS geometry. NURBS can accurately represent both standard geometric objects like lines, circles, ellipses, spheres, and tori, and free-form geometry like car bodies and human bodies. The amount of information required for a NURBS representation of a piece of geometry is much smaller than the amount of information required by common faceted approximations. The NURBS evaluation rule, discussed below, can be implemented on a computer in a way that is both efficient and accurate. Degree The degree is a positive whole number. This number is usually 1, 2, 3 or 5, but can be any positive whole number. NURBS lines and polylines are usually degree 1, NURBS circles are degree 2, and most free-form curves are degree 3 or 5. Sometimes the terms linear, quadratic, cubic, and quintic are used. Linear means degree 1, quadratic means degree 2, cubic means degree 3, and quintic means degree 5. You may see references to the order of a NURBS curve. The order of a NURBS curve is positive whole number equal to (degree+1). Consequently, the degree is equal to order-1. It is possible to increase the degree of a NURBS curve and not change its shape. Generally, it is not possible to reduce a NURBS curve’s degree without changing its shape.

Control Points The control points are a list of at least degree+1 points. One of easiest ways to change the shape of a NURBS curve is to move its control points. The control points have an associated number called a weight . With a few exceptions, weights are positive numbers. When a curve’s control points all have the same weight (usually 1), the curve is called non-rational, otherwise the curve is called rational. The R in NURBS stands for rational and indicates that a NURBS curve has the possibility of being rational. In practice, most NURBS curves are non-rational. A few NURBS curves, circles and ellipses being notable examples, are always rational. Knots The knots are a list of degree+N-1 numbers, where N is the number of control points. Sometimes this list of numbers is called the knot vector. In this term, the word vector does not mean 3‑D direction. This list of knot numbers must satisfy several technical conditions. The standard way to ensure that the technical conditions are satisfied is to require the numbers to stay the same or get larger as you go down the list and to limit the number of duplicate values to no more than the degree. For example, for a degree 3 NURBS curve with 11 control points, the list of numbers 0,0,0,1,2,2,2,3,7,7,9,9,9 is a satisfactory list of knots. The list 0,0,0,1,2,2,2,2,7,7,9,9,9 is unacceptable because there are four 2s and four is larger than the degree. The number of times a knot value is duplicated is called the knot’s multiplicity. In the preceding example of a satisfactory list of knots, the knot value 0 has multiplicity three, the knot value 1 has multiplicity one, the knot value 2 has multiplicity three, the knot value 3 has multiplicity one, the knot value 7 has multiplicity two, and the knot value 9 has multiplicity three. A knot value is said to be a full-multiplicity knot if it is duplicated degree many times. In the example, the knot values 0, 2, and 9 have full multiplicity. A knot value that appears only once is called a simple knot. In the example, the knot values 1 and 3 are simple knots. If a list of knots starts with a full multiplicity knot, is followed by simple knots, terminates with a full multiplicity knot, and the values are equally spaced, then the knots are called uniform. For example, if a degree 3 NURBS curve with 7 control points has knots 0,0,0,1,2,3,4,4,4, then the curve has uniform knots. The knots 0,0,0,1,2,5,6,6,6 are not uniform. Knots that are not uniform are called non‑uniform. The N and U in NURBS stand for non‑uniform and indicate that the knots in a NURBS curve are permitted to be nonuniform.

Duplicate knot values in the middle of the knot list make a NURBS curve less smooth. At the extreme, a full multiplicity knot in the middle of the knot list means there is a place on the NURBS curve that can be bent into a sharp kink. For this reason, some designers like to add and remove knots and then adjust control points to make curves have smoother or kinkier shapes. Since the number of knots is equal to (N+degree‑1), where N is the number of control points, adding knots also adds control points and removing knots removes control points. Knots can be added without changing the shape of a NURBS curve. In general, removing knots will change the shape of a curve. Knots and Control Points A common misconception is that each knot is paired with a control point. This is true only for degree 1 NURBS (polylines). For higher degree NURBS, there are groups of 2 x degree knots that correspond to groups of degree+1 control points. For example, suppose we have a degree 3 NURBS with 7 control points and knots 0,0,0,1,2,5,8,8,8. The first four control points are grouped with the first six knots. The second through fifth control points are grouped with the knots 0,0,1,2,5,8. The third through sixth control points are grouped with the knots 0,1,2,5,8,8. The last four control points are grouped with the last six knots. Some modelers that use older algorithms for NURBS evaluation require two extra knot values for a total of degree+N+1 knots. When Rhino is exporting and importing NURBS geometry, it automatically adds and removes these two superfluous knots as the situation requires.

NURBS-Curve: A nonuniform rational B-Spline curve defined by

where p is the order, Ni,p are the B-Spline basis functions, Pi are control points, and the Weight Wi of Pi is the last ordinate of the homogeneous point Piw. These curves are closed under perspective transformations and can represent conic Sections exactly. NURBS-Surface: A nonuniform rational B-spline surface of degree (p, q) is defined by.

where Ni,p and Nj,q are the B-Spline basis functions, Pi,j are control points, and the Weight Wi,j of Pi,j is the last ordinate of the homogeneous point Pi,jw. The Advantage of Using B-spline Curves: B-spline curves require more information (i.e., the degree of the curve and a knot vector) and a more complex theory than Bezier curves. But, it has more advantages to offset this shortcoming. First, a B-spline curve can be a Bezier curve. Second, B-spline curves satisfy all important properties that Bezier curves have. Third, Bspline curves provide more control flexibility than Bezier curves can do. For example, the degree of a B-spline curve is separated from the number of control points. More precisely, we can use lower degree curves and still maintain a large number of control points. We can change the position of a control point without globally changing the shape of the whole curve (local modification property). Since B-spline curves satisfy the strong convex hull property, they have a finer shape control. Moreover, there are other techniques for designing and editing the shape of a curve such as changing knots. However, keep in mind that B-spline curves are still polynomial curves and polynomial curves cannot represent many useful simple curves such as circles and ellipses. Thus, a generalization of B-spline, NURBS, is required.