10
Space-filling curves in tool-path applications Jordan J Cox, Yasuko Takezaki, Helaman R P Ferguson*, Kent E Kohkonen t and Eric L Mulkay Several methods have been developed for the computerized generation of space-filling curves, but these curves have never been used for NC tool-path generation. The paper discusses the application of space-filling curves as tool paths for sculptured-surface machining. Tool paths that are space-filling curves, single-direction conventional paths, and 2-direction conventional paths are compared. The efficiency ratings of the paths require further testing, but the preliminary conclusions are favourable for space-filling curves. Keywords: space-filling curves, NC tool paths, tool-path generation, sculptured surfaces, numerical control, surface finish see that straight lines are not necessarily used to fill in an area. The mathematical theory of space-filling curves has been used for just such an application. Space-filling curves have been used for recursive algorithms and for 'drawing pretty pictures' (computer graphics). It is believed, though, that space-filling curves have a more practical use in NC tool-path generation. This paper describes the use of space-filling curves as tool paths for machining sculptured surfaces. Peano 1 introduces the idea of a space-filling curve based on a continuous mapping of the line segment r0, 1] onto the unit square (see Figure la). It is defined in terms of the ternary fractional expansion of t: Numerically controlled (NC) machine tools are used to achieve highly accurate machined surfaces in industrial applications. Usually, this involves machining flat or regular smooth surfaces. However, sometimes, irregularly curved or sculptured surfaces, such as those found on turbine blades, aeroplane wings and automobile bumpers, are required. Conventional NC tool paths follow a line-by-line linear rasterization which results in a series of parallel cuts along a surface. This is often successful, but it is inefficient, and the surface finish has an undesired orientation. The line-by-line approach is the result of familiarity with such methods as cathode-ray tube (CRT) rasterization and other engineering applications. Also, a very basic algorithm is required to cover the desired space. However, if one watches an artist paint a figure, or even a small child fill in a colouring book, one can Department of Mechanical Engineering, Brigham Young University, Provo, UT 84602, USA *Supercomputing Research Center, Bowie, MD, USA t'Department of Manufacturing Engineering, Brigham Young University, Provo, UT 84602, USA Paper received." 28 May 1993. Revised." 30 August 1993 t= ~ A.3-" n=l A point on the curve P(x, y) is defined parametrically by (tl= f 3 = \r=l Hilbert 2 introduces a method of defining a space-filling curve as the limit of polygons enclosed in the unit square, using a 4-fold repetition of successive polygons which correspond to a base-2 number representation (see Figure lb). Moore a applies a similar method using a 9-fold repetition. Several methods have been developed for the computerized generation of space-filling curves. NulP developed a nonrecursive algorithm and implemented it in FORTRAN IV. Wirth 5 and Goldschlager 6 used a recursive algorithm in PASCAL. Cole and Morrison 7 generated Peano, Hilbert and Sierpinski s curves using a recursive algorithm in S-ALGOL.Witten and Wyvill9 used 0010-4485/94/030215-10 © 1994 Butterworth-Heinemann Ltd Computer-Aided Design Volume 26 Number 3 March 1994 215

Space-filling curves in tool-path applications

Embed Size (px)

Citation preview

Page 1: Space-filling curves in tool-path applications

Space-filling curves in tool-path applications Jordan J Cox, Yasuko Takezaki, Helaman R P Ferguson*, Kent E Kohkonen t and Eric L Mulkay

Several methods have been developed for the computerized generation of space-filling curves, but these curves have never been used for NC tool-path generation. The paper discusses the application of space-filling curves as tool paths for sculptured-surface machining. Tool paths that are space-filling curves, single-direction conventional paths, and 2-direction conventional paths are compared. The efficiency ratings of the paths require further testing, but the preliminary conclusions are favourable for space-filling curves.

Keywords: space-filling curves, NC tool paths, tool-path generation, sculptured surfaces, numerical control, surface finish

