Tool paths are one of the key factors for the automatic mechanical surface polishing. Three polishing paths are covered in this study: scan line path, Archimedean spiral path, and Hilbert fractal path. How they affect the polishing results are investigated here.

### Scan line polishing path

The scan line path, a conventional machining path, is frequently used in CNC machining. In the scan line polishing process, the polishing tool offsets an interval at the boundary and continues the machining until the processing is done.

#### Removal function of single line polishing path

In the modeling of single line polishing path along the X-axis, the removal function Equation 3 at point (*x*_{p},*y*_{p}) on plane can be rewritten as:

\begin{array}{cc}z({x}_{\mathrm{p}},{y}_{\mathrm{p}})& =\frac{k\xb7{n}_{s}}{2\pi \xb7{R}^{2}}\xb7\underset{0}{\overset{\infty}{\int}}v\left(\overrightarrow{q}\right(x\left(\tau \right),{y}_{\mathrm{p}}),\tau )\mathrm{d\tau}\\ =\frac{k\xb7{n}_{s}}{2\pi \xb7{R}^{2}}\xb7\underset{-\frac{\sqrt{{r}^{2}-{y}_{\mathrm{p}}^{2}}}{{v}_{t}}}{\overset{\frac{\sqrt{{r}^{2}-{y}_{\mathrm{p}}^{2}}}{{v}_{t}}}{\int}}{\omega}_{t}\xb7\sqrt{{\left({v}_{t}\tau \right)}^{2}+{y}_{\mathrm{p}}^{2}}\phantom{\rule{1em}{0ex}}\mathrm{d\tau}\\ =\frac{k\xb7{n}_{s}}{2\pi \xb7{R}^{2}}\xb7\frac{{\omega}_{t}}{{v}_{t}}\xb7\left[R\sqrt{{R}^{2}-{y}_{\mathrm{p}}^{2}}\right.\\ \phantom{\rule{1em}{0ex}}+\left(\right)close="]">{y}_{\mathrm{p}}^{2}\left(ln\left(R+\sqrt{{R}^{2}-{y}_{\mathrm{p}}^{2}}\right)-ln\left(\right|{y}_{\mathrm{p}}\left|\right)\right)\end{array}\n

(5)

where *y*_{p}∈[−*R*,*R*].

The coefficient term of Equation 5 is proportional to the removal function, and it does not impact the shape of the removal function curve. Thus, let *I* represent the coefficient term:

I=\frac{k\xb7{n}_{s}}{2\pi \xb7{R}^{2}}\xb7\frac{{\omega}_{t}}{{v}_{t}}

(6)

Figure 3 is the removal function of single line polishing path in the XZ plane. The maximum removal value is not at the polishing tool center, although the center point has a longest valid polishing length.

#### Removal function of scan line polishing path

Figure 4 is the polishing model of scan line path. *L* denotes the interval of two adjacent lines. Equation 5 can be rewritten as the following piecewise function:

\phantom{\rule{-16.0pt}{0ex}}\begin{array}{c}{Z}_{s}(x,y)\\ =\left\{\begin{array}{cc}I\xb7\left(R\sqrt{{R}^{2}-{y}^{2}}+{y}^{2}\left(ln(R+\sqrt{{R}^{2}-{y}^{2}})-ln\left(\right|y\left|\right)\right)\right),& y\in [-R,R]\\ 0,& y\notin [-R,R]\end{array}\right.\end{array}

(7)

Let {Z}_{{y}_{0}}(x,y)={Z}_{s}(x,y-{y}_{0}) denote removal function of the polishing line *y*=*y*_{0}. Calculating the sum of all the polishing lines with interval *L*, the removal function of scan line is:

Z(x,y)=\sum _{i=-n}^{n}{Z}_{(i\xb7L)}(x,y)

(8)

### Archimedean spiral polishing path

Archimedean spiral is an arithmetic spiral, which is one of the most useful machining paths. Due to the rotational motion of workpiece, with no need of reversing, the polishing machine can achieve smooth and steady motion.

#### Modeling of Archimedean spiral polishing path

Figure 5 is the model of Archimedean spiral polishing path. Let *L* be the constant separation distance and *v*_{
t
} be the feed velocity of the polishing tool. The Archimedean spiral formula in the polar coordinate system is *ρ*=(*L*·*θ*)/2*π*. The feed velocity of polishing tool is {v}_{t}=\sqrt{{\stackrel{\u0307}{\rho}}^{2}+{\rho}^{2}{\omega}^{2}}. Therefore, the angular velocity of the Archimedean spiral \omega =\stackrel{\u0307}{\theta} can be obtained:

\stackrel{\u0307}{\theta}=\frac{2\pi {v}_{t}}{L}\xb7\frac{1}{\sqrt{1+{\theta}^{2}}}

(9)

With the initial condition *θ*(0)=0, the integral for Equation 9 is:

\theta \sqrt{1+{\theta}^{2}}+\text{arcsinh}\left(\theta \right)=\frac{4\pi}{L}\xb7{v}_{t}t

(10)

where \text{arcsinh}\left(\theta \right)=ln\left(\theta +\sqrt{1+{\theta}^{2}}\right) is the inverse hyperbolic function. There is no analytical expression for *θ* in Equation 10. The value of *θ* should be calculated by numerical method and then the value of *ρ* can be obtained.

Figure 6 is the model of Archimedean spiral polishing path. *R* is the radius of the polishing tool and *r* is the distance between point (*ρ*_{0},*θ*_{0}). (*ρ*,*θ*) denotes the polishing tool center. According to the cosine law r(\rho ,\theta ,{\rho}_{0},{\theta}_{0})=\sqrt{{\rho}^{2}+{\rho}_{0}^{2}-2\rho {\rho}_{0}cos(\theta -{\theta}_{0})}, the polishing velocity *v*_{
R
} of the polishing point (*ρ*,*θ*) can be expressed as:

{v}_{R}(\rho ,\theta ,{\rho}_{0},{\theta}_{0})={\sigma}_{R}\left[r(\rho ,\theta ,{\rho}_{0},{\theta}_{0})\right]\xb7{\omega}_{t}

(11)

where the piecewise function *σ*_{
R
} is defined as follows:

{\sigma}_{R}=\left\{\begin{array}{cc}r,& \left|r\right|\le R\\ 0,& \left|r\right|>R\end{array}\right.

(12)

For a given velocity *v*_{
t
} and a separation distance *L*, the variables *ρ* and *θ* are the function of *t*. With Equations 3 and 11, the integral of Archimedean spiral path can be obtained as:

\phantom{\rule{-16.0pt}{0ex}}\begin{array}{cc}Z({\rho}_{0},{\theta}_{0})& =I\xb7{v}_{t}\xb7\underset{0}{\overset{\infty}{\int}}{\sigma}_{R}\\ \phantom{\rule{1em}{0ex}}\times \phantom{\rule{0.3em}{0ex}}\phantom{\rule{0.3em}{0ex}}\left(\phantom{\rule{0.3em}{0ex}}\sqrt{\rho {\left(\tau \right)}^{2}+{\rho}_{0}^{2}-2\rho \left(\tau \right){\rho}_{0}cos\left(\theta \right(t)-{\theta}_{0})}\right)\phantom{\rule{0.3em}{0ex}}\mathrm{d\tau}\end{array}

(13)

The polishing process of Archimedean spiral is the uniform motion polishing process, the natural coordinate is *s*=*v*_{
t
}·*t*. Thus, Equations 10 and 13 can be rewritten as:

\theta \sqrt{1+{\theta}^{2}}+\text{arcsinh}\left(\theta \right)=\frac{4\pi}{L}\xb7s

(14)

\phantom{\rule{-15.0pt}{0ex}}\begin{array}{cc}Z({\rho}_{0},{\theta}_{0})& =I\xb7\underset{0}{\overset{\infty}{\int}}{\sigma}_{R}\\ \phantom{\rule{1em}{0ex}}\times \phantom{\rule{0.3em}{0ex}}\phantom{\rule{0.3em}{0ex}}\left(\sqrt{\rho {\left(s\right)}^{2}+{\rho}_{0}^{2}-2\rho \left(s\right){\rho}_{0}cos\left(\theta \right(s)-{\theta}_{0})}\right)\mathit{\text{ds}}\end{array}

(15)

In the natural coordinate system, Archimedean spiral path is expressed by natural coordinate *s* rather than time *t*.

#### Removal function of Archimedean spiral polishing path

The expression of natural coordinate *s* can be obtained from Equation 14:

s=\frac{L}{4\pi}\left[\theta \sqrt{1+{\theta}^{2}}+\text{arcsinh}\left(\theta \right)\right]

(16)

Set the radius of the polishing tool *R* as a reference unit 1. The polar coordinate of polishing tool center is (*ρ*,*θ*). Let *s*_{
e
}=*s*(*ρ*_{0}+*R*); *s*_{
o
}=*s*(*ρ*_{0}−*R*) in condition *ρ*_{0}>*R*, and *s*_{
o
}=0 in condition *ρ*_{0}≤*R*. *s*_{
o
} and *s*_{
e
} are the new lower and upper limits of Equation 15. Thus, the removal function can be obtained with new limits:

\phantom{\rule{-15.0pt}{0ex}}\begin{array}{cc}Z({\rho}_{0},{\theta}_{0})& =I\xb7\underset{{s}_{o}}{\overset{{s}_{e}}{\int}}{\sigma}_{R}\\ \phantom{\rule{1em}{0ex}}\times \phantom{\rule{0.3em}{0ex}}\phantom{\rule{0.3em}{0ex}}\left(\sqrt{\rho {\left(s\right)}^{2}+{\rho}_{0}^{2}-2\rho \left(s\right){\rho}_{0}cos\left(\theta \right(s)-{\theta}_{0})}\right)\mathit{\text{ds}}\end{array}

(17)

Using numerical method and discrete method, the removal function of Equation 17 can be rewritten approximately as:

\phantom{\rule{-15.0pt}{0ex}}\begin{array}{cc}Z({\rho}_{0},{\theta}_{0})& =I\xb7\sum _{{s}_{o}}^{{s}_{e}}{\sigma}_{R}\\ \phantom{\rule{1em}{0ex}}\times \phantom{\rule{0.3em}{0ex}}\phantom{\rule{0.3em}{0ex}}\left(\sqrt{\rho {\left(s\right)}^{2}+{\rho}_{0}^{2}-2\rho \left(s\right){\rho}_{0}cos\left[\theta \right(s)-{\theta}_{0}]}\right)\phantom{\rule{0.3em}{0ex}}\phantom{\rule{0.3em}{0ex}}\mathrm{\Delta s}\end{array}

(18)

The value of Equation 18 at polishing point (*ρ*_{0},*θ*_{0}) can be calculated by Newton’s method.

### Hilbert fractal polishing path

The scan line and Archimedean spiral polishing path discussed above are very directional. Therefore, the removal functions of them have strong anisotropy property. The anisotropy property destroys the polishing isotropy of the polished surface. In order to obtain high polishing quality, the removal function of designed polishing path with isotropy property is expected to apply into freeform surface polishing task.

#### Fractal curve

The fractal curve refers to the curve with fractal dimension. The local simple structure of fractal curve is suitable for CNC programming and controlling, while the global randomness property shows a global isotropy characteristic to remove the streaks of polished freeform surface and improves the polishing quality.

Fractal curves include snowflake fractal curve, triangle fractal curve, Hilbert fractal curve, and so on, but not every fractal curve is qualified for surface polishing. The qualified fractal curve needs to satisfy the following conditions: surface ergodic property, easy motion control for CNC, and strong isotropy property.

The surface ergodic property requires the fractal path with dimension greater than one, and the fractal curve can cover the polished surface when the order of the fractal curve is large enough. In mathematics, it means that the closure of the fractal curve is homeomorphism to two-dimensional plane.

The surface ergodic property requires that fractal curve can cover the whole higher-order polished surface. The snowflake fractal curve does not fulfill the surface ergodic property. For example, the cubic Koch snowflake cannot cover the two-dimensional surface. On the other hand, the easy motion control property requires the simple curve. The isometric segment is a good choice for this requirement because of easy planning, programming, and CNC machining. The snowflake fractal curve does not have well isotropic property globally, and it has a strong global orderliness with the high orders. Hence, it is not suitable for polishing purpose. Fulfilling the three requirements for freeform surface polishing, the Hilbert fractal curve is selected for freeform surface polishing here.

As shown in Figure 7, the Hilbert fractal path is organized with segments and traverses the whole two-dimensional plane. The segments of the Hilbert curve are parallel to X axis or Y axis. They can be easily controlled by CNC machine. Also, Hilbert fractal path has a good isotropy and no orderliness in global.

#### Modeling of Hilbert fractal polishing path

Figure 8 is the polishing model of the Hilbert curve. Similar to the scan line and Archimedean spiral polishing path, let *ω*_{
t
} and *v*_{
t
} denote the rotational velocity and the feed velocity in polishing process, respectively.

The basic unit of the Hilbert curve is segment. Therefore, Equation 3 with segment path can be applied for Hilbert polishing path. The segments of Hilbert curve are all parallel to X axis or Y axis.

For a given segment along X axis direction, the motion of polishing tool center is uniform linear motion in segment *C*_{
x
}[(*x*_{
s
},*y*)−(*x*_{
e
},*y*)]. The removal function is nonnegative. Hence, changing the integral variable from d *τ* to d*x* needs to use absolute function to guarantee the nonnegative value of Equation 3. The removal function on point (*x*_{p},*y*_{p}) generated by the polishing segment *C*_{
x
} can be obtained:

\phantom{\rule{-15.0pt}{0ex}}{Z}_{{C}_{x}}({x}_{\mathrm{p}},{y}_{\mathrm{p}},y)=I\xb7\left|\underset{{x}_{s}}{\overset{{x}_{e}}{\int}}{\sigma}_{R}\left(\sqrt{{(x-{x}_{\mathrm{p}})}^{2}+{(y-{y}_{\mathrm{p}})}^{2}}\right)\phantom{\rule{1em}{0ex}}\mathit{\text{dx}}\right|

(19)

Similarly, *C*_{
y
} [ (*x*,*y*_{
s
})−(*x*,*y*_{
e
})] denotes the uniform linear segment of polishing tool center along Y axis direction, the removal function on point (*x*_{p},*y*_{p}) generated by the polishing segment *C*_{
y
} can be obtained as:

\phantom{\rule{-15.0pt}{0ex}}{Z}_{{C}_{y}}({x}_{\mathrm{p}},{y}_{\mathrm{p}},x)=I\xb7\left|\underset{{y}_{s}}{\overset{{y}_{e}}{\int}}{\sigma}_{R}\left(\sqrt{{(x-{x}_{\mathrm{p}})}^{2}+{(y-{y}_{\mathrm{p}})}^{2}}\right)\phantom{\rule{1em}{0ex}}\mathit{\text{dy}}\right|

(20)

The *σ*_{
R
} in Equations 19 and 20 has a mutation at the point where |*r*|=*R*. Therefore, the mutation is not convenient for solving the integration of Equations 19 and 20. *x*_{−} and *x*_{+} are the x-coordinate of intersection points between the line and the circle. Let *X*_{min}= min(*x*_{
s
},*x*_{
e
}) and *X*_{max}= max(*x*_{
s
},*x*_{
e
}); let {x}_{-}={x}_{\mathrm{p}}-\sqrt{{R}^{2}-{(y-{y}_{\mathrm{p}})}^{2}} and {x}_{+}={x}_{\mathrm{p}}+\sqrt{{R}^{2}-{(y-{y}_{\mathrm{p}})}^{2}} under condition |*y*−*y*_{p}|≤*R*. The valid lower and upper limits {x}_{s}^{\prime}\le {x}_{e}^{\prime} of integral function along X axis direction the polishing segment can be defined as:

\phantom{\rule{-15.0pt}{0ex}}{x}_{s}^{\prime}\phantom{\rule{0.3em}{0ex}}=\phantom{\rule{0.3em}{0ex}}\left\{\phantom{\rule{0.3em}{0ex}}\phantom{\rule{0.3em}{0ex}}\begin{array}{cc}{x}_{-}\phantom{\rule{1em}{0ex}},& {X}_{min}\le {x}_{-}\le {X}_{max},\phantom{\rule{1em}{0ex}}\text{and}\phantom{\rule{1em}{0ex}}|y-{y}_{\mathrm{p}}|\le R\\ {X}_{min}\phantom{\rule{1em}{0ex}},& {x}_{-}\le {X}_{min}\le {x}_{+},\phantom{\rule{1em}{0ex}}\text{and}\phantom{\rule{1em}{0ex}}|y-{y}_{\mathrm{p}}|\le R\\ \text{not defined}\phantom{\rule{1em}{0ex}},& \text{other}\end{array}\right.

(21)

\phantom{\rule{-15.0pt}{0ex}}{x}_{e}^{\prime}\phantom{\rule{0.3em}{0ex}}=\phantom{\rule{0.3em}{0ex}}\phantom{\rule{0.3em}{0ex}}\left\{\phantom{\rule{0.3em}{0ex}}\begin{array}{cc}{x}_{+}\phantom{\rule{1em}{0ex}},& {X}_{min}\le {x}_{+}\le {X}_{max},\phantom{\rule{1em}{0ex}}\text{and}\phantom{\rule{1em}{0ex}}|y-{y}_{\mathrm{p}}|\le R\\ {X}_{max}\phantom{\rule{1em}{0ex}},& {x}_{-}\le {X}_{max}\le {x}_{+},\phantom{\rule{1em}{0ex}}\text{and}\phantom{\rule{1em}{0ex}}|y-{y}_{\mathrm{p}}|\le R\\ \text{not defined}\phantom{\rule{1em}{0ex}},& \text{other}\end{array}\right.

(22)

Similarly, let *Y*_{min}= min(*y*_{
s
},*y*_{
e
}) and *Y*_{max}= max(*y*_{
s
},*y*_{
e
}); let {y}_{-}={y}_{\mathrm{p}}-\sqrt{{R}^{2}-{(x-{x}_{\mathrm{p}})}^{2}} and {y}_{+}={y}_{\mathrm{p}}+\sqrt{{R}^{2}-{(x-{x}_{\mathrm{p}})}^{2}} under condition |*x*−*x*_{p}|≤*R*. The valid lower and upper limits {y}_{s}^{\prime}\le {y}_{e}^{\prime} of integral function along Y axis direction polishing segment can be defined as:

\phantom{\rule{-15.0pt}{0ex}}{y}_{s}^{\prime}\phantom{\rule{0.3em}{0ex}}=\phantom{\rule{0.3em}{0ex}}\left\{\phantom{\rule{0.3em}{0ex}}\begin{array}{cc}{y}_{-}\phantom{\rule{1em}{0ex}},& {Y}_{min}\le {y}_{-}\le {Y}_{max},\phantom{\rule{1em}{0ex}}\text{and}\phantom{\rule{1em}{0ex}}|x-{x}_{\mathrm{p}}|\le R\\ {Y}_{min}\phantom{\rule{1em}{0ex}},& {y}_{-}\le {Y}_{min}\le {y}_{+},\phantom{\rule{1em}{0ex}}\text{and}\phantom{\rule{1em}{0ex}}|x-{x}_{\mathrm{p}}|\le R\\ \text{not defined}\phantom{\rule{1em}{0ex}},& \text{other}\end{array}\right.

(23)

\phantom{\rule{-15.0pt}{0ex}}{y}_{e}^{\prime}\phantom{\rule{0.3em}{0ex}}=\phantom{\rule{0.3em}{0ex}}\left\{\begin{array}{cc}{y}_{+}\phantom{\rule{1em}{0ex}},& {Y}_{min}\le {y}_{+}\le {Y}_{max},\phantom{\rule{1em}{0ex}}\text{and}\phantom{\rule{1em}{0ex}}|x-{x}_{\mathrm{p}}|\le R\\ {Y}_{max}\phantom{\rule{1em}{0ex}},& {y}_{-}\le {Y}_{max}\le {y}_{+},\phantom{\rule{1em}{0ex}}\text{and}\phantom{\rule{1em}{0ex}}|x-{x}_{\mathrm{p}}|\le R\\ \text{not defined},& \text{other}\end{array}\right.

(24)

The integrands of Equations 19 and 20 are given, respectively:

\phantom{\rule{-10.0pt}{0ex}}{f}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}(x,y)=\frac{\mathrm{\delta x}\sqrt{\delta {x}^{2}+\delta {y}^{2}}+\delta {y}^{2}ln\left(\mathrm{\delta x}+\sqrt{\delta {x}^{2}+\delta {y}^{2}}\right)}{2}

(25)

\phantom{\rule{-10.0pt}{0ex}}{g}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}(x,y)=\frac{\mathrm{\delta y}\sqrt{\delta {x}^{2}+\delta {y}^{2}}+\delta {x}^{2}ln\left(\mathrm{\delta y}+\sqrt{\delta {x}^{2}+\delta {y}^{2}}\right)}{2}

(26)

where *δ* *x*=*x*−*x*_{p}, *δ* *y*=*y*−*y*_{p}.

When *x* in {f}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}(x,y) is not defined, {f}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}(x,y)=0; when *y* in {g}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}(x,y) is not defined, {g}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}(x,y)=0. With new defined lower and upper limits, the absolute function can be removed from the integration. The single uniform linear polishing segment can be rewritten as:

\begin{array}{l}{Z}_{X}\left({x}_{\mathrm{p}},{y}_{\mathrm{p}},{x}_{s},{x}_{e},y\right)=I\xb7\left|\phantom{\rule{0.3em}{0ex}}{f}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}\left({x}_{e}^{\prime},y\right)-{f}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}\left({x}_{s}^{\prime},y\right)\right|\phantom{\rule{2em}{0ex}}\end{array}

(27)

\begin{array}{l}{Z}_{Y}\left({x}_{\mathrm{p}},{y}_{\mathrm{p}},x,{y}_{s},{y}_{e}\right)=I\xb7\left|{g}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}\left(x,{y}_{s}^{\prime}\right)-{g}_{{x}_{\mathrm{p}},{y}_{\mathrm{p}}}\left(x,{y}_{s}^{\prime}\right)\right|\phantom{\rule{2em}{0ex}}\end{array}

(28)

where {x}_{s}^{\prime}, {x}_{e}^{\prime}, {y}_{s}^{\prime}, and {y}_{e}^{\prime} are defined in Equations 21, 22, 23, and 24.

Applying uniform linear motion segment, the removal functions of Equations 27 and 28 with the Hilbert fractal curve are the segments set **H**, the removal function of Hilbert fractal curve at point (*x*_{p},*y*_{p}) is the sum of all the segments removal functions:

\begin{array}{cc}Z\left({x}_{\mathrm{p}},{y}_{\mathrm{p}}\right)& =\sum _{{C}_{{X}_{i}}\in \mathbf{\text{H}}}{Z}_{{X}_{i}}\left({x}_{\mathrm{p}},{y}_{\mathrm{p}},{x}_{\mathit{\text{si}}},{x}_{\mathit{\text{ei}}},{y}_{i}\right)\\ \phantom{\rule{1em}{0ex}}+\sum _{{C}_{{Y}_{j}}\in \mathbf{\text{H}}}{Z}_{{Y}_{j}}\left({x}_{\mathrm{p}},{y}_{\mathrm{p}},{x}_{j},{y}_{\mathit{\text{sj}}},{y}_{\mathit{\text{ej}}}\right)\end{array}

(29)

### Freeform surface polishing modeling

The previous polishing paths are all discussed in the planer plane. Referring to differential geometry method, the planer plane can be mapped on a freeform surface. The following discusses the general mapping method.

#### Natural coordinate expression of freeform surface path

The freeform curve expressed by natural coordinate *s* can be directly used in path planning. Freeform surface refers to a smooth two-dimensional surface with finite or infinite degrees of freedom. Because the order of freeform surface is unknown, it can hardly use an unified expression to describe the surface exactly. The freeform surface is expressed by linear combining of several basic functions to approach the freeform surface itself. The polynomial is one of the most useful basic functions due to its simpleness and easy calculation. According to the approximation theory, piecewise polynomial surfaces can approximate a smooth freeform surface in arbitrary precision.

Let *C*_{
uv
} be polishing path in parameter *u*-*v* plane and *t* be the parameter of path *C*_{
uv
}. Mapping the plane to the freeform surface obtains the project path *C*_{
f
}. The space path *C*_{
f
} can be expressed as follows:

x=x\left(u\right(t),v(t\left)\right),\phantom{\rule{1em}{0ex}}y=y\left(u\right(t),v(t\left)\right),\phantom{\rule{1em}{0ex}}z=z\left(u\right(t),v(t\left)\right)

(30)

In application, *x*(*t*) and *y*(*t*) are selected as the parameter variables of *u*(*t*) and *v*(*t*). The path *C*_{
f
} on freeform surface is described as *z*=*z*(*x*(*t*), *y*(*t*)).

The natural coordinate parameter *s* which is the length of curve is used to replace the parameter variable *t* to describe the space path *C*_{
f
}. Referring to formula \text{d}s=\sqrt{\text{d}{x}^{2}+\text{d}{y}^{2}+\text{d}{z}^{2}}, natural coordinate parameter *s* can be written as:

s=\underset{0}{\overset{t}{\int}}\sqrt{\left(1+{z}_{x}^{2}\right){x}_{t}^{2}+2{z}_{x}{z}_{y}{x}_{t}{y}_{t}+\left(1+{z}_{y}^{2}\right){y}_{t}^{2}}\xb7\text{d}\tau

(31)

where *z*_{
x
}=d*z*/d*x*.

With Equation 31, the interpolation algorithm of the polishing path on freeform surface can be easily designed.

#### Modeling of polishing path on the Bézier freeform surface

The traditional surface fitting methods include the Hermite method, Bézier method, B-spline method, and NURBS method. The Bézier surface can approximate any freeform surface and has fewer parameters which make it easier to use in practice. Thus, the Bézier method is studied in this paper for freeform surface polishing.

Bézier method is polynomial-based approximation algorithm. The degree *n* of the polynomial is related to the number of the knots. Polynomial can approximate a smooth function in arbitrary precision. Hence, the polynomial-based Bézier surface can approximate the smooth freeform surface as well in arbitrary precision.

Given *m* rows and *n* columns Bézier control points *P*_{
ij
}=\left[{P}_{\mathit{\text{ij}}}^{x},{P}_{\mathit{\text{ij}}}^{y},{P}_{\mathit{\text{ij}}}^{z}\right]. Let {\mathbf{B}}_{k-1}\left(\alpha \right)\phantom{\rule{0.3em}{0ex}}=\phantom{\rule{0.3em}{0ex}}\phantom{\rule{0.3em}{0ex}}{\left[\phantom{\rule{0.3em}{0ex}}{B}_{k-1}^{0}\left(\alpha \right),\phantom{\rule{0.3em}{0ex}}{B}_{k-1}^{1}\phantom{\rule{0.3em}{0ex}}\left(\alpha \right),\phantom{\rule{0.3em}{0ex}}\cdots \phantom{\rule{0.3em}{0ex}},\phantom{\rule{0.3em}{0ex}}{B}_{k-1}^{k-1}\left(\alpha \right)\phantom{\rule{0.3em}{0ex}}\right]}^{\text{T}}\phantom{\rule{0.3em}{0ex}}, {\mathbf{P}}_{\mathit{\text{mn}}}^{x}=\left\{{P}_{\mathit{\text{ij}}}^{x}\right\}, {\mathbf{P}}_{\mathit{\text{mn}}}^{y}=\left\{{P}_{\mathit{\text{ij}}}^{y}\right\}, and {\mathbf{P}}_{\mathit{\text{mn}}}^{z}=\left\{{P}_{\mathit{\text{ij}}}^{z}\right\}. Thus, the Bézier surface can be expressed as:

\left\{\begin{array}{cc}x(u,v)& ={\mathbf{B}}_{m-1}^{\text{T}}\left(u\right)\xb7{\mathbf{P}}_{\mathit{\text{mn}}}^{x}\xb7{\mathbf{B}}_{n-1}\left(v\right)\\ y(u,v)& ={\mathbf{B}}_{m-1}^{\text{T}}\left(u\right)\xb7{\mathbf{P}}_{\mathit{\text{mn}}}^{y}\xb7{\mathbf{B}}_{n-1}\left(v\right)\\ z(u,v)& ={\mathbf{B}}_{m-1}^{\text{T}}\left(u\right)\xb7{\mathbf{P}}_{\mathit{\text{mn}}}^{z}\xb7{\mathbf{B}}_{n-1}\left(v\right)\end{array}\right.

(32)

where *u*∈[0,1],*v*∈[0,1].

The Bernstein basic function {B}_{n}^{i}\left(\alpha \right) is defined as:

{B}_{n}^{i}\left(\alpha \right)=\sum _{i=0}^{n}\frac{n!}{i!(n-i)!}{(1-\alpha )}^{n-i}{\alpha}^{i}

(33)

Set the Bézier surface with the range of [*X*_{
s
},*X*_{
e
}]× [*Y*_{
s
},*Y*_{
e
}]. The affine transformation from *u*-*v* to *x*-*y* is defined as:

u=\left(x-{X}_{s}\right)\phantom{\rule{0.3em}{0ex}}/\phantom{\rule{0.3em}{0ex}}\left({X}_{e}-{X}_{s}\right)\phantom{\rule{1em}{0ex}}\phantom{\rule{1em}{0ex}},\phantom{\rule{1em}{0ex}}\phantom{\rule{1em}{0ex}}v=(y-{Y}_{s})/({Y}_{e}-{Y}_{s})

(34)

The surface is evenly divided into *m*×*n* matrix points. Therefore, {P}_{\mathit{\text{ij}}}^{x}={X}_{s}+\frac{i-1}{m-1}\xb7({X}_{e}-{X}_{s}) and {P}_{\mathit{\text{ij}}}^{y}={Y}_{s}+\frac{j-1}{n-1}\xb7({Y}_{e}-{Y}_{s}). Bernstein polynomial is endowed with a binomial expansion \sum _{i=0}^{n}{B}_{n}^{i}\left(\alpha \right)=1. The identical relation for the *x*(*u*,*v*) and *y*(*u*,*v*) in Equation 32 is:

\left\{\begin{array}{cc}x\left(\frac{x-{X}_{s}}{{X}_{e}-{X}_{s}},t\right)& =x\\ y\left(t,\frac{y-{Y}_{s}}{{Y}_{e}-{Y}_{s}}\right)& =y\end{array}\right.

(35)

The Bézier surface can be simplified as follows:

z(x,y)={\mathbf{B}}_{m-1}^{\text{T}}\left(\frac{x-{X}_{s}}{{X}_{e}-{X}_{s}}\right)\xb7{\mathbf{P}}_{\mathit{\text{mn}}}^{z}\xb7{\mathbf{B}}_{n-1}\left(\frac{y-{Y}_{s}}{{Y}_{e}-{Y}_{s}}\right)

(36)

Thus, *z*_{
x
} and *z*_{
y
} in Equation 31 are expressed as:

\begin{array}{ll}{z}_{x}& ={\mathbf{B}}_{m-1}^{\prime \phantom{\rule{1em}{0ex}}\text{T}}\left(\frac{x-{X}_{s}}{{X}_{e}-{X}_{s}}\right)\xb7{\mathbf{P}}_{\mathit{\text{mn}}}^{z}\xb7{\mathbf{B}}_{n-1}\left(\frac{y-{Y}_{s}}{{Y}_{e}-{Y}_{s}}\right)\phantom{\rule{2em}{0ex}}\end{array}

(37)

\begin{array}{ll}{z}_{y}& ={\mathbf{B}}_{m-1}^{\text{T}}\left(\frac{x-{X}_{s}}{{X}_{e}-{X}_{s}}\right)\xb7{\mathbf{P}}_{\mathit{\text{mn}}}^{z}\xb7{\mathbf{B}}_{n-1}^{\prime}\left(\frac{y-{Y}_{s}}{{Y}_{e}-{Y}_{s}}\right)\phantom{\rule{2em}{0ex}}\end{array}

(38)

The first order derivative of Bernstein function is {B}_{n}^{i\phantom{\rule{1em}{0ex}}\prime}\left(t\right)=n\left[{B}_{n-1}^{i-1}\left(t\right)-{B}_{n-1}^{i}\left(t\right)\right]. Hence, {\mathbf{B}}_{m-1}^{\prime \phantom{\rule{1em}{0ex}}\text{T}}\left(\frac{x-{X}_{s}}{{X}_{e}-{X}_{s}}\right) and {\mathbf{B}}_{n-1}^{\prime}\left(\frac{y-{Y}_{s}}{{Y}_{e}-{Y}_{s}}\right) can be calculated by a series of simple algebraic operation. With the natural coordinate parameter *s*, the interpolation algorithm of freeform surface curve can be directly obtained.