three dimensional biarc approximation of freeform surfaces for...
TRANSCRIPT
INT J PROD RES 2000 VOL 38 NO 4 739plusmn 763
Three dimensional biarc approximation of freeform surfaces formachining tool path generation
YUAN-JYE TSENGy and YII-DER CHENy
In typical methods for machining freeform surfaces the machining tool paths aregenerated by approximating the surface curves using line segments While theapproximated shape of the surface can be produced using cutters traversingalong the line segments the reg nal surface produced may lack smoothness andcontinuity due to the zigzag patterns of the line segments To reduce the di erenceand increase smoothness and continuity the arc splines can be used to approx-imate the freeform curves and surfaces A biarc is composed of two consecutivecircular arcs with an identical tangent at the connecting point Since the tangentsat the connecting node are the same the C1 continuity property can be preservedIn addition if the di erence between the curvatures at the connecting node isminimized then the C2 smoothness property can be enhanced In this researchthe biarc segments are used to approximate the 2D and 3D freeform curves andsurfaces using the largest deviation distance between the curves and the biarcs asthe approximation criterion The tool contact points generated and biarcs can beused to generate NC tool paths for machining 2D curves and 3D curves andsurfaces The methodology presented is implemented on a personal computerExample parts modelled with B-spline curves and surfaces are tested and dis-cussed The test results show that the number of tool contact points and thenumber of segments are fewer than the typical linear approximation methods
1 Introduction
The main idea of CAD and CAM integration is automatic generation of manu-facturing information directly from CAD data The purpose of machining tool pathsis to guide the cutting tools to produce the part geometry specireg ed in design Thetypical approach to machining tool path generation can be summarized as dereg ning acutting logic under the constraints of tool size and part geometry to generate the toolpaths within the specireg ed tolerance
In tool path generation for machining freeform surfaces tool contact points aregenerated based on the surface dereg nitions and the tolerance specireg cations The toolcontact points then are used to generate cutter location (CL) data according to thespecireg ed cutter geometry and size The cutter location data can be post-processed togenerate the NC (Numerical Control) codes for driving NC machines In previousresearch in machining of freeform surfaces there are various approaches andsystems Recent reviews can be found in Jensen and Anderson (1996) and Austinet al (1997) The di erent methods can be summarized into four categories (1)parametric method (2) Cartesian method (3) o set surface method and (4) cubicapproximation method The parametric method has been presented by Loney and
International Journal of Production Research ISSN 0020plusmn 7543 printISSN 1366plusmn 588X online 2000 Taylor amp Francis Ltdhttpwwwtandfcoukjournalstf00207543html
Revision received July 1999 Department of Industrial Engineering Yuan Ze University 135 Yuan-Tung Road
Chung-Li Taoyuan Hsien 320 TaiwanTo whom correspondence should be addressed e-mail ieyjtsaturnyzuedutw
Ozsoy (1987) Choi and Jun (1989) and Elber and Cohen (1994) The parametricmethod generates tool contact curves by traversing along constant-parameter curvesThe tool contact points are obtained by approximating the isoparametric curves withline segments The Cartesian method generates tool paths in the x-y-z coordinateworld A typical Cartesian approach such as presented by Huang and Oliver (1994)generates planar equally spaced curves by intersecting parallel planes with the sur-face to dereg ne tool contact curves The tool contact points are generated by approx-imating the tool contact curves with line segments The o set surface method hasbeen presented by Kim and Kim (1995) and Tang et al (1995) In the o set surfacemethod an o set surface is generated by o setting with a proper distance such as atool radius from the original surface The tool contact points and cutter locationdata are generated on the o set surface using linear segment approximation Adi erent type of method can be characterized as cubic block approximationmethod In the research by Lee et al (1994) and Tseng and Sue (1999) a toolpath generation method is developed for machining surfaces using an octree approx-imation method A grid height approximation method is presented by You and Chu(1995) in which grid blocks with di erent heights are used to approximate a surface
Based on the observation in the previous research machining of freeform sur-faces has been performed using linear elements for example line segments or squareblocks As shown in reg gure 1(a) line segments are used to approximate a curve toproduce the approximated shape of the curve or surface While the reg nishing shapecan be produced within the specireg ed tolerance the reg nal curves and surfaces
740 Y-J Tseng and Y -D Chen
(a)
(b)Figure 1 Approximating a curve using line segments and biarcs (a) Approximating a curve
using line segments (b) Approximating a curve using biarcs
produced may lack smoothness and continuity Since the cutter actually moves ina zigzag manner the excessive sudden changes of cutter movements may causeadditional collision and tool wear To reduce the di erence and increase smoothnessand continuity arc splines can be used to approximate the curves and surfacesFigure 1(b) shows an example of approximating a curve using biarcs
A biarc is composed of two connected circular arcs with the identical tangentdirection at the connecting point Since the tangents at the connecting point are thesame the tangent continuity property can be preserved In addition if the di erencebetween two curvatures at the connecting point is minimized then the smoothnessproperty can also be enhanced Furthermore line segments and single circular arcsare all special cases of biarcs Therefore the alternatives in determining the mostappropriate biarc segments for approximating a given curve are unrestricted Thetraditional line segment approximation can be considered a special case in the biarcapproximation Based on this idea the biarc segments can be used to approximatethe curves and surfaces to achieve the purpose of C1 tangent continuity and C2
curvature continuity The biarcs are suitable for generating machining tool pathsince all the NC machines are equipped with circular interpolating capability ProperNC codes can be assigned to guide the cutters to traverse the circular arcs In thisresearch new methods are developed to generate tool contact points and paths formachining 3D freeform curves and surfaces using the biarc approximation approach
The biarcs have been applied in reg tting and approximating discrete data points inprevious research such as presented in Parkinson and Moreton (1991) Moreton etal (1991) Meek and Walton (1992) Schonherr (1993) and Yeung and Walton(1994) In the related research in biarc reg tting and approximating a given curveMeek and Walton (1993) uses biarc to approximate a 2D quadratic curve Biarcsare used to build bounds for a given curve The bounded regions are used to evaluatethe tolerance between the biarcs and the given curve In Ong et al (1996) anapproach to biarc reg tting of 2D B-spline curves is presented The objective is tominimize the area between the biarcs and the curve Although the area can beminimized the important tolerance specireg cations such as the absolute deviationdistance may be out of range In common machining practice the tolerance isusually specireg ed as the largest deviation distance between the tool path and thedesigned curve
In summary in previous research biarcs have been used in approximating andreg tting a group of data points In addition biarcs have been used in approximatingand reg tting 2D curves However biarcs have not been used in approximating 3Dcurves and 3D surfaces Moreover the tolerances are not discussed from the machin-ing point of views The commonly used deviation distance has not been used as theapproximating criterion Therefore a general 3D biarc approximation model isrequired for approximating 3D curves and surfaces for machining purposes
In this research a new approach is presented for tool path generation formachining 3D curves and surfaces using biarc approximation First 2D biarcs areused to approximate a 2D B-spline curve Second a new model of 3D biarcs ispresented for approximating a 3D B-spline curve Third 3D surface curves areapproximated using biarcs for generating tool contact points and paths for machin-ing 3D surfaces The approximating criterion is the largest allowed deviation dis-tance between the curve and the biarcs The biarcs generated dereg ne the tool contactpoints and paths The tool contact points and paths can be post-processed for NCcode generation for machining The 2D biarcs are suitable for machining on a 3-axis
7413D biarc approximation for freeform surfaces
milling machine The 3D biarcs are suitable for machining on a 5-axis machine toolThe 3D surfaces can be machined by machining the 2D surface curves if the surfacecurves are generated using the Cartesian planar section method The 3D surface canbe machined by machining the 3D surface curves if the surface curves are generatedusing the isoparametric method
In the following section the methods for biarc approximation of 2D curves and3D curves are presented In 3 tool path planning for machining 3D surfaces using3D biarc approximation is discussed Section 4 presents the implementation anddiscussions Finally 5 concludes this study
2 Biarc approximation of 3D curves
21 2D biarcsA biarc can be described as two circular arcs connected at a point Also at the
connecting point the tangents of the two circular arcs are the same As shown inreg gure 2 the points S and E are the start point and end point of the biarc The pointQ is the connecting point of the two circular arcs CS and CE The tangents at theconnecting point are the same
As shown in reg gure 3 the line SE is built by connecting the start point and endpoint The angle nothellipiexclordm lt not lt ordmdaggerrepresents the tangent angle measured from tangenttS to line SE The angle shy hellipiexclordm lt shy lt ordmdaggerrepresents the tangent angle measured fromthe line SE to the tangent tE As shown in reg gure 3 the arc angles sup3 and reg can bemeasured at the centres OS and OE If the start point S end point E tangent tS at Stangent tE at E and the angles not and shy are known then the arc angles sup3 and reg can becalculated
In reg gure 3 it can be observed that not Daggershy sup3 Daggerreg Therefore it can be obtainedthat reg not Daggershy iexclsup3 where sup3hellipiexclordm lt sup3 lt ordmdagger denotes the arc angle of arc CS andreg not Daggershy iexclsup3hellipiexclordm lt reg lt ordm) denotes the arc angle of arc CE An arc angle is meas-ured from the start point to the end point If an arc angle is measured in an anti-clockwise direction it is designated a positive angle If an arc angle is measured inclockwise direction it is designated a negative angle
22 Di erent cases of biarcsThe special shapes of biarcs can be identireg ed according to the di erent relation-
ships between the tangent angles not and shy Several special cases can be recognized
742 Y-J Tseng and Y -D Chen
Figure 2 Illustrations of the shape and the dereg nitions of a biarc
For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows
(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)
(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)
(3) not 6 0 and shy 6 0
This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape
23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D
biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical
As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single
7433D biarc approximation for freeform surfaces
Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc
model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows
If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc
As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as
P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger
744 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a
line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc
The equations of the tangents at the start and end points can be given as
hellipxiexclxSdaggerpS
hellipy iexclySdaggerqS
hellipz iexclzSdaggerrS
hellipxiexclxEdaggerpE
hellipy iexclyEdaggerqE
hellipziexclzEdaggerrE
The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as
xiexclx1
p ˆy iexcly1
q ˆziexclz1
rt where t is a real parameter and t 2permil01Š
Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective
7453D biarc approximation for freeform surfaces
Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2
Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2
24 Radii of biarcs
241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be
determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that
rsquo iexcliquest Daggernot Daggershy
2
Also from D SQE it can be obtained that
SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger
Based on D SPOS D QPOS it can be obtained that sup3 2rsquo
In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two
circular arcs of a 2D biarc are
rS ˆSE sin
not Daggershy Daggersup3
2 iexclnotiexcl cent2sinsup3
2iexcl cent sinnot Daggershy
2iexcl cent
rE ˆSE sin not iexcl
sup3
2iexcl cent2sinnot Daggershy iexclsup3
2iexcl cent sinnot Daggershy
2iexcl cent
746 Y-J Tseng and Y -D Chen
Figure 7 The illustrations for calculating the radii of a 2D biarc
242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-
nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas
rS1 ˆSQ sin
not Daggershy Daggersup31
2iexcl cent2sinsup31
2iexcl cent sinnot Daggershy
2iexcl cent rS2 ˆSQ sin not iexcl
sup31
2iexcl cent2sinnot Daggershy iexclsup31
2iexcl cent sinnot Daggershy
2iexcl cent
rE1 ˆQE sin
not1 Daggershy 1 Daggersup33
2iexcl cent2sinsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent rE2 ˆQE sin not1 iexcl
sup33
2iexcl cent2sinnot1 Daggershy 1 iexclsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent
25 Arc angles of biracs
251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized
For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed
7473D biarc approximation for freeform surfaces
Figure 8 The illustration of arc angles and radii of a 3D biarc
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
Ozsoy (1987) Choi and Jun (1989) and Elber and Cohen (1994) The parametricmethod generates tool contact curves by traversing along constant-parameter curvesThe tool contact points are obtained by approximating the isoparametric curves withline segments The Cartesian method generates tool paths in the x-y-z coordinateworld A typical Cartesian approach such as presented by Huang and Oliver (1994)generates planar equally spaced curves by intersecting parallel planes with the sur-face to dereg ne tool contact curves The tool contact points are generated by approx-imating the tool contact curves with line segments The o set surface method hasbeen presented by Kim and Kim (1995) and Tang et al (1995) In the o set surfacemethod an o set surface is generated by o setting with a proper distance such as atool radius from the original surface The tool contact points and cutter locationdata are generated on the o set surface using linear segment approximation Adi erent type of method can be characterized as cubic block approximationmethod In the research by Lee et al (1994) and Tseng and Sue (1999) a toolpath generation method is developed for machining surfaces using an octree approx-imation method A grid height approximation method is presented by You and Chu(1995) in which grid blocks with di erent heights are used to approximate a surface
Based on the observation in the previous research machining of freeform sur-faces has been performed using linear elements for example line segments or squareblocks As shown in reg gure 1(a) line segments are used to approximate a curve toproduce the approximated shape of the curve or surface While the reg nishing shapecan be produced within the specireg ed tolerance the reg nal curves and surfaces
740 Y-J Tseng and Y -D Chen
(a)
(b)Figure 1 Approximating a curve using line segments and biarcs (a) Approximating a curve
using line segments (b) Approximating a curve using biarcs
produced may lack smoothness and continuity Since the cutter actually moves ina zigzag manner the excessive sudden changes of cutter movements may causeadditional collision and tool wear To reduce the di erence and increase smoothnessand continuity arc splines can be used to approximate the curves and surfacesFigure 1(b) shows an example of approximating a curve using biarcs
A biarc is composed of two connected circular arcs with the identical tangentdirection at the connecting point Since the tangents at the connecting point are thesame the tangent continuity property can be preserved In addition if the di erencebetween two curvatures at the connecting point is minimized then the smoothnessproperty can also be enhanced Furthermore line segments and single circular arcsare all special cases of biarcs Therefore the alternatives in determining the mostappropriate biarc segments for approximating a given curve are unrestricted Thetraditional line segment approximation can be considered a special case in the biarcapproximation Based on this idea the biarc segments can be used to approximatethe curves and surfaces to achieve the purpose of C1 tangent continuity and C2
curvature continuity The biarcs are suitable for generating machining tool pathsince all the NC machines are equipped with circular interpolating capability ProperNC codes can be assigned to guide the cutters to traverse the circular arcs In thisresearch new methods are developed to generate tool contact points and paths formachining 3D freeform curves and surfaces using the biarc approximation approach
The biarcs have been applied in reg tting and approximating discrete data points inprevious research such as presented in Parkinson and Moreton (1991) Moreton etal (1991) Meek and Walton (1992) Schonherr (1993) and Yeung and Walton(1994) In the related research in biarc reg tting and approximating a given curveMeek and Walton (1993) uses biarc to approximate a 2D quadratic curve Biarcsare used to build bounds for a given curve The bounded regions are used to evaluatethe tolerance between the biarcs and the given curve In Ong et al (1996) anapproach to biarc reg tting of 2D B-spline curves is presented The objective is tominimize the area between the biarcs and the curve Although the area can beminimized the important tolerance specireg cations such as the absolute deviationdistance may be out of range In common machining practice the tolerance isusually specireg ed as the largest deviation distance between the tool path and thedesigned curve
In summary in previous research biarcs have been used in approximating andreg tting a group of data points In addition biarcs have been used in approximatingand reg tting 2D curves However biarcs have not been used in approximating 3Dcurves and 3D surfaces Moreover the tolerances are not discussed from the machin-ing point of views The commonly used deviation distance has not been used as theapproximating criterion Therefore a general 3D biarc approximation model isrequired for approximating 3D curves and surfaces for machining purposes
In this research a new approach is presented for tool path generation formachining 3D curves and surfaces using biarc approximation First 2D biarcs areused to approximate a 2D B-spline curve Second a new model of 3D biarcs ispresented for approximating a 3D B-spline curve Third 3D surface curves areapproximated using biarcs for generating tool contact points and paths for machin-ing 3D surfaces The approximating criterion is the largest allowed deviation dis-tance between the curve and the biarcs The biarcs generated dereg ne the tool contactpoints and paths The tool contact points and paths can be post-processed for NCcode generation for machining The 2D biarcs are suitable for machining on a 3-axis
7413D biarc approximation for freeform surfaces
milling machine The 3D biarcs are suitable for machining on a 5-axis machine toolThe 3D surfaces can be machined by machining the 2D surface curves if the surfacecurves are generated using the Cartesian planar section method The 3D surface canbe machined by machining the 3D surface curves if the surface curves are generatedusing the isoparametric method
In the following section the methods for biarc approximation of 2D curves and3D curves are presented In 3 tool path planning for machining 3D surfaces using3D biarc approximation is discussed Section 4 presents the implementation anddiscussions Finally 5 concludes this study
2 Biarc approximation of 3D curves
21 2D biarcsA biarc can be described as two circular arcs connected at a point Also at the
connecting point the tangents of the two circular arcs are the same As shown inreg gure 2 the points S and E are the start point and end point of the biarc The pointQ is the connecting point of the two circular arcs CS and CE The tangents at theconnecting point are the same
As shown in reg gure 3 the line SE is built by connecting the start point and endpoint The angle nothellipiexclordm lt not lt ordmdaggerrepresents the tangent angle measured from tangenttS to line SE The angle shy hellipiexclordm lt shy lt ordmdaggerrepresents the tangent angle measured fromthe line SE to the tangent tE As shown in reg gure 3 the arc angles sup3 and reg can bemeasured at the centres OS and OE If the start point S end point E tangent tS at Stangent tE at E and the angles not and shy are known then the arc angles sup3 and reg can becalculated
In reg gure 3 it can be observed that not Daggershy sup3 Daggerreg Therefore it can be obtainedthat reg not Daggershy iexclsup3 where sup3hellipiexclordm lt sup3 lt ordmdagger denotes the arc angle of arc CS andreg not Daggershy iexclsup3hellipiexclordm lt reg lt ordm) denotes the arc angle of arc CE An arc angle is meas-ured from the start point to the end point If an arc angle is measured in an anti-clockwise direction it is designated a positive angle If an arc angle is measured inclockwise direction it is designated a negative angle
22 Di erent cases of biarcsThe special shapes of biarcs can be identireg ed according to the di erent relation-
ships between the tangent angles not and shy Several special cases can be recognized
742 Y-J Tseng and Y -D Chen
Figure 2 Illustrations of the shape and the dereg nitions of a biarc
For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows
(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)
(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)
(3) not 6 0 and shy 6 0
This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape
23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D
biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical
As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single
7433D biarc approximation for freeform surfaces
Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc
model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows
If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc
As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as
P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger
744 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a
line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc
The equations of the tangents at the start and end points can be given as
hellipxiexclxSdaggerpS
hellipy iexclySdaggerqS
hellipz iexclzSdaggerrS
hellipxiexclxEdaggerpE
hellipy iexclyEdaggerqE
hellipziexclzEdaggerrE
The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as
xiexclx1
p ˆy iexcly1
q ˆziexclz1
rt where t is a real parameter and t 2permil01Š
Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective
7453D biarc approximation for freeform surfaces
Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2
Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2
24 Radii of biarcs
241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be
determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that
rsquo iexcliquest Daggernot Daggershy
2
Also from D SQE it can be obtained that
SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger
Based on D SPOS D QPOS it can be obtained that sup3 2rsquo
In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two
circular arcs of a 2D biarc are
rS ˆSE sin
not Daggershy Daggersup3
2 iexclnotiexcl cent2sinsup3
2iexcl cent sinnot Daggershy
2iexcl cent
rE ˆSE sin not iexcl
sup3
2iexcl cent2sinnot Daggershy iexclsup3
2iexcl cent sinnot Daggershy
2iexcl cent
746 Y-J Tseng and Y -D Chen
Figure 7 The illustrations for calculating the radii of a 2D biarc
242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-
nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas
rS1 ˆSQ sin
not Daggershy Daggersup31
2iexcl cent2sinsup31
2iexcl cent sinnot Daggershy
2iexcl cent rS2 ˆSQ sin not iexcl
sup31
2iexcl cent2sinnot Daggershy iexclsup31
2iexcl cent sinnot Daggershy
2iexcl cent
rE1 ˆQE sin
not1 Daggershy 1 Daggersup33
2iexcl cent2sinsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent rE2 ˆQE sin not1 iexcl
sup33
2iexcl cent2sinnot1 Daggershy 1 iexclsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent
25 Arc angles of biracs
251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized
For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed
7473D biarc approximation for freeform surfaces
Figure 8 The illustration of arc angles and radii of a 3D biarc
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
produced may lack smoothness and continuity Since the cutter actually moves ina zigzag manner the excessive sudden changes of cutter movements may causeadditional collision and tool wear To reduce the di erence and increase smoothnessand continuity arc splines can be used to approximate the curves and surfacesFigure 1(b) shows an example of approximating a curve using biarcs
A biarc is composed of two connected circular arcs with the identical tangentdirection at the connecting point Since the tangents at the connecting point are thesame the tangent continuity property can be preserved In addition if the di erencebetween two curvatures at the connecting point is minimized then the smoothnessproperty can also be enhanced Furthermore line segments and single circular arcsare all special cases of biarcs Therefore the alternatives in determining the mostappropriate biarc segments for approximating a given curve are unrestricted Thetraditional line segment approximation can be considered a special case in the biarcapproximation Based on this idea the biarc segments can be used to approximatethe curves and surfaces to achieve the purpose of C1 tangent continuity and C2
curvature continuity The biarcs are suitable for generating machining tool pathsince all the NC machines are equipped with circular interpolating capability ProperNC codes can be assigned to guide the cutters to traverse the circular arcs In thisresearch new methods are developed to generate tool contact points and paths formachining 3D freeform curves and surfaces using the biarc approximation approach
The biarcs have been applied in reg tting and approximating discrete data points inprevious research such as presented in Parkinson and Moreton (1991) Moreton etal (1991) Meek and Walton (1992) Schonherr (1993) and Yeung and Walton(1994) In the related research in biarc reg tting and approximating a given curveMeek and Walton (1993) uses biarc to approximate a 2D quadratic curve Biarcsare used to build bounds for a given curve The bounded regions are used to evaluatethe tolerance between the biarcs and the given curve In Ong et al (1996) anapproach to biarc reg tting of 2D B-spline curves is presented The objective is tominimize the area between the biarcs and the curve Although the area can beminimized the important tolerance specireg cations such as the absolute deviationdistance may be out of range In common machining practice the tolerance isusually specireg ed as the largest deviation distance between the tool path and thedesigned curve
In summary in previous research biarcs have been used in approximating andreg tting a group of data points In addition biarcs have been used in approximatingand reg tting 2D curves However biarcs have not been used in approximating 3Dcurves and 3D surfaces Moreover the tolerances are not discussed from the machin-ing point of views The commonly used deviation distance has not been used as theapproximating criterion Therefore a general 3D biarc approximation model isrequired for approximating 3D curves and surfaces for machining purposes
In this research a new approach is presented for tool path generation formachining 3D curves and surfaces using biarc approximation First 2D biarcs areused to approximate a 2D B-spline curve Second a new model of 3D biarcs ispresented for approximating a 3D B-spline curve Third 3D surface curves areapproximated using biarcs for generating tool contact points and paths for machin-ing 3D surfaces The approximating criterion is the largest allowed deviation dis-tance between the curve and the biarcs The biarcs generated dereg ne the tool contactpoints and paths The tool contact points and paths can be post-processed for NCcode generation for machining The 2D biarcs are suitable for machining on a 3-axis
7413D biarc approximation for freeform surfaces
milling machine The 3D biarcs are suitable for machining on a 5-axis machine toolThe 3D surfaces can be machined by machining the 2D surface curves if the surfacecurves are generated using the Cartesian planar section method The 3D surface canbe machined by machining the 3D surface curves if the surface curves are generatedusing the isoparametric method
In the following section the methods for biarc approximation of 2D curves and3D curves are presented In 3 tool path planning for machining 3D surfaces using3D biarc approximation is discussed Section 4 presents the implementation anddiscussions Finally 5 concludes this study
2 Biarc approximation of 3D curves
21 2D biarcsA biarc can be described as two circular arcs connected at a point Also at the
connecting point the tangents of the two circular arcs are the same As shown inreg gure 2 the points S and E are the start point and end point of the biarc The pointQ is the connecting point of the two circular arcs CS and CE The tangents at theconnecting point are the same
As shown in reg gure 3 the line SE is built by connecting the start point and endpoint The angle nothellipiexclordm lt not lt ordmdaggerrepresents the tangent angle measured from tangenttS to line SE The angle shy hellipiexclordm lt shy lt ordmdaggerrepresents the tangent angle measured fromthe line SE to the tangent tE As shown in reg gure 3 the arc angles sup3 and reg can bemeasured at the centres OS and OE If the start point S end point E tangent tS at Stangent tE at E and the angles not and shy are known then the arc angles sup3 and reg can becalculated
In reg gure 3 it can be observed that not Daggershy sup3 Daggerreg Therefore it can be obtainedthat reg not Daggershy iexclsup3 where sup3hellipiexclordm lt sup3 lt ordmdagger denotes the arc angle of arc CS andreg not Daggershy iexclsup3hellipiexclordm lt reg lt ordm) denotes the arc angle of arc CE An arc angle is meas-ured from the start point to the end point If an arc angle is measured in an anti-clockwise direction it is designated a positive angle If an arc angle is measured inclockwise direction it is designated a negative angle
22 Di erent cases of biarcsThe special shapes of biarcs can be identireg ed according to the di erent relation-
ships between the tangent angles not and shy Several special cases can be recognized
742 Y-J Tseng and Y -D Chen
Figure 2 Illustrations of the shape and the dereg nitions of a biarc
For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows
(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)
(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)
(3) not 6 0 and shy 6 0
This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape
23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D
biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical
As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single
7433D biarc approximation for freeform surfaces
Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc
model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows
If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc
As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as
P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger
744 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a
line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc
The equations of the tangents at the start and end points can be given as
hellipxiexclxSdaggerpS
hellipy iexclySdaggerqS
hellipz iexclzSdaggerrS
hellipxiexclxEdaggerpE
hellipy iexclyEdaggerqE
hellipziexclzEdaggerrE
The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as
xiexclx1
p ˆy iexcly1
q ˆziexclz1
rt where t is a real parameter and t 2permil01Š
Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective
7453D biarc approximation for freeform surfaces
Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2
Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2
24 Radii of biarcs
241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be
determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that
rsquo iexcliquest Daggernot Daggershy
2
Also from D SQE it can be obtained that
SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger
Based on D SPOS D QPOS it can be obtained that sup3 2rsquo
In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two
circular arcs of a 2D biarc are
rS ˆSE sin
not Daggershy Daggersup3
2 iexclnotiexcl cent2sinsup3
2iexcl cent sinnot Daggershy
2iexcl cent
rE ˆSE sin not iexcl
sup3
2iexcl cent2sinnot Daggershy iexclsup3
2iexcl cent sinnot Daggershy
2iexcl cent
746 Y-J Tseng and Y -D Chen
Figure 7 The illustrations for calculating the radii of a 2D biarc
242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-
nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas
rS1 ˆSQ sin
not Daggershy Daggersup31
2iexcl cent2sinsup31
2iexcl cent sinnot Daggershy
2iexcl cent rS2 ˆSQ sin not iexcl
sup31
2iexcl cent2sinnot Daggershy iexclsup31
2iexcl cent sinnot Daggershy
2iexcl cent
rE1 ˆQE sin
not1 Daggershy 1 Daggersup33
2iexcl cent2sinsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent rE2 ˆQE sin not1 iexcl
sup33
2iexcl cent2sinnot1 Daggershy 1 iexclsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent
25 Arc angles of biracs
251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized
For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed
7473D biarc approximation for freeform surfaces
Figure 8 The illustration of arc angles and radii of a 3D biarc
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
milling machine The 3D biarcs are suitable for machining on a 5-axis machine toolThe 3D surfaces can be machined by machining the 2D surface curves if the surfacecurves are generated using the Cartesian planar section method The 3D surface canbe machined by machining the 3D surface curves if the surface curves are generatedusing the isoparametric method
In the following section the methods for biarc approximation of 2D curves and3D curves are presented In 3 tool path planning for machining 3D surfaces using3D biarc approximation is discussed Section 4 presents the implementation anddiscussions Finally 5 concludes this study
2 Biarc approximation of 3D curves
21 2D biarcsA biarc can be described as two circular arcs connected at a point Also at the
connecting point the tangents of the two circular arcs are the same As shown inreg gure 2 the points S and E are the start point and end point of the biarc The pointQ is the connecting point of the two circular arcs CS and CE The tangents at theconnecting point are the same
As shown in reg gure 3 the line SE is built by connecting the start point and endpoint The angle nothellipiexclordm lt not lt ordmdaggerrepresents the tangent angle measured from tangenttS to line SE The angle shy hellipiexclordm lt shy lt ordmdaggerrepresents the tangent angle measured fromthe line SE to the tangent tE As shown in reg gure 3 the arc angles sup3 and reg can bemeasured at the centres OS and OE If the start point S end point E tangent tS at Stangent tE at E and the angles not and shy are known then the arc angles sup3 and reg can becalculated
In reg gure 3 it can be observed that not Daggershy sup3 Daggerreg Therefore it can be obtainedthat reg not Daggershy iexclsup3 where sup3hellipiexclordm lt sup3 lt ordmdagger denotes the arc angle of arc CS andreg not Daggershy iexclsup3hellipiexclordm lt reg lt ordm) denotes the arc angle of arc CE An arc angle is meas-ured from the start point to the end point If an arc angle is measured in an anti-clockwise direction it is designated a positive angle If an arc angle is measured inclockwise direction it is designated a negative angle
22 Di erent cases of biarcsThe special shapes of biarcs can be identireg ed according to the di erent relation-
ships between the tangent angles not and shy Several special cases can be recognized
742 Y-J Tseng and Y -D Chen
Figure 2 Illustrations of the shape and the dereg nitions of a biarc
For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows
(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)
(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)
(3) not 6 0 and shy 6 0
This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape
23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D
biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical
As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single
7433D biarc approximation for freeform surfaces
Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc
model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows
If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc
As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as
P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger
744 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a
line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc
The equations of the tangents at the start and end points can be given as
hellipxiexclxSdaggerpS
hellipy iexclySdaggerqS
hellipz iexclzSdaggerrS
hellipxiexclxEdaggerpE
hellipy iexclyEdaggerqE
hellipziexclzEdaggerrE
The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as
xiexclx1
p ˆy iexcly1
q ˆziexclz1
rt where t is a real parameter and t 2permil01Š
Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective
7453D biarc approximation for freeform surfaces
Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2
Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2
24 Radii of biarcs
241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be
determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that
rsquo iexcliquest Daggernot Daggershy
2
Also from D SQE it can be obtained that
SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger
Based on D SPOS D QPOS it can be obtained that sup3 2rsquo
In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two
circular arcs of a 2D biarc are
rS ˆSE sin
not Daggershy Daggersup3
2 iexclnotiexcl cent2sinsup3
2iexcl cent sinnot Daggershy
2iexcl cent
rE ˆSE sin not iexcl
sup3
2iexcl cent2sinnot Daggershy iexclsup3
2iexcl cent sinnot Daggershy
2iexcl cent
746 Y-J Tseng and Y -D Chen
Figure 7 The illustrations for calculating the radii of a 2D biarc
242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-
nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas
rS1 ˆSQ sin
not Daggershy Daggersup31
2iexcl cent2sinsup31
2iexcl cent sinnot Daggershy
2iexcl cent rS2 ˆSQ sin not iexcl
sup31
2iexcl cent2sinnot Daggershy iexclsup31
2iexcl cent sinnot Daggershy
2iexcl cent
rE1 ˆQE sin
not1 Daggershy 1 Daggersup33
2iexcl cent2sinsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent rE2 ˆQE sin not1 iexcl
sup33
2iexcl cent2sinnot1 Daggershy 1 iexclsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent
25 Arc angles of biracs
251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized
For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed
7473D biarc approximation for freeform surfaces
Figure 8 The illustration of arc angles and radii of a 3D biarc
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows
(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)
(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)
(3) not 6 0 and shy 6 0
This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape
23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D
biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical
As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single
7433D biarc approximation for freeform surfaces
Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc
model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows
If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc
As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as
P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger
744 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a
line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc
The equations of the tangents at the start and end points can be given as
hellipxiexclxSdaggerpS
hellipy iexclySdaggerqS
hellipz iexclzSdaggerrS
hellipxiexclxEdaggerpE
hellipy iexclyEdaggerqE
hellipziexclzEdaggerrE
The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as
xiexclx1
p ˆy iexcly1
q ˆziexclz1
rt where t is a real parameter and t 2permil01Š
Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective
7453D biarc approximation for freeform surfaces
Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2
Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2
24 Radii of biarcs
241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be
determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that
rsquo iexcliquest Daggernot Daggershy
2
Also from D SQE it can be obtained that
SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger
Based on D SPOS D QPOS it can be obtained that sup3 2rsquo
In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two
circular arcs of a 2D biarc are
rS ˆSE sin
not Daggershy Daggersup3
2 iexclnotiexcl cent2sinsup3
2iexcl cent sinnot Daggershy
2iexcl cent
rE ˆSE sin not iexcl
sup3
2iexcl cent2sinnot Daggershy iexclsup3
2iexcl cent sinnot Daggershy
2iexcl cent
746 Y-J Tseng and Y -D Chen
Figure 7 The illustrations for calculating the radii of a 2D biarc
242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-
nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas
rS1 ˆSQ sin
not Daggershy Daggersup31
2iexcl cent2sinsup31
2iexcl cent sinnot Daggershy
2iexcl cent rS2 ˆSQ sin not iexcl
sup31
2iexcl cent2sinnot Daggershy iexclsup31
2iexcl cent sinnot Daggershy
2iexcl cent
rE1 ˆQE sin
not1 Daggershy 1 Daggersup33
2iexcl cent2sinsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent rE2 ˆQE sin not1 iexcl
sup33
2iexcl cent2sinnot1 Daggershy 1 iexclsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent
25 Arc angles of biracs
251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized
For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed
7473D biarc approximation for freeform surfaces
Figure 8 The illustration of arc angles and radii of a 3D biarc
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows
If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc
As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as
P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger
744 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a
line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc
The equations of the tangents at the start and end points can be given as
hellipxiexclxSdaggerpS
hellipy iexclySdaggerqS
hellipz iexclzSdaggerrS
hellipxiexclxEdaggerpE
hellipy iexclyEdaggerqE
hellipziexclzEdaggerrE
The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as
xiexclx1
p ˆy iexcly1
q ˆziexclz1
rt where t is a real parameter and t 2permil01Š
Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective
7453D biarc approximation for freeform surfaces
Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2
Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2
24 Radii of biarcs
241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be
determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that
rsquo iexcliquest Daggernot Daggershy
2
Also from D SQE it can be obtained that
SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger
Based on D SPOS D QPOS it can be obtained that sup3 2rsquo
In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two
circular arcs of a 2D biarc are
rS ˆSE sin
not Daggershy Daggersup3
2 iexclnotiexcl cent2sinsup3
2iexcl cent sinnot Daggershy
2iexcl cent
rE ˆSE sin not iexcl
sup3
2iexcl cent2sinnot Daggershy iexclsup3
2iexcl cent sinnot Daggershy
2iexcl cent
746 Y-J Tseng and Y -D Chen
Figure 7 The illustrations for calculating the radii of a 2D biarc
242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-
nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas
rS1 ˆSQ sin
not Daggershy Daggersup31
2iexcl cent2sinsup31
2iexcl cent sinnot Daggershy
2iexcl cent rS2 ˆSQ sin not iexcl
sup31
2iexcl cent2sinnot Daggershy iexclsup31
2iexcl cent sinnot Daggershy
2iexcl cent
rE1 ˆQE sin
not1 Daggershy 1 Daggersup33
2iexcl cent2sinsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent rE2 ˆQE sin not1 iexcl
sup33
2iexcl cent2sinnot1 Daggershy 1 iexclsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent
25 Arc angles of biracs
251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized
For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed
7473D biarc approximation for freeform surfaces
Figure 8 The illustration of arc angles and radii of a 3D biarc
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
The equations of the tangents at the start and end points can be given as
hellipxiexclxSdaggerpS
hellipy iexclySdaggerqS
hellipz iexclzSdaggerrS
hellipxiexclxEdaggerpE
hellipy iexclyEdaggerqE
hellipziexclzEdaggerrE
The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as
xiexclx1
p ˆy iexcly1
q ˆziexclz1
rt where t is a real parameter and t 2permil01Š
Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective
7453D biarc approximation for freeform surfaces
Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2
Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2
24 Radii of biarcs
241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be
determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that
rsquo iexcliquest Daggernot Daggershy
2
Also from D SQE it can be obtained that
SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger
Based on D SPOS D QPOS it can be obtained that sup3 2rsquo
In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two
circular arcs of a 2D biarc are
rS ˆSE sin
not Daggershy Daggersup3
2 iexclnotiexcl cent2sinsup3
2iexcl cent sinnot Daggershy
2iexcl cent
rE ˆSE sin not iexcl
sup3
2iexcl cent2sinnot Daggershy iexclsup3
2iexcl cent sinnot Daggershy
2iexcl cent
746 Y-J Tseng and Y -D Chen
Figure 7 The illustrations for calculating the radii of a 2D biarc
242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-
nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas
rS1 ˆSQ sin
not Daggershy Daggersup31
2iexcl cent2sinsup31
2iexcl cent sinnot Daggershy
2iexcl cent rS2 ˆSQ sin not iexcl
sup31
2iexcl cent2sinnot Daggershy iexclsup31
2iexcl cent sinnot Daggershy
2iexcl cent
rE1 ˆQE sin
not1 Daggershy 1 Daggersup33
2iexcl cent2sinsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent rE2 ˆQE sin not1 iexcl
sup33
2iexcl cent2sinnot1 Daggershy 1 iexclsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent
25 Arc angles of biracs
251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized
For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed
7473D biarc approximation for freeform surfaces
Figure 8 The illustration of arc angles and radii of a 3D biarc
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
24 Radii of biarcs
241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be
determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that
rsquo iexcliquest Daggernot Daggershy
2
Also from D SQE it can be obtained that
SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger
Based on D SPOS D QPOS it can be obtained that sup3 2rsquo
In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two
circular arcs of a 2D biarc are
rS ˆSE sin
not Daggershy Daggersup3
2 iexclnotiexcl cent2sinsup3
2iexcl cent sinnot Daggershy
2iexcl cent
rE ˆSE sin not iexcl
sup3
2iexcl cent2sinnot Daggershy iexclsup3
2iexcl cent sinnot Daggershy
2iexcl cent
746 Y-J Tseng and Y -D Chen
Figure 7 The illustrations for calculating the radii of a 2D biarc
242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-
nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas
rS1 ˆSQ sin
not Daggershy Daggersup31
2iexcl cent2sinsup31
2iexcl cent sinnot Daggershy
2iexcl cent rS2 ˆSQ sin not iexcl
sup31
2iexcl cent2sinnot Daggershy iexclsup31
2iexcl cent sinnot Daggershy
2iexcl cent
rE1 ˆQE sin
not1 Daggershy 1 Daggersup33
2iexcl cent2sinsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent rE2 ˆQE sin not1 iexcl
sup33
2iexcl cent2sinnot1 Daggershy 1 iexclsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent
25 Arc angles of biracs
251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized
For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed
7473D biarc approximation for freeform surfaces
Figure 8 The illustration of arc angles and radii of a 3D biarc
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-
nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas
rS1 ˆSQ sin
not Daggershy Daggersup31
2iexcl cent2sinsup31
2iexcl cent sinnot Daggershy
2iexcl cent rS2 ˆSQ sin not iexcl
sup31
2iexcl cent2sinnot Daggershy iexclsup31
2iexcl cent sinnot Daggershy
2iexcl cent
rE1 ˆQE sin
not1 Daggershy 1 Daggersup33
2iexcl cent2sinsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent rE2 ˆQE sin not1 iexcl
sup33
2iexcl cent2sinnot1 Daggershy 1 iexclsup33
2iexcl cent sinnot1 Daggershy 1
2iexcl cent
25 Arc angles of biracs
251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized
For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed
7473D biarc approximation for freeform surfaces
Figure 8 The illustration of arc angles and radii of a 3D biarc
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
Kdif f ˆ2sin
not Daggershy
2iexcl centSEsinrsquo
sin rsquo iexclnot
2 Daggershy
2iexcl cent iexclsin iexclrsquo Dagger
not Daggershy
2iexcl centsinhellipnot iexclrsquodagger2664
3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence
between two curvatures is minimized
252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-
mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as
sup31 ˆ3not iexclshy
2and sup32 not Daggershy iexclsup31
sup33 ˆ3not1 iexclshy 1
2and sup34 not1 Daggershy 1 iexclsup33
26 Centres of biarcs
261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained
The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q
748 Y-J Tseng and Y -D Chen
Figure 9 The illustration for reg nding the centres of a 2D biarc
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre
262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented
as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify
D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q
If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using
7493D biarc approximation for freeform surfaces
Figure 10 The illustration for determining the correct centres of a 2D biarc
Figure 11 The illustration for determining the correct centres of a 3D biarc
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined
27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve
and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows
If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE
For a 2D case the deviation distance d between the curve and the biarc can begiven as
d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj
if P is on arc CS
if P is on arc CE
For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as
d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q
750 Y-J Tseng and Y -D Chen
Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu
3 Tool path planning for machining surfaces using 3D biarcs
31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest
allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation
7513D biarc approximation for freeform surfaces
(a)
(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating
3D biarc
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves
In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs
Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc
The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded
else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot
Find-Biarc2hellipt t1daggermiddot(4) end of procedure
752 Y-J Tseng and Y -D Chen
Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The
surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation
33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for
approximating 2D B-spline curves using 2D biarcs are presented as follows
Algorithm for 2D biarc approximation
(1) Input a 2D B-spline curve
phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax
where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as
(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE
(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1)to (8)
(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE
34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline
curves using 3D biarcs are presented as follows
Algorithm for 3D biarc approximation
(1) Input a 3D B-spline surface
7533D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax
where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions
(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E
The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane
Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane
(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as
sup3 ˆ3not iexclshy
2and not Daggershy iexclsup3
For the second biarc on the second plane the arc angles are obtained as
sup31 ˆ3not1 iexclshy 1
2and not1 Daggershy 1 iexclsup31
(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc
(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D
biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B
(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and
(b) for each subdivided segment of the curve perform (1) to(11)
(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2
4 Implementation and test results
41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne
the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs
In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be
754 Y-J Tseng and Y -D Chen
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining
If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface
42 Examples and test resultsA test software has been implemented using the C language on a personal com-
puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance
are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13
Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths
Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show
7553D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
756 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A
control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 81 80 24 23A 6 3 03 49 48 16 15
05 35 34 14 13
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
7573D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control
points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs
Line segments BiarcsControl
Curve points Degree Points Segments Points Segments
01 98 97 29 28B 8 4 03 64 63 21 20
05 54 53 19 18
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
758 Y-J Tseng and Y -D Chen
(a)
(b)
(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control
points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 343 332 217 206C 4pound4 4 30 204 193 173 162
50 160 149 146 135
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
7593D biarc approximation for freeform surfaces
(a)
(b)
(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)
Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs
Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments
10 766 745 420 399D 5pound5 3 30 453 432 322 301
50 344 323 255 234
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller
43 DiscussionsBased on the test results it can be observed that the biarc approximation method
requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects
In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration
5 Conclusions
In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration
760 Y-J Tseng and Y -D Chen
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
7613D biarc approximation for freeform surfacesR
adiu
sR
adiu
sof
ofSt
artin
gPo
int
Con
nect
ing
Poin
tE
ndPo
int
Cen
tre
ofA
rc1
Cen
tre
ofA
rc2
Arc
1A
rc2
xy
xy
xy
xy
xy
r 1r 2
biar
c1
9116
610
76
196
112
25
218
559
95
iexcl93
834
66
531
571
127
89
biar
c2
122
521
85
135
523
43
147
324
528
18
100
910
64
168
119
81
97bi
arc
314
73
245
157
625
16
167
255
219
01
189
517
77
212
270
144
3bi
arc
416
725
52
175
325
64
183
256
177
215
917
71
213
340
543
1bi
arc
518
325
619
63
252
620
79
248
117
44
196
66
3iexcl2
575
6154
44
biar
c6
207
924
81
217
824
48
226
924
35
248
635
29
227
127
91
112
435
6bi
arc
722
69
243
523
49
244
624
25
247
522
73
272
122
39
284
328
641
2bi
arc
824
25
247
524
94
251
725
625
68
217
129
71
188
333
74
557
105
2bi
arc
925
625
68
262
262
126
79
267
716
29
367
9iexcl3
11
574
914
542
86
biar
c10
267
926
77
278
727
828
94
286
6iexcl2
421
130
824
331
223
838
927
754
biar
c11
289
428
66
294
289
429
87
291
531
73
245
631
07
257
849
635
7bi
arc
1229
87
291
530
32
292
630
77
293
308
526
31
307
127
130
22bi
arc
1330
77
293
308
729
29
309
829
28
309
633
63
307
267
843
325
2bi
arc
1430
98
292
831
83
290
132
71
284
306
426
72
295
247
258
491
biar
c15
327
128
433
527
61
343
226
627
41
223
117
99
142
880
720
46
biar
c16
343
226
635
05
255
935
824
51
105
867
2765
1915
729
81
2930
biar
c17
358
245
136
46
235
537
13
226
311
951
818
859
08
394
510
149
276
4bi
arc
1837
13
226
337
43
222
637
72
219
119
23
871
455
828
89
226
810
51
biar
c19
377
221
91
382
821
34
388
420
91
442
627
69
407
924
04
872
368
biar
c20
388
420
91
393
320
68
398
220
58
401
222
94
398
922
29
2417
1bi
arc
2139
82
205
840
25
206
340
68
207
839
87
222
239
74
227
616
421
9bi
arc
2240
68
207
841
07
210
141
47
213
139
423
47
378
325
73
298
573
biar
c23
414
721
31
422
121
98
430
227
935
36
287
191
23
iexcl254
496
682
1bi
arc
2443
022
79
436
623
42
443
724
02
580
378
950
06
165
121
16
942
biar
c25
443
724
02
449
624
42
456
247
448
65
182
947
35
204
671
546
2bi
arc
2645
624
74
466
625
01
478
824
92
470
421
17
470
421
238
438
1bi
arc
2747
88
249
248
56
247
149
28
243
746
88
204
946
24
189
345
562
3bi
arc
2849
28
243
750
06
238
750
923
245
63
177
742
914
175
512
12
Fig
ure
19(a
)O
utpu
tda
taof
the
test
resu
ltsfo
rth
ecu
rve
Bw
ith
01
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
762 Y-J Tseng and Y -D ChenSt
artp
oint
End
poin
tC
entr
eR
adiu
s
Bia
rcx
yz
xy
zx
yz
r
biar
c1
arc
10
010
01
20
985
45
010
25
52
arc
21
20
985
23
095
86
40
981
46
biar
c2
arc
12
30
958
44
093
114
50
102
814
arc
24
40
931
70
188
148
092
89
1bi
arc
3ar
c1
70
188
87
01
853
241
iexcl01
985
201
arc
28
70
185
311
40
281
24iexcl0
189
115
biar
c4
arc
111
40
281
131
02
784
322
iexcl02
945
248
arc
213
10
278
415
80
374
532
7iexcl0
386
220
6bi
arc
5ar
c1
158
03
745
207
05
677
165
4iexcl5
317
83
182
2ar
c2
207
05
677
306
08
527
553
iexcl09
941
482
biar
c6
arc
130
60
852
736
1iexcl0
465
455
6iexcl1
47
945
51ar
c2
361
iexcl04
654
493
22
372
165
iexcl54
317
518
85
biar
c7
arc
149
32
237
253
52
434
182
8iexcl1
42
772
546
arc
253
52
434
154
92
632
556
80
539
17
2bi
arc
8ar
c1
549
26
325
592
21
365
575
iexcl24
1810
8ar
c2
592
21
365
619
328
280
6iexcl1
33
566
377
Fig
ure
19(b
)A
port
ion
ofth
eou
tput
data
ofth
ete
stre
sults
for
the
3Dsu
rfac
eC
with
1
0
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces
Acknowledgement
This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023
References
AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83
CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378
ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496
HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290
KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697
JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39
LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831
LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90
MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306
MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376
MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60
ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959
PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419
SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-
free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume
decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath
generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut
machining from solid models Computers in Industry 26 161plusmn 173
7633D biarc approximation for freeform surfaces