see that straight lines are not necessarily used to fill in an area. The mathematical theory of space-filling curves has been used for just such an application. Space-filling curves have been used for recursive algorithms and for 'drawing pretty pictures' (computer graphics). It is believed, though, that space-filling curves have a more practical use in NC tool-path generation. This paper describes the use of space-filling curves as tool paths for machining sculptured surfaces.

Peano 1 introduces the idea of a space-filling curve based on a continuous mapping of the line segment r0, 1] onto the unit square (see Figure la). It is defined in terms of the ternary fractional expansion of t:

Numerically controlled (NC) machine tools are used to achieve highly accurate machined surfaces in industrial applications. Usually, this involves machining flat or regular smooth surfaces. However, sometimes, irregularly curved or sculptured surfaces, such as those found on turbine blades, aeroplane wings and automobile bumpers, are required. Conventional NC tool paths follow a line-by-line linear rasterization which results in a series of parallel cuts along a surface. This is often successful, but it is inefficient, and the surface finish has an undesired orientation.

The line-by-line approach is the result of familiarity with such methods as cathode-ray tube (CRT) rasterization and other engineering applications. Also, a very basic algorithm is required to cover the desired space. However, if one watches an artist paint a figure, or even a small child fill in a colouring book, one can

Department of Mechanical Engineering, Brigham Young University, Provo, UT 84602, USA *Supercomputing Research Center, Bowie, MD, USA t'Department of Manufacturing Engineering, Brigham Young University, Provo, UT 84602, USA Paper received." 28 May 1993. Revised." 30 August 1993

t= ~ A.3-" n = l

A point on the curve P(x, y) is defined parametrically by

(tl= f 3 = \ r = l

Hilbert 2 introduces a method of defining a space-filling curve as the limit of polygons enclosed in the unit square, using a 4-fold repetition of successive polygons which correspond to a base-2 number representation (see Figure lb). Moore a applies a similar method using a 9-fold repetition.

Several methods have been developed for the computerized generation of space-filling curves. NulP developed a nonrecursive algorithm and implemented it in FORTRAN IV. Wirth 5 and Goldschlager 6 used a recursive algorithm in PASCAL. Cole and Morrison 7 generated Peano, Hilbert and Sierpinski s curves using a recursive algorithm in S-ALGOL. Witten and Wyvill 9 used

0010-4485/94/030215-10 © 1994 Butterworth-Heinemann Ltd Computer-Aided Design Volume 26 Number 3 March 1994 215

Page 2: Space-filling curves in tool-path applications

Space-filling curves in tool-path applications: J J Cox et at.

L_

IF-IV nh4 ,

a b

Figure ! Space-filling curves; (a) Peano, (b) Hilbert, (c) dragon

! C

a b c

Figure 2 Expansion of basic shape to obtain space-filling pattern; (a) expansion, (b) level 1, 2, (c) level 2

a recursive algorithm in the interactive-graphics language GROPER. Griffiths t° generated Hilbert and Sierpinski curves using rotation and reflection in PASCAL. Fisher 1 used a new programming language, OCCAM, with an interactive algorithm. Palmer 12 used a recursive technique in an early version of FORTRAN. Finally, Ackerman i 3 generated Hilbert curves in Applesoft BASIC.

A space-filling curve in a unit square is a continuous curve which passes through every point of the square in the limit as the order of the curve increases to infinity. Until now there have been very few applications of space-filling curves. In fact, space-filling curves have primarily been used for graphics and computer peripherals. Null used Peano, Hilbert and Sierpinski curves in plotter testing. Goldschlager states that 'the main application of these curves to computer science has been recreation, as they produce pretty pictures on a plotter '6. Witten and Wyvill used a recursive programming technique with space-filling curves in computer graphics, such as a bilevel display of continuous-tone images and complex patterns of picture description. Cole ~4 used Peano and Hilbert curves in raster-scan graphics. Davis and Knuth t5 used dragon curves in recreation (see Figure 1c).

In this paper, numerical-control tool paths are discussed as an application of space-filling curves. As this seems to he the first time that space-filling curves have been used in manufacturing, this seems to he unique.

D E S C ~ P T I O N O F S E L E C T E D C U J V E S

Two curves were selected and investigated for the development of tool paths. One of the curves was used by Palmer ~2 in an early version of FORTRAN for plotter use. The curve is an expansion of the subdivisions from the original shape and an equilateral triangle (see Figure 2b). As recursive subdivision is performed, each edge is replaced by three segments of equal length (see Figure 2a). This process continues until the desired complexity is reached. Instead of a unit square, the curve fills a dragon's curve-like shape as the order reaches infinity (recall Figure lc). For this reason, it was found that it is difficult to use this type of curve to generate tool paths on a 2-parameter surface.

Space-fiUing curves have the characteristic of traversing some of the same points twice. This is not a desired feature for a tool path, as it results in i n e ~ c y and

216 Computer-Aided Design Volume 26 Number 3 March 1994

Page 3: Space-filling curves in tool-path applications

undesirable tool contact. In a good tool path, truncation must be incorporated to ensure that the tool does not traverse the same point more than once. With an appropriate level of truncation, this is attainable.

Truncation is carried out by the creation of a new set of points that represent the original segment in the following manner:

PN1 = BEVEL * P1 + (1-BEVEL) * P2

PN2 = (1 --BEVEL) * P1 +BEVEL * P2

Figure 5

a b Figure 3 Truncation of basic curves; (a) truncation of Palmer's curve, (b) truncation of Moore's curve

Space-filling curves in tool-path applications: J J Cox et al.

where P1 is one endpoint of the original segment, P2 is the other endpoint of the original segment, Ps i is a new point that represents PI, and PN2 is a new point that represents P2-

After new segment endpoints have been defined, lines must be drawn to connect the new segments (see Figure 3a).

There are 3** (order + 1) lines before truncation. After truncation, the number of lines doubles (compare Figure 2c with Figure 4a). By truncation of the vertices, overlapping can be avoided, and the continuity of the curve becomes clear. However, a truncation bevel of 0.5 results in point overlap (see Figure 4b), and a truncation bevel greater than 0.5 makes the curve cross (see Figure 4c). Therefore, for the truncation to provide the desired effect, bevel values should be kept between 0 and 0.5.

The other curve investigated is a Moore's curve 3, which is a 9-fold repetition (see Figure 5). There are 9** (level) lines before truncation, and again the number doubles after truncation. The truncation of a Moore's curve is shown in Figure 3b. The truncation sequence that is performed on Palmer's curve (see Figure 4) is performed on the Moore's curve in Figure 6.

a b c

Figure 4 Effect of Bevel value on curve truncation; (a) bevel 0.25, (b) bevel 0.5, (c) bevel 0.75

a b

Expansion of Moore's curve; (a) level 1, (b) level 2, (c) level 3

C

Computer-Aided Design Volume 26 Number 3 March 1994 217

Page 4: Space-filling curves in tool-path applications

Space-filling curves in tool-path applications: J J Cox et al.

Ilil a b

Figure 6

c

Truncation bevel values applied to Moore's curve; (a) bevel 0.25, (b) bevel 0.5, (c) bevel 0.75

TOOL PATHS F O R N U M E R I C A L - C O N T R O L C U T T I N G

Contoured surfaces are used extensively in machining net-shape forming tools, i.e. injection moulds, transfer moulds, compression moulds, thermoform moulds, laminating moulds, metal-forming dies etc. These surfaces are often cut with ball endmills which produce a radius cut on the surface of the part. With each pass of the cutter over the surface of the machined part, the radius profiles of successive passes intersect, leaving a ridge or scallop between the cutter paths. The height of the ridge is determined by the radius of the cutter and the distance of the cutter-path stepover. The ridge height can be reduced by using a larger cutter radius or decreasing the amount of cutter stepover for each pass. Both actions, however, have inherent drawbacks. By increasing the cutter radius, there is a greater chance of rough surface finish due to chatter in the cutting process. When the stepover is decreased, the length of the machining time is increased.

There are a number of factors that affect the creation of tool paths. The net result of these factors determine the surface finish and tolerance on the part surface. Once the part surface has been machined, the ridges are removed by hand-finishing methods. Chatter marks and other cutting irregularities are also removed by hand finishing. The development of a cutter path that will remove material efficiently and leave a good surface finish will help to reduce the amount of time required to finish net-shaped tool surfaces. One solution to this problem is the use of cylindrical endmilling cutters instead of ball-end cutters. C u i 16 discusses three kinds of algorithm for generating tool paths and the corresponding tool-centre paths to improve the surface finish in the machining of sculptured surfaces with a cylindrical endmilling cutter. Jensen and Anderson 17 used differential geometry to specify tool paths and the tool inclination for 5-axis milling machines which match the local curvature of contoured parts to greatly reduce milling time and improve surface finish.

Tool

N N

Surface ¢rosssection

Figure 7 Distortion of sculptured surface caused by tool gouging

Space-filling curves are continuous and cover the parametric area evenly. One possible advantage of space-filling curves as tool paths is that, by the use of a proper curve, the change of tool direction can be less than 90 ° , which may reduce the operation time and machine wear due to the dynamics o f the machine. Another advantage relates to the surface finish. Unlike traditional rasterized tool paths which leave 'stripes' on the machined surface, tool paths generated by space-filling curves do not leave oriented tool marks on the machined part. This leads to a surface finish which is uniform in all directions.

On a sculptured surface, when the tool axis does not exactly line up with the normal of the surface, the tool cuts into the surface in the region of the tool profile immediately surrounding the tool tip (see Figure 7). To avoid this gouging or distortion, the tool has to be offset such that the cutting surface of the tool is always tangent to the desired design surface. Surface-curvature matching can be carried out by tilting the tool presentation using Jensen's techniques 17 on a 5-axis milling machine. However, with a standard 3-axis machine, the tool must always be oriented along the same direction. The equation for calculating points on the tool path to eliminate gouging is is as follows:

V T = R * U + V p - R * e 3

where V r is a vector to a point on the tool path or the tip of the cutter, R is the radius of the ball endmill, u is

218 Computer-Aided Design Volume 26 Number 3 March 1994

Page 5: Space-filling curves in tool-path applications

the unit normal vector of the surface, Vp is the current position on the surface, and e3 is the unit vector in the z direction.

A Moore's-curve tool path and a tool in motion are displayed on a stereoscopic Tektronix terminal in Colour Plate IA. Machining is done by a 3-axis NC milling machine (see Colour Plate 1B), which reads a postprocessed file. The file consists of G codes (preparatory functions) and M codes (miscellaneous functions) to set up the machine, and the x, y, z coordinates of the points to locate the tool.

A data file consisting of the tool radius, the maximum and minimum x, y, z coordinates, and the coordinates of the points on the curve are input into a postprocessing program which writes a file to drive the NC machine.

(ul'vt) ~ L U a b

Figure 8 Mapping of domain to range; (a) domain, (b) range subset

a b

Figure 9 Mapping oftool path to range; (a) domain, (b) range subset

Space-filling curves in tool-path applications: J J Cox et al.

The postprocessed file is then transferred from the w,x to a PC, and then to an NC machine for operation.

M A P P I N G T O D O M A I N

Since the Moore's curve is developed on a unit square, it can be mapped onto a 2-parameter domain (0 < u < 1, 0 < v < 1). The domain can then be mapped through appropriate intermediate functions onto a sculptured surface (see Figure 8). The tool path developed in the domain can then also be mapped to the sculptured surface (see Figure 9).

A B~zier surface is expressed by matrix multiplication as

X(u, v) = B U * P * B V

where X is a point on the surface, BU is the blending matrix in the u direction, BV is the blending matrix in the v direction, and P is the control-point matrix.

Since the domain is a unit square, all the values of u and v are found between 0 and 1. The Btzier surface is constructed by choosing a set of (u, v) values on the domain, and calculating their corresponding surface values.

The Moore's curve is mapped onto a Btzier surface (see Figure lOa) by choosing u and v values along the tool path, and mapping them to the surface. For comparison, a conventional tool path is also mapped onto the same Btzier surface (see Figure lob). To generate a conventional tool path, the iteration of u and v must be defined. The values of u and v start at 0. The v value is held constant, while u is incremented from 0 to 1 by a set stepover rate. Then, u is held constant (u = 1), while v is incremented by one stepover. Next, v is held constant, while u is incremented from 1 to 0, and the process is repeated. This creates a continuous path which travels back and forth across the part surface. To have a surface finish that is similar to that of a space-filling curve tool path, the part must be machined twice with two conventional tool paths offset by 90 ° (see Figure lOc).

a

Figure 10 b c

Tool paths mapped onto B~zier surface; (a) Moore's path, (b) conventional path, (c) 2-directional conventional path

Computer-Aided Design Volume 26 Number 3 March 1994 219

Page 6: Space-filling curves in tool-path applications

Space-filling curves in tool-path applications: J J Cox eta/.

a

b Figure 11 Palmer's curve in machinable wax; (a) Palmer's path on flat surface, (b) detail

S U R F A C E F I N I S H

As mentioned above, the surface finish depends on several factors. The tool radius, the tool stepover and the surface curvature are some of the factors which determine surface finish. A smooth surface finish (i.e. small ridges) is usually desirable for a machined part.

For purposes of comparison, four parts are machined; one is a flat surface using Palmer's curve (see Fioure 11), the second is a B6zier surface using a Moore's curve (see Fioure 12), the third is the same B~zier surface using a conventional tool path (see Fioure 13, and the last one is also the same surface using a conventional tool path in both directions (see Fioure 14).

To make a comparison, a similar number of points are needed to generate the tool paths; otherwise, the

b Figure 12 Moore's curve in machinable wax; (a) Moore's curve on B6zier surface, (b) detail

machining speed may not be the same for each path. Each direction of the double traversed conventional tool path (see Fioure lOc) is given half as many points as the regular conventional tool path (see Fioure lOb). By this adjustment, the total numbers of points become similar. The radius of the tool is 0.25 in.

On the flat surface, the scallop height is even throughout the surface. On the Bb..zier surface, regardless of the tool-path type, the scallop height is not even throughout because of the different curvatures within the surface.

D I S C U S S I O N O F R E S U L T S

A comparison of space-filling curves and a conventional tool path is difficult, since the surface finish is very

220 Computer-Aided Design Volume 26 Number 3 March 1994

Page 7: Space-filling curves in tool-path applications

Space-filling curves in tool-path applications: J J Cox et el.

Colour Plate IA Stereographic pair of tool path

I

Colour Plate IB NC machine in operation

Computer-Aided Design Volume 26 Number 3 March 1994 221

Page 8: Space-filling curves in tool-path applications

Space-filling curves in tool-path applications: J J Cox eta/.

a 11

b Figure 13 Conventional tool path in machinable wax; (a) conventional path on Bezier surface, (b) detail

Table 1 Comparison of measurements for Moore's curve, single- direction conventional path, and 2-directional conventional path

Moore's Cony I Conv II

Maximum distance 0.052378 0 .052632 0.052632 between paths on 1 x 1 in 2 domain, in

Length on 1 x 1 in 2 38.15 21.00 42.00 domain, in (level=3) (20 path) (40 path)

Number of points on 1458 1460 1440 surface

Length on surface, 164.6900 122 .4535 223.2437 in

Time to machine at 3.34 2.5 4.54 50 in/rain, rain

Actual cutting speed, 49.31 48.98 49.17 in/min

b Figure 14 2-directional conventional tool path in machinable wax; (a) conventional 2-way path, (b) detail

different; however , length is a c o m p a r a b l e factor. Table 1 shows the c ompa r i son between the three pa ths on the B~zier surface; the ' M o o r e ' s ' co lumn relates to the M o o r e ' s space-fi l l ing curve (see Fioure 12), the 'Conv I ' co lumn relates to a conven t iona l 1-way pa th (see Figure 13), and the 'Conv I I ' co lumn relates to a convent iona l 2-way pa th (see Figure 14).

A c ompa r i son of the M o o r e ' s curve and the Conv I pa th shows tha t the M o o r e ' s pa th removes much more mater ia l , and leaves the mater ia l more evenly cut t h roughou t the surface. The Conv I cut has r idges or ien ted in one d i rec t ion that were made as the tool passed. Al though the M o o r e ' s tool pa th was sl ightly longer than the Conv I tool pa th , the surface finish was much better . A compar i son of the M o o r e ' s curve and the Conv II pa th shows the effieicncy of space-fil l ing tool paths . The M o o r e ' s pa th removes more mater ia l in a

222 Computer-Aided Design Volume 26 Number 3 March 1994

Page 9: Space-filling curves in tool-path applications

shorter time, because the length of the tool path is 10% shorter than the Cony II path. Also, the Moore's path again gives a better surface finish. A comparison of the measurements is shown in Table I.

Two other issues that are related to space-filling curves as tool paths are the dynamics of the machine and the surface finish. The dynamics of the machine could be considered to be an issue, because of the large number of small straight-line segments associated with the space-filling curves that are oriented in many different directions. Acceleration and deceleration of the machine tool can create constraints on the feedrates. However, this is no different from the point-to-point machining of sculptured surfaces. Continuous machining reduces the acceleration and deceleration of the off-surface portions of the tool path. This continuous method greatly reduces the effects of the dynamics of the machine. Geometrically, space-filling curves do not lend themselves to continuous machining; they are inherently point-to-point. Although there is not as yet any specific data about the comparison of the dynamics in the two methods, we do not consider machine dynamics as having a significant effect on the use of space-filling curves as tool paths. More investigation is yet to be done.

The second issue is related to the surface finish. Hand finishing after using a space-filling curve appears to be enhanced, since the pattern of scallops is nonoriented, leading to more even removal. As yet, there is no data to substantiate this claim. Research on improving the surface finish has yet to be completed.

C O N C L U S I O N S

Space-filling curves have potential as tool paths. The Moore's space-filling curve used as a tool path shows efficiency in material removal. To determine the efficiency of each tool path, a test to measure the amount of material removed needs to be conducted. The relationship between the truncation value and the scallop height should also be examined so that the best truncation value can be found.

Space-filling curves in tool-path applications: J J Cox et al.

facturing businesses.

Yasuko Takezaki Hacking graduated from Nagoya Institute o f Technology with a BS in architectural engineering in 1980, and from Brigham Young University, USA in 1987 with an M S in computer-integrated manufacturing, specializing in CAD. She owns Bezier International, a computer consulting firm in Hawaii, USA, specializing in applications and training for those doing business in the Japanese language, and offering a range o f services for manu-

- - Helaman R P Ferguson was formerly a professor o f mathematics at Brigham Young University, USA, and is now a research scientist and an artist. He has developed two computationally intensive industrial- and cutting-technology pro- cesses to make 3D hard copy and 'in the round' artefacts in the laboratory and the studio. The first uses straight-line code robots in NC environments. The second uses virtual-image projection and a 6-axis system with various attached

tools in a sculpture-studio environment.

Kent E Kohkonen is an assistant professor. His research interests are in numerically controlled manufacturing processes, and include software for parametric and conversational NC machine tools, the development o f net-shape manufacturing tooling using CNC machine tools, CAD/CAM factory networking and data specifications, and CNC preset.tool design databases and implementations.

Eric L Mulkay graduated from Brigham Young University, USA, with a BS in mechanical engineering in 1993. He received a 1993 Tau Beta Pi fellowship for graduate studies, and is currently working on a master's degree. His research is focused on applying geometric- modelling methods to iterative nwnerical- analysis techniques. This research is intended to apply more accurate geometric considerations in numerical solutions.

Jordan J Cox is an assistant professor o f mechanical engineering. He received a BS and an M S in mechanical engineering from Brigham Young Uni- versity, USA, in 1983 and 1984, respectively. He then worked in the aerospace industry before gaining a PhD in mechanical engineering from Purdue University, USA, in 1991. He joined the

faculty at BYU at that t ime. He currently directs graduate students in three areas: engineering analysis, reverse

engineering, and advanced geometric modelling.

R E F E R E N C E S

1 Peano, G 'Sur une courb¢, qui remplit tout une aire plaine' Math. Annal. Vol 36 (1890) pp 157-160

2 Hilbcrt, D 'Uebcr stetige Abbildung einer Linie auf ein Flachenstuck' Math. Annal. Vol 38 (1891) pp 459, 460

3 Moore, E H 'On certain crinkly curves' Trans. Amer. Math. Soc. Vol 1 (1900) pp 72-90

4 Null, A 'Space-filling curves, or h o w to was te time with a plotter' Soft. Pract. & Exper. Vol 1 (1971) pp 403-410

Computer-Aided Design Volume 26 Number 3 March 1994 223

Page 10: Space-filling curves in tool-path applications

Space-filling curves in tool-path applications: J J Cox et al.

5 Wirth, N Algorithms + Data Structures = Programs Prentice-Hall, USA (1976)

6 Goldsehlager, L M 'Short algorithms for space-filling curves' Soft; Pract.& Exper. Vol 11 (1981) pp 99, 100

7 Cole, A J and Morrison, R An Introduction to Programming with S-algol Cambridge University Press, UK (1982)

8 Sierpinski, W 'Sur une nouvelle courbe qui remplit toute une aire plaine' Bull. Acad. Sci. Cracovie Set. A (1912) pp 462-478

9 Witten, I H and Wyvill, B 'On the generation and use of space-filling curves' Soft. Pract. & Exper. Vol 13 (1983) pp 519-525

10 Grittiths, J G 'Table-driven algorithms for generating space-filling curves' Soft. Pract. & Exper. Vol 17 (1985) pp 37-41

11 Fisher, A J 'A new algorithm for generating Hilbert curves' Soft. Pract. & Exper. Vol 16 (1986) pp 5-12

12 Palmer, J A B 'A Fortran procedure for drawing some space-filling curves' Soft. Pract. & Exper. Vol 16 (1986)

pp 559-574 13 Ackerman, M 'Hilbert curves made simple' Byte (Jun 1986)

pp 137, 148 14 Cole, A J 'Compaction techniques for raster scan graphics using

space-filling curves' Comput. J. Vol 30 No 1 (1987) pp 87-92 15 Davis, C and Knuth, D E 'Number representations and Dragon

curves - Part I' J. Recreational Math. Vol 3 (1970) pp 66-81

16 Cui, Z 'Tool-path generation in manufacturing sculptured surfaces with a cylindrical end-milling cutter' Comput. lndust. Vol 17 (1991) pp 385-389

17 Jensen, C G and Anderson, D C 'Accurate toot placement and orientation for finish surface machining' J. Des. & Manuf. (1993) (accepted for publication)

18 Mortensen, F 'Numerical methods for generation of tool paths of corrected and uncorrected planar surfaces of the foot' Research Paper Brigham Young University, USA (1987)

224 Computer-Aided Design Volume 26 Number 3 March 1994