9
Using dexels to make hollow models for rapid prototyping W K Chiu and S T Tan* This paper presents a simple algorithm for hollowing out a solid CAD model. The algorithm employs voxel elements to do the hollowing. Instead of performing three-dimensional Boolean operations on the solid CAD model, one-dimensional Boolean operations between the ray representations of the model and voxel elements are carried out. The ray representation of the hollowed model in turn, produces the direct slice files as output to the rapid prototyping machine. In order to satisfy strength considerations, square and honeycomb structures are formed in the hollowed object. q 1998 Elsevier Science Ltd. All rights reserved Keywords: dexel model, ray representation, voxel, direct slicing INTRODUCTION Rapid prototyping is a new technology that produces a physical product from a CAD model. It is useful, especially in the initial product development stage. The rapid prototypes can be used for testing of design ideas, verifying the form and function of the intended piece of the product. If properly carried out, the lead time of the product development cycle would be reduced. For most of the rapid prototyping technologies mentioned in Ref. 1 , the cross-sections of the models need to be traced. To reduce time and material used for building the model, one of the methods is to hollow out the model so that the cross- sectional areas to be traced are reduced. To hollow out a CAD model, an algorithm suggested by Yu and Li 2 was to offset the CSG solid model negatively and the hollowed model was equal to the original model minus the offset model. However, a solid model, such as that shown in Figure 1, can only be negatively offset auto- matically with an offset value smaller than 0.1 in in the Unigraphics V11 system. Otherwise, the offset model would pose self-intersecting solid shells. Thus, the method of offsetting a solid model directly as suggested in Ref. 2 is constrained by the wall thickness requirement of the product model. To overcome the above problem, a new algorithm is introduced in this paper. The algorithm is described in the following section. To add strength to the hollowed out physical model, internal structures can be added to the hollowed CAD model before it is produced by the rapid prototyping machine. Two types of internal structures, square and honeycomb, are implemented in the hollowed model. THE ALGORITHM Several spatial enumeration techniques such as the octree and the dexel model can be used for hollowing the solid CAD model. In this paper, the dexel model, which was first suggested by van Hook 3 , is employed to be the basis of the algorithm for hollowing. The dexel model A bounding block for a CAD solid model to be hollowed is first found and a grid of rays is set inside the bounding block. The resolution of the dexel model is defined as the number of rays in each row and each column of the grid. As seen in Figure 2, from each grid point, a ray is cast. The intersection points of each ray with the model are stored and Computer-Aided Design, Vol. 30, No. 7, pp. 539–547, 1998 q 1998 Elsevier Science Ltd. All rights reserved Printed in Great Britain 0010-4485/98/$19.00+0.00 PII: S0010-4485(98)00008-6 539 *To whom correspondence should be addressed. Department of Mechanical Engineering, The University of Hong Kong, Hong Kong Paper Received: 31 May 1997. Revised: 1 December 1997. Accepted: 18 December 1997 Figure 1 A body of revolution. Size of bounding block is 3.5 3 3.5 3 1.875 in Figure 2 Generating a dexel model

Using dexels to make hollow models for rapid prototyping

  • Upload
    wk-chiu

  • View
    219

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Using dexels to make hollow models for rapid prototyping

Using dexels to make hollowmodels for rapid prototypingW K Chiu and S T Tan*

This paper presents a simple algorithm for hollowing out a solidCAD model. The algorithm employs voxel elements to do thehollowing. Instead of performing three-dimensional Booleanoperations on the solid CAD model, one-dimensional Booleanoperations between the ray representations of the model and voxelelements are carried out. The ray representation of the hollowedmodel in turn, produces the direct slice files as output to the rapidprototyping machine. In order to satisfy strength considerations,square and honeycomb structures are formed in the hollowedobject.q 1998 Elsevier Science Ltd. All rights reserved

Keywords: dexel model, ray representation, voxel, directslicing

INTRODUCTION

Rapid prototyping is a new technology that produces aphysical product from a CAD model. It is useful, especiallyin the initial product development stage. The rapidprototypes can be used for testing of design ideas, verifyingthe form and function of the intended piece of the product. Ifproperly carried out, the lead time of the productdevelopment cycle would be reduced. For most of therapid prototyping technologies mentioned in Ref.1,the cross-sections of the models need to be traced. Toreduce time and material used for building the model, one ofthe methods is to hollow out the model so that the cross-sectional areas to be traced are reduced.

To hollow out a CAD model, an algorithm suggested byYu and Li2 was to offset the CSG solid model negativelyand the hollowed model was equal to the original modelminus the offset model. However, a solid model, such asthat shown inFigure 1, can only be negatively offset auto-matically with an offset value smaller than 0.1 in in theUnigraphics V11 system. Otherwise, the offset modelwould pose self-intersecting solid shells. Thus, the methodof offsetting a solid model directly as suggested in Ref.2 isconstrained by the wall thickness requirement of the productmodel.

To overcome the above problem, a new algorithm isintroduced in this paper. The algorithm is described in thefollowing section.

To add strength to the hollowed out physical model,internal structures can be added to the hollowed CADmodel before it is produced by the rapid prototypingmachine. Two types of internal structures, square andhoneycomb, are implemented in the hollowed model.

THE ALGORITHM

Several spatial enumeration techniques such as the octreeand the dexel model can be used for hollowing the solidCAD model. In this paper, the dexel model, which was firstsuggested by van Hook3, is employed to be the basis of thealgorithm for hollowing.

The dexel model

A bounding block for a CAD solid model to be hollowed isfirst found and a grid of rays is set inside the boundingblock. The resolution of the dexel model is defined as thenumber of rays in each row and each column of the grid. Asseen inFigure 2, from each grid point, a ray is cast. Theintersection points of each ray with the model are stored and

Computer-Aided Design, Vol. 30, No. 7, pp. 539–547, 1998q 1998 Elsevier Science Ltd. All rights reserved

Printed in Great Britain0010-4485/98/$19.00+0.00PII: S0010-4485(98)00008-6

539

*To whom correspondence should be addressed.Department of Mechanical Engineering, The University of Hong Kong,Hong KongPaper Received: 31 May 1997. Revised: 1 December 1997. Accepted: 18December 1997

Figure 1 A body of revolution. Size of bounding block is 3.53 3.5 31.875 in

Figure 2 Generating a dexel model

Page 2: Using dexels to make hollow models for rapid prototyping

the line segments defined by these intersection points areclassified as IN, OUT or ON the object. For hollowing themodel, only IN segments are stored, and they representthe central axis of a voxel with width and height equal to thespacing of the ray grid.

Classification of the voxels

The voxels (called voxel-for-hollowing) formed from theseIN segments are the candidate to be used for hollowing outthe model. They have to be classified as to whether they areIN, OUT or PARTIALLY IN the solid model. Only thosevoxels which are classified as IN are used for hollowing.

To ensure that the hollowed model contains a minimumwall thickness approximately equal to a preset valuet, anoffset voxel (called voxel-for-checking) which is thepositive offset of the voxel-for-hollowing byt is formed.These offset voxels are checked if they are IN, OUT orPARTIALLY IN the solid model. The IN offset voxelsinfer the classification of the IN voxels-for-hollowing.

In this paper, a positive or a negative offset of a voxelsimply means a change in height, length and width of thevoxel, such as that shown inFigure 3, without consideringthe blending at the corners and edges of the offset voxel.The relationship between a voxel-for-hollowing and its cor-responding voxel-for-checking is given inFigure 3.

Checking the interference of a voxel-for-checkingwith the solid model

Correct classification of voxels is the key for successfullyhollowing the solid CAD model. A voxel is classified as IN,PARTIALLY IN or OUT of the model by calculatingwhether there is an intersection between a voxel and themodel. To simplify the calculations, as suggested by Li4, atriangular faceted model for calculating the intersection ofthe facets with the ray representation of the voxels isestablished.

The voxel-for-checking has to be classified whether it isIN, PARTIALLY IN or OUT of the model. In this paper, theclassification result has the following meanings.

(1) An IN voxel-for-checking infers that its correspondingvoxel-for-hollowing is IN. The minimum distancebetween the surfaces of the IN voxel-for-hollowing and the model’s surface is greater than orequal tot.

(2) A PARTIALLY IN voxel-for-checking infers that itscorresponding voxel-for-hollowing is PARTIALLYIN. The minimum distance between the surfaces ofthe PARTIALLY IN voxel-for-hollowing and the mod-el’s surfaces is smaller thant. However, by splitting thevoxel-for-hollowing along its central axis into sub-voxels, some sub-voxels may be classified as IN andthe minimum distance between the surfaces of theIN sub-voxel-for-hollowing and the model’s surfacesis greater than or equal tot.

(3) An OUT voxel-for-checking infers that its correspond-ing voxel-for-hollowing is OUT. The minimumdistance between the surfaces of the OUT voxel-for-hollowing and the model’s surfaces is smaller thant.Even splitting the voxel-for-hollowing into sub-voxels,the minimum distance between the surfaces of all thesub-voxels-for-hollowing and the model’s surfaces isstill smaller thant.

Ray representation of the voxel-for-checkingIn the algorithm, each voxel-for-checking is converted intoa ray representation model in order to check the interferenceof the voxel with the solid model. The set of rays is evenlydistributed inside the voxel, as inFigure 4, and the rays areparallel to the central axis of the voxel. The resolution of thegrid (i.e. the number of rays contained in the rayrepresentation model of the voxel) is set according towhether the grid is sufficiently fine to guarantee that thevoxel can be correctly classified.

The algorithm is described in the following steps:

Step 1.The solid model is first converted into a triangularfaceted model. This has the advantage that the solid isdescribed by only one simple generic form of differentsizes. It simplifies the calculation of the intersection pointsbetween the rays and the model. However, for a complexsolid model, the time taken for the triangulation processmay be substantial.

Step 2.Each voxel-for-checking is converted into a rayrepresentation model (Figure 4). The resolution of thegrid is also set. For the body of revolution shown inFigure 1, the resolution of the grid is set to 4 (i.e.4 3 4¼ 16 rays) and is sufficient for the correctclassification of the voxels when the resolution of thedexel model is set to 20 or greater.

A ray segment can be classified as IN, ON, OUT orPARTIALLY IN based on the criteria stated below:

Hollow models for rapid prototyping: W K Chiu and S T Tan

540

Figure 3 The positive offset of a voxel byt

Figure 4 The ray representation of the voxel-for-checking. (a) The distribution of an example ray grid (43 4) with the direction of the central axis pointinginto the paper. (b) The ray representation of the voxel

Page 3: Using dexels to make hollow models for rapid prototyping

(1) If the whole ray segment lies ON the facets, it isclassified as ON.

(2) If the ray segment has no intersection with the facetedmodel, such as the segments S1, S2 and S3 in Figure 5a,the ray segment is extended infinitely in both the posi-tive and negative directions parallel to the central axisof the voxel.

(3) If the extended ray has no intersections with the facetedmodel (Figure 5b), the ray segment is classified asOUT;

(4) If the extended ray has intersections with the facetedmodel, the intersection points and the start and endpoints PS and PE of the ray segment have to be sortedout. The ray segment is classified as either IN or OUTdepending on the surface normal vector at the intersec-tion point nearest to the start point of the ray segment.For example, inFigure 5c (Figure 5d), the points aresorted as P1, P2, PS, PE, P3, P4 (P1, PS, PE, P2), based on thesurface normal at P2 (P1) which is the nearest intersectionpoint to PS, the ray segment is classified as OUT (IN).

(5) If the ray segment has intersection with the facetedmodel, this ray segment is classified as PARTIALLYIN, such as that inFigure 5e. The PARTIALLY INsegment is subdivided into sub-segments defined bythe intersection points and these sub-segments are clas-sified as IN, ON or OUT depending on the surfacenormal vectors at the intersection points. InFigure 5e,the sub-segments PS P1 and P2 PE are classified as IN.

Step 3.The classification of the voxel-for-checking is basedon the classification result of its ray segments.

(1) If all the ray segments of the voxel-for-checking are INand ON, it is classified as IN.

(2) If at least one ray segment of the voxel-for-checking isOUT (Figure 6), it is classified as OUT.

(3) If none of the ray segment is OUT and some of the raysegments are PARTIALLY IN, such as that inFigure7b, this voxel-for-checking has to be split up into sub-voxels, and this can be done by one-dimensionalBoolean operations on all the IN and ON ray segmentsand sub-segments to calculate the intersection of thesegments, as seen inFigure 8.

(4) If the result of the intersection operation is not NULL,the voxel-for-checking is classified as PARTIALLY INand it is sub-divided into sub-voxels-for-checkingwhere the central axes of the sub-voxels-for-checkingare the resultant segments from the intersection opera-tion. These sub-voxels-for-checking are classified as INvoxel, as inFigure 7c.

(5) If the result of the intersection operation is NULL, thevoxel-for-checking is classified as OUT.

Step 4.Depending on the classification of the voxels-for-checking, their corresponding voxels-for-hollowing can beclassified based on the criteria stated below:

(1) if a voxel-for-checking is an IN voxel, then its corre-sponding voxel-for-hollowing which is the negativeoffset of the voxel-for-checking, is classified as IN;

(2) if a voxel-for-checking is an OUT voxel, then its corre-sponding voxel-for-hollowing is classified as OUT;

(3) if a voxel-for-checking is a PARTIALLY IN voxel, itscorresponding sub-voxel-for-checking is negativelyoffset by t to form the sub-voxel-for-hollowing whichis classified as IN, such as that inFigure 9.

When all the voxels-for-hollowing are classified, ahollowed model can be obtained which is equal to theoriginal model minus all the IN voxels- and sub-voxels-for-hollowing. As all the voxels used for hollowing is insidethe original model, the original boundary of the modelwould be unchanged by this hollowing algorithm.

Hollow models for rapid prototyping: W K Chiu and S T Tan

541

Figure 5 Classification of ray segments. (a) No intersections between ray and solid. (b) and (c) OUT segments; (d) an IN segment; (e) a PARTIALLY INsegment

Figure 6 A voxel-for-checking is classified as OUT based on the classi-fication results of its ray segments. (a) An OUT segment S1; (b) an OUTvoxel-for-checking

Page 4: Using dexels to make hollow models for rapid prototyping

Also, the minimum distance between the surfaces of anIN voxel-for-checking to the surfaces of the original solidmodel is zero, and the minimum distance between the sur-faces of an IN voxel-for-checking and the surfaces of itscorresponding voxel-for-hollowing ist. Thus, the minimumdistance between a surface in the original model and thesurfaces of a voxel-for-hollowing should also bet andthe hollowed model would have a minimum wall thicknessequal tot.

An example case

In Figure 10, an example case is given to show how an INvoxel-for-hollowing is formed with a minimum distancetbetween its surfaces and the model’s surfaces based on thealgorithm explained above. The steps are as follows:

(1) A voxel-for-hollowing is formed, as shown inFigure10a.

(2) Its corresponding voxel-for-checking is formed by posi-tively offsetting the voxel-for-hollowing byt. In Figure10bandc, the voxel-for-checking and its ray represen-tation are shown. In this example, the ray representationof the voxel-for-checking consists of five ray segments.

(3) The ray segments are classified based on the criteriastated inStep 3. In Figure 10d, the IN segments (1,5)and sub-segments (2,3,4) of the voxel-for-checking areshown.

(4) One-dimensional Boolean intersection operation areperformed on all the IN segments and sub-segments.The result is an IN sub-voxel-for-checking, as shownin Figure 10e.

(5) As stated inStep 4, this sub-voxel-for-checking is nega-tively offset by t to form the IN sub-voxel-for-hollow-ing (Figure 10f) which will be subtracted from theoriginal solid.

Ray representation of the hollowed model

The hollowed model is represented by ray representation.To carry out the necessary one-dimensional Booleanoperations, the ray grids G1 and G2 for generating the ray

representation of a solid CAD model and the IN voxels,respectively, must be equivalent. Jai Menon et al.5 definedray grids G1 and G2 as equivalent if their extended infiniteversions are indistinguishable. The ray representation of thehollowed model is equal to the ray representation of the solidmodel minus the ray representation of all the IN voxels- andsub-voxels-for-hollowing. InFigure 11, one of the layers atz¼ 0.9375 in of the ray representation of a hollowed modelis shown.Figure 12shows a rendered picture of a samplesolid. Figure 13 shows a sectional view of the model inFigure 12hollowed out by the above described algorithm.The actual built part is shown inFigure 14.

ADDING INTERNAL STRUCTURE

When strength of the hollowed physical model has to betaken into consideration, internal structures can be addedinto the model. In this paper, two types of internalstructures—square and honeycomb—are recommended.

Ray representation of the structure

Regardless of the solid model of the object, a structure(square or honeycomb) is first built inside the wholebounding block of the model. Instead of forming a solidmodel of the structure, a ray representation of the structureis generated. An example of the honeycomb structure rayrepresentation is shown inFigure 15a. In order to performthe necessary Boolean operations with the ray representa-tion of the hollowed model, the ray grid used for generatingthe ray representation of the structure must be equivalentto the ray grid G1 (and G2) described earlier.

Adding internal structure into the hollowed model

To add an internal structure into the hollowed model, one-dimensional Boolean operations are performed between theray representation of the structure, the IN voxels andthe hollowed model. The ray representation of the internalstructure is equal to the intersection of the ray representation

Hollow models for rapid prototyping: W K Chiu and S T Tan

542

Figure 7 Splitting a PARTIALLY IN voxel-for-checking into sub-voxels. (a) A PARTIALLY IN voxel for checking; (b) the ray representation of the voxelin (a); (c) the IN sub-voxels-for-checking

Figure 8 Sub-division of PARTIALLY IN voxel-for-checking inFigure 7aby one-dimensional intersection Boolean operation

Page 5: Using dexels to make hollow models for rapid prototyping

of the structure and the IN voxels, i.e.

ray-rep of internal-structure

¼ ray-rep of structure∩ ray-rep of IN-voxels

The internal structure is then added into the hollowedmodel. This is done by a Boolean addition of the ray repre-sentation of the hollowed model and the internal structure,i.e.

ray-rep of hollowed-model-with-structure

¼ ray-rep of internal-structure∪ Ray-rep

of hollowed-model:

As an example, the object inFigure 1 is hollowed and ahoneycomb structure is added inside. InFigure 15, a layerof ray representation of the object model atz¼ 0.9375 in isshown. The model is successfully hollowed and added with

the honeycomb internal structures.Figure 16shows a sec-tional view of the model and the built part.

DIRECT SLICING

Instead of generating the standard STL file, the rayrepresentation of the hollowed model (with or withoutinternal structure) can be easily converted into the directslicing file format proposed by Jamieson et al.6. The directslicing file is used as input to the SLS machine to producethe physical model.

Principle of direct slicing

In many of the rapid prototyping processes, such asstereolithographic (SLA) and selective laser sintering(SLS), the cross-sections of the model need to be scannedby the laser beam. Internal hatching of each layer by thelaser beam is used to solidify the liquid polymer (SLA) orfuse the powder particles (SLS). This internal hatchingprocess is repeated for each layer in order to build the wholeprototype layer-by-layer.

When a direct slicing file format is employed, the CADmodel is sliced directly, and the resultant hatching patternsfor each layer are written to the slice files and used as aninput to the rapid prototyping machine.

Parameters of the ray grid

The spacing (l ands) and the direction vectord of the raygrid in Figure 17 must be set when generating theray representation of the model. As the prototype is builtup layer-by-layer along thez direction, thez component ofthe direction vectord can be set to zero.

To ensure that the powder particles (SLS process) in thewhole cross-sections of each layer are properly fused,the spacings of the ray grid between successive rays in thesame layer must be smaller than or equal to the radius ofthe laser beam. Also, the spacingl between successivelayers of rays must be set according to the layer thicknessacceptable by the SLS machine. Currently, the layer thick-ness can be varied from 0.0025 to 0.03 in. The spacingl isset within this range.

DISCUSSION

By the use of the above algorithm, a solid CAD model canbe hollowed out effectively by the use of voxel elements.However, there are several points to note.

As the voxels-for-checking have to be converted into theray representation models for interference checking withthe solid, the resolution of the grid* for generating the rayrepresentation model of the voxel is an essential factor thatwould affect the correctness of the classification of thevoxels. A finer grid can provide a higher degree ofconfidence for classifying the voxels correctly. However,

Hollow models for rapid prototyping: W K Chiu and S T Tan

543

Figure 9 Forming IN sub-voxels-for-hollowing by negatively offset theIN sub-voxel-for-checking. (Solid rectangles, sub-voxels-for-checking;broken rectangles, sub-voxels-for-hollowing)

Figure 10 Steps of forming an IN voxel-for-hollowing for an examplecase. (a) A voxel-for-hollowing before classification; (b) the correspondingvoxel-for-checking; (c) the ray representation of the voxel-for-checking; (d)the IN segments and sub-segments (1–5) of the voxel-for-checking; (e) theIN sub-voxel-for-checking resulting from the classification; (f) the corre-sponding IN sub-voxel-for-hollowing * This resolution is not the resolution of dexel model.

Page 6: Using dexels to make hollow models for rapid prototyping

Hollow models for rapid prototyping: W K Chiu and S T Tan

544

Figure 11 The ray-rep of hollowed model with minimum thicknesst ¼ 0.2 in. (a) Cross-section (atz¼ 0.09375 in) of the model inFigure 1; (b) IN voxels-for-hollowing; (c) ray-rep A of cross-section in (a); (d) ray-rep of IN voxels; (e) ray-rep of hollowed model atz ¼ 0.9375

Figure 12 A sample solid Figure 13 The sectional view of a hollowed model

Page 7: Using dexels to make hollow models for rapid prototyping

the time required for hollowing out the solid would beincreased. There should be a compromise between theresolution of grid and the time for hollowing out the solidin performing the above hollowing algorithm.

The use of voxel elements introduces step effect in theinternal boundary. This step effect can be reduced by the useof higher resolution of the dexel model. Sabine Stifter7

defined a mathematical relation between the accuracy ofthe internal boundary and the resolution. This gives anindicator on the choice of the value of the resolution whenthe smoothness of the internal boundary has to be taken intoconsideration.

In order to remove the non-fused material trapped insidethe model, holes have to be added on the surface of themodel. However, this may not be possible if any changein the boundary surfaces of the model is not allowed. Inthis case, the model would have an inhomogeneous materialproperty.

CONCLUSION

In this paper, an alternative and yet simple hollowing

Hollow models for rapid prototyping: W K Chiu and S T Tan

545

Figure 14 The actual built part

Figure 15 The ray-rep of the hollowed model with internal structure. (a) Ray-rep of honeycomb structure inside the bounding block; (b) ray-rep of IN voxels;(c) ray-rep of internal structure; (d) ray-rep of hollowed model; (e) ray-rep of hollowed object with honeycomb structure

Page 8: Using dexels to make hollow models for rapid prototyping

algorithm has been suggested. By the use of the algorithmexplained before, a solid CAD model can be effectivelyhollowed out with due consideration on the wall thicknessof the hollowed model. The hollowed model reduces the useof material if holes (for the removal of material) are allowedto be added onto the surfaces of the model. Also, adding ofinternal structures into the hollowed model can reinforce thestrength of the hollowed model. As a result, a hollowedprototype would have adequate strength and requires lessmaterial to be produced.

ACKNOWLEDGEMENTS

The authors thank the Department of Mechanical Engi-neering, The University of Hong Kong and the Hong KongResearch Grant Council for providing financial support toW.K. Chiu.

REFERENCES

1. Jacobs, P.,Rapid Prototyping and Manufacturing: Fundamentals ofStereolithography, 1st edn. Society of Manufacturing Engineers,1992.

2. Yu, K. M. and Li, C. L., Speeding up rapid prototyping by offset.Proc. Inst. Mech. Engrs, Part B: J. Engng Manufact., 1995,209, 1–8.

3. van Hook, T., Real-time shaded NC milling display. ACM SIG-GRAPH Comp. Graphics, 1996,4(2), 15–20.

4. Li, R., An algorithm for building octree from boundary representation.Intell. Des. Manufact. Prototyping, 1991,50, 13–23.

5. Menon, J., Marisa, R.J. and Zagajac, J., More powerful solid modelingthrough ray representations. IEEE Comp. Graphics Applic., 1994,14(3), 22–35.

Hollow models for rapid prototyping: W K Chiu and S T Tan

546

Figure 16 The section view of the hollowed sample with honeycomb structure added. (a) Sectional view; (b) built part

Figure 17 The parameters of the grid

Page 9: Using dexels to make hollow models for rapid prototyping

6. Jamieson, R. and Hacker, H., Direct slicing of CAD models for rapidprototyping. Rapid Prototyping J., 1995,1(2), 4–12.

7. Stifter, S., Simulation of NC machining based on the dexel model: acritical analysis. Int. J. Adv. Manufact. Technol., 1995,10, 145–157.

Hollow models for rapid prototyping: W K Chiu and S T Tan

547

Wai-Kei Chiu graduated with a 1stclass honours B. Eng degree inMechanical Engineering (IndustrialAutomation stream) at the Universityof Hong Kong in 1996. He is currentlyreading a M. Phil degree in theDepartment of Mechanical Engineer-ing at the University. His researchinterests include solid modelling andrapid prototyping. (E-mail:[email protected])

Sooi-thor Tan is a professor in theDepartment of Mechanical Engineer-ing, The University of Hong Kong. Hehas a B.Sc. and a Ph.D. in mechanicalengineering from the University ofLeeds, UK. He is a CharteredEngineer, a Fellow of the Institutionof Mechanical Engineers in the UK, aMember of the American Society ofMechanical Engineers, and a seniorMember of the Society ofManufacturing Engineers. His

research interests include geometric modelling, and the applicationof computers to mechanical engineering. (E-mail: [email protected])