Services
for sophisticated NURBS surface design


iCapp develops CAD applications - libraries, with or without GUI - for special purposes in tool design, manufacturing or mechanical engineering in general. We have extensive experience in the calculating of curvature- and process optimized spline-surfaces, depending on arbitrary criteria and boundary conditions.

Examples include the calculation of surfaces for turbine blades, boat hulls or car body construction. Some examples are described below.




Centre Pompidou Metz
c CA2M,
Shigeru Ban Architects Europe et
Jean de Gastines,
image Artefactory


Holzbau Amann (Weilheim, Germany), one of the leaders for timber construction required a smooth single NURBS surface for the roof construction of the "Centre Pompidou Metz" building. The dimensions were approximately 100m x 100m.

The task was to transform the provided set of 3000 3d points from the architectural concept while taking into consideration plethora of various boundary conditions, stemming aesthetic, civil engineering and production requirements.

The project was completed in close collaboration with designtoproduction (Zürich, Switzerland).

Technical details

The use of a single NURBS surface (left), enables to optimize the overall smoothness. The illustration on the right shows a zebra-plot of the resulting surface, allowing the designer to assess curvature. In the form.


The timber construction comprised 6 layers of wooden beams. Each layer surface was calculated from the first NURBS surface, using a normal offset distance (around 0.4 m).

The length and shape of each beam varies due to the torsion in the layer surface. This causes the ends of the beam to vary (see left figure above). For the project to succeed, all beams have to be manufactured automatically by an NC milling machine. The digital data required to achieve this, is readily available from the 6 layers.

Martin Pfundt (Holzbau Amann) and Fabian Scheurer (designtoproduction) report in the German journal for architecture ARCH+ on "Zur Kommunikation zwischen Zimmermeistern und CNC-Fräsen".





Digitized data of lower human limbs - femur, patella, fibula and tibia - from Stryker


Stryker develops medical technologies for individual patient requirements. To be able to use the virtual data for their design work, they digitized thousands of lower limbs’ bones using CT. Three STL data sets were calculated from the scan data: for outer marrow, outer spongiosa and outer bone surfaces. To get sufficient input data for engineering tasks, for example, for solid modelling, the STL data had to be translated into continuous NURBS surfaces.

To achieve this transformation, iCapp developed a fully automated software solution for batch operations. The software would: Read each STL-file, calculate the surface parameters and create the resultant STEP file. This enabled scriptable automatic translation of hundreds of STL meshes. Technical details

Surface STL data sets - top left. The resulting NURBS-surface model - top right. The software creates smooth surfaces, bounded by 3 to 15 boundary edges. Most reverse engineering tools can use a maximum of 4 curves to define a surface. Overcoming this restriction was required to solve the design challenge. We were able to adjust the seams within 0.01mm tolerance - to get a waterproof model for each layer. This allowed production of high quality watertight forms.


The image above shows the three layers of the bone (as mentioned above). Usually, transformation of mesh data into NURBS surfaces results in files with a very large size. Our software, however, uses algorithms, which allow the resultant files to be far smaller. For this specific medical application, 200 faces were typically needed to represent one femur bone layer described by approximately 20 000 curvature based triangles derived from the original scan. The file size of the face model is almost the same as the size of the STL mesh file.

No special hardware was required for calculating the faces. The calculation time (2Ghz processor) required to transform each layer was just 6min.


For each tissue layer, NURBS models have been calculated for every given bone. The images above and below show the complexity of the created surface models for the upper and the lower part of a femur.


The advantage of the algorithm used in this application is its ability to allow an approximation to the mesh data to be done for every single face. Each point is calculated with a distance-to-mesh tolerance of 0.1mm. This ensures that all bone details are represented in a smooth surface model.






Detail of a composite
single scull
designed by Stämpfli
manufactured by
hs composite.


Since 1896 Stämpfli has been a designer of rowing boats. Today, it is one of the worlds leading manufacturers of high performance sculls. A few years ago in collaboration with hs composite they started to design and produce carbon fiber sculls. It is critically important to reduce water turbulence and friction forces in symmetrical boat designs. CAD solutions were used to produce the data for high quality surfaces. The surface data from the final model was to be used in manufacturing the product.


Technical details

Design development became a blend of traditional “trial and error” methods and the ones utilising technical advances in CAD and CNC control. Experienced highly skilled craftsmen created the initial shape. Professional rowers optimized the 8 m long body of the prototype by several trials. The final shape then was digitized by an optical scanner (ATOS by GOM). The result was a closed triangle mesh (see figure above).

When trying to fix such long symmetrical part for scanning, distortions can’t be avoided because of the objects own weight. The first step was to correct the scanned point data to eliminate these torsion and bending effects.


Some special approximation techniques had to be developed to transform the corrected scan data to continuous NURBS faces. The goal was to maximise the smoothness of the surfaces - reducing water resistance and to improve performance. Curvature changes had to be avoided while the surfaces had to match the scanned data as closely as possible.

iCapp designed a symmetrical set of NURBS-surfaces representing a solid part. The figure above shows the resulting model.


Ultimately, faces had to form a symmetrical solid part. The quality of the resulting body over all surfaces can be shown by zebra plots. The figure above shows the light lines on the most critical face, the front side of the scull.