Curve Balls

David Chadwick attempts to explain the mystique behind b-splines, and provides a run-down on software developers supplying the tools that enable them to be used in the creation of smooth, complex surfaces. 

It appears that one of the most significant elements in design is the ability to produce smooth freeform curves in 2 and 3 dimensions, and to extrude these curves into complex surfaces. Previously considered possible only with high end CAD software, a number of mid-range software developers, such EDS with the latest version of Solid Edge, IronCAD, Tebis and PTC in Wildfire, have all announced enhancements in their products that can handle b-splines more effectively and through them create more convoluted smooth surfaces. 

VX, of course, has had the capability for a number of years in its hybrid CAD package – a solid and surface modelling tool that has been used to design numerous domestic products, from steam irons and kettles to lawnmowers with complex free-form shapes. 

What, therefore, is the mystique behind b-splines? 

Before we delve into the subject a bit more closely, it is worth bringing up some comments made by one of the people I discussed the issue with. I won’t name him, as the remarks were ‘off the record’ and cast a somewhat more pessimistic eye over the issue, claiming that the vast majority of design engineers, even those he supplies with software from one of the suppliers listed above, couldn’t care less about the ‘curves’ issue. 

His remarks made a lot of sense. The majority of products being developed in the manufacturing industry are designed to be as simple as possible, with the design engineer making the most important decisions about the shape of the product – forget, for once, the input from the sales, or the marketing department. 

What drives the designers is the ability of the factory to actually produce the product. Complex curves and shapes make it more costly and difficult to put into production – especially if the production run is pretty small. Some industries – and he mentioned Dyson as a case in point – produce their products in sufficient quantities to absorb the extra costs involved – but, by and large – curves are taboo! 

The exception to this, he conceded, is the plastics industry, where complex shapes can be moulded far more effectively, the shape being used, automatically, to produce the shell of the mould. In all other industries, he claimed, the designer sought merely to provide the simplest shape possible to cover the gubbins inside, from rocker box covers in an automobile to switch element covers. 

As for the sudden flush of improved curve and surfacing tools in the new generations of CAD modelling packages, he put this down to the emergence of the capability in a more developed state in both the ACIS and Parasolid kernels upon which most packages are based. Mechnical design software, he explained, developed around the needs of the industrial designers above, and it is only recently that the need for more efficient surfacing tools is starting to be satisfied. 

This article, therefore, is dedicated to those idiots who fly in the face of such reason, and persist in trying to design the dramatic looking shapes that persuade the general public that the contents are as stunning as the appearance. 

Splines 

Splines are named after the implements that loftsmen used to create the profiles of small boats a couple of centuries ago (and are still being used by some specialised boatbuilders – particularly Roger Dongray, the inventor of the very successful Cornish Crabber). 

Unable to draw accurate curves on a drawing board, they took themselves off the sail loft in the shipyards, where they could lay out the shape of the hull on the massive floorspace. The splines they used were long pieces of flexible timbers, which they stretched between two fixed points, and fixed lead weights (called ducks) at intervals along the spline. With this they were able to adjust the curve of the spline to produce the exact curve they were looking for.  The shape was used as a base line for constructing the rest of the hull. 

Roger has determined that a minimum of ducks was needed to produce a perfect shape for his purposes, and that over-egging the problem tended to produce unsatisfactory results. 

And that is precisely what splines are today – a continuous free-form shape formed by a number of control points that determine the flow of the curve. The ‘b’ means, simply, basis. 

If you were to search the web for a more technical explanation of b-splines, you would come across a large number of academic sites that provide extremely complex mathematical reasoning behind the construction of such curves, accompanied by a bewildering array of intricate equations. Forget it! All that you need to know is that b-spline curves are an extension to simple and Bezier curves, which have been around for a long time. 

There is a mathematical basis to such curves, owing much to the graphical representation of cos and sin waves. Because of this, Bezier curves are constrained by the directions they can travel – there can  only be one value of x and y. B-spline curves, on the other hand, can loop back on themselves, and create closed curves in any direction. 

NURBs 

A term that is widely used to describe such curves is NURBs – Non-Uniform Rational B-splines. They are used to control the smoothness of the overall curve – a curve that contains no kinks or sharp corners, and flows smoothly through the intermediate control points. 

This is achieved by the software introducing parametric capabilities to the control points. When one of them is moved, the nearest control points are also affected. They do not move, but the angle that the curved line takes as it passes through the control points changes to retain the overall smoothness of the curve.  In this way, only the part of the curve nearest to the control being moved is affected, with little or no effect on the parts of the curve furthest away. The parametric function also means that the direction of the curve bears a relationship to the adjacent curve, and can eventually return upon itself.  

Back to basis, mentioned briefly above. The basis function determines the strength of the influence of a control point at a particular position on the curve. Mathematical explanations of curves relate to a curve having a particular period of time as it progresses. If we imagine a particle travelling along the curve, as it nears a particular control point, the basis value of the control point determines how much effect it will have on the curve, tapering away as it passes the point. In this way the mathematical shape of the curve can be defined. 

Enough of this, though! For a more complete definition of b-splines and NURBs I did find a particularly useful exposition on an Apple web site, www.devworld.apple.com written by Philip Schneider of Apple. I have saved the piece, and would happily email it to anyone interested. 

Dynamic slices through an assembly surface model in ICEM surf

 

Curves in CAD 

Being able to produce b-spline curves in 3D is a starting point for producing Class A surfaces, used extensively in automotive design. Below we list some of the main software suppliers who have installed the best examples of the technology in their modellers. 

One of the principal suppliers of surfacing software is ICEM Limited, with its ICEM Surf software, of which version 4.3 has recently been released. 

ICEM Surf now includes parametric curve sketching and editing amongst its new functions, and G3 curvature matching – an industry standard in Class A surfacing. The software includes numerous features for adding parametric data to surfaces and comparison software for comparing the digitally produced surfaces with digitally scanned tool and die or even physical model data.  Quick Surfacing takes point cloud data from scanned physical models that can be converted to surfaces, ready for further design amendments using ICEM Surf’s surfacing tools. 

The next generation of ICEM Surf will be based on an object-oriented software architecture, and will use parametric technology to build on the capabilities of ICEM Surf. The provision of a free-form modeller alongside the latter package will, according to ICEM, start to bridge the gap between stylists and industrial designers. Lee Cureton, ICEM Chief Executive, says that “…it will spell the end of the divide that exists between the styling and product design function and the design engineering function – benefiting everyone involved in the product development process.” 

My first real introduction to b-splines and surfaces was with VX Corporation. In Verison 7 of their hybrid modelling software, released at the beginning of the year, the company produced enhancements to its surfacing tools to speed up the surfacing process, with powerful new tools to enable designers to create even more complex shapes than before. 

VX users can employ direct surface manipulation, pulling on any point on a face in any direction – modifying the underlying b-splines – to create unlimited surface shapes. 

VX software is widely used in mold creation for plastic modelling, and some of the functions provided with the software are used by designers to remove faces and fillets, and to repair gaps created when manipulating the surfaces. Mould designers also have to add draft angles so that parts can be ejected cleanly from moulds. Using a Remove Faces/Fillets command, fillets created by the designer can easily be removed, add the necessary draft and the re-fillet. 

IronCAD 6 is another hybrid modeller, that has also introduced powerful surfacing tools, and, like VX, can turn surfaces into complex faced solids – and solids into surfaces. IronCAD has integrated both the ACIS and the Parasolid kernels into the software, providing a wealth of software capability in one package. Surfaces can be created in both ACIS and Parasolid, as IronCAD allows the user to specify a specific kernel, selecting whichever has the most suitable tools for the particular surfaces being created. One kernel may have an advantage in  designing one type of geometry, whilst the other kernel provides better results with different geometry – choice of kernel providing the utmost freedom in design. 

IronCAD says that its surfacing capabilities compare very favourably with other desktop products on the market today – delivering a perfect blend of surface styling and solid modelling. It also provides a level of flexibility not found in other design systems. 

The software also contains sheet metal design, draughting, seamless photo-realism and animation in one total design solution, at a very reasonable price – nearly half the price of most mid-range solid modellers (and, incidentally, similar to VX’s prices). 

EDS has recently released the latest version of Solid Edge – Version 14. A significant development in the software is the emergence of Rapid Blue – shape creation technology that, like the other software mentioned, ‘puts the user in control by providing the shape the designer wants, rather than the one the CAD system wants to provide’. Basically the same control over b-splines and surfaces that we have already been discussing. 

Rapid Blue contains some unique features, though, called Blue Dots, Blue Surf, shape-preserving curves, dynamic editing and complementary surface blending, filleting and analysis capabilities.  The latter tools handle all of the complex problems that come with combining different surfaces and awkward angles into one homogenous whole. 

The latest release of Pro/Engineer  - Wildfire – completely redefines the software, adding, amongst many other new tools, improved modelling capabilities, especially for the creation of complex surfaces. Wildfire has added easy-to-grab handles to its models for manipulating shapes – simply grab the model and re-work it! 

Alibre is another company that has added control to the creation of B-splines - by using the defining control points as well as the interpolation points typically input by the user and through which the curve passes. Alibre uses a Modify B-spline command - adding and deleting unnecessary points, but, most usefully, providing the ability to specify the slope of a point by entering a weight and an angle. 

Another company worth talking to, if you are serious about curves and surfaces is Tebit – of whom, more, in a future issue. 

Conclusion

So, there you have it! A painless introduction to the technology without a single equation having to be produced. It gives, I hope, a flavour of the technology and some of the tools that address it. 

Where do Inventor and SolidWorks fit into all of this? Despite the obvious excellent capabilities for creating solid models from either of the two packages, the tools for handling b-spline curves and complex surfaces are rather more limited than with the software listed above.

www.eds.com 

www.icem.com 

www.leonardo.co.uk for IronCAD

www.tebis.com 

www.ptc.com

www.vx.com