Skip to main content

Fitting polynomial surfaces to triangular meshes with Voronoi squared distance minimization


This paper introduces Voronoi squared distance minimization (VSDM), an algorithm that fits a surface to an input mesh. VSDM minimizes an objective function that corresponds to a Voronoi-based approximation of the overall squared distance function between the surface and the input mesh (SDM). This objective function is a generalization of the one minimized by centroidal Voronoi tessellation, and can be minimized by a quasi-Newton solver. VSDM naturally adapts the orientation of the mesh elements to best approximate the input, without estimating any differential quantities. Therefore, it can be applied to triangle soups or surfaces with degenerate triangles, topological noise and sharp features. Applications of fitting quad meshes and polynomial surfaces to input triangular meshes are demonstrated.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20


  1. (2011) CGAL.

  2. Amenta N, Bern M (1999) Surface reconstruction by Voronoi filtering. Discret Comput Geom 22(4):481–504

    Article  MATH  MathSciNet  Google Scholar 

  3. Bommes D, Lévy B, Pietroni N, Puppo E, Silva C, Tarini M, Zorin D (2012) State of the art in quad meshing (submitted)

  4. Cheng KS, Wang W, Qin H, Wong KY, Yang HP, Liu Y (2007) Design and analysis of methods for subdivision surface fitting. IEEE TVCG 13(5)

  5. Cheng KSD, Wang W, Qin H, Wong KYK, Yang HP, Liu Y (2004) Fitting subdivision surfaces using SDM. In: Pacific graphics conference proceedings, pp 16–24

  6. Cignoni P, Rocchini C, Scopigno R (1998) Metro: measuring error on simplified surfaces. Comp Graphics Forum 17(2):167–174

    Article  Google Scholar 

  7. Delingette H (1999) General object reconstruction based on simplex meshes. IJCV 32(2):111–146

    Article  Google Scholar 

  8. Du Q, Faber V, Gunzburger M (1999) Centroidal Voronoi tessellations: applications and algorithms. SIAM Rev 41(4):637–676

    Article  MATH  MathSciNet  Google Scholar 

  9. Eck M, Hoppe H (1996) Automatic reconstruction of B-spline surfaces of arbitrary topological type. In: Proceedings of ACM SIGGRAPH, pp 325–334

  10. Floater M (1997) Parametrization and smooth approximation of surface triangulations. Comput Aided Geom Des 14(3):231–250

    Article  MATH  MathSciNet  Google Scholar 

  11. He Y, Wang H, Fu CW, Qin, H (2009) A divide-and-conquer approach for automatic polycube map construction. Comput Graphics 33(3):369–380

    Google Scholar 

  12. Kobbelt L, Vorsatz J, Labsik U, Seidel HP (2001) A shrink wrapping approach to remeshing polygonal surfaces. Comput Graphics Forum 18(3)

  13. Kovacs D, Myles A, Zorin D (2010) Anisotropic quadrangulation. In: Proceedings of the 14th ACM Symposium on solid and physical modeling, pp 137–146

  14. Lévy B, Liu Y (2010) L p centroidal Voronoi tessellation and its applications. ACM TOG (Proc SIGGRAPH) 29(4):Article No. 119

  15. Li WC, Ray N, Lévy B (2006) Automatic and interactive mesh to T-spline conversion. In: Symposium on geometry processing, pp 191–200

  16. Lin J, Jin X, Fan Z, Wang CCL (2008) Automatic polycube-maps. In: Proceedings of the 5th international conference on advances in geometric modeling and processing, pp 3–16

  17. Liu D, Nocedal J (1989) On the limited memory BFGS method for large scale optimization. Math Program Ser A and B 45(3):503–528

    Article  MATH  MathSciNet  Google Scholar 

  18. Liu Y (2010) HLBFGS: an hybrid L-BFGS optimization framework.

  19. Liu Y, Wang W, Lévy B, Sun F, Yan DM, Lu L, Yang C (2009) On centroidal Voronoi tessellation—energy smoothness and fast computation. ACM Trans Graphics 28(4):Article No. 101

  20. Ma W, Ma X, Tso SK, Pan Z (2004) A direct approach for subdivision surface fitting. Compt Aided Des 36(6)

  21. Marinov M, Kobbelt L (2005) Optimization methods for scattered data approximation with subdivision surfaces. Graph Models 67(5):452–473

    Article  Google Scholar 

  22. Nocedal J, Wright S (2006) Numerical optimization. Springer, Berlin

    MATH  Google Scholar 

  23. Pottmann H, Leopoldseder S (2003) A concept for parametric surface fitting which avoids the parametrization problem. Comp Aided Geom Des 20(6)

  24. Ray N, Li W, Lévy B, Scheffer A, Alliez P (2006) Periodic global parameterization. ACM Trans Graphics 25(4):1460–1485

    Article  Google Scholar 

  25. Rusinkiewicz S, Levoy M (2001) Efficient variants of the ICP algorithm. IEEE third international conference on 3-D digital imaging and modeling, pp 145–152.

  26. Schreiner J, Asirvatham A, Praun E, Hoppe H (2004) Inter-surface mapping. Proc SIGGRAPH ACM TOG 23(3):870–877

    Article  Google Scholar 

  27. Tarini M, Hormann K, Cignoni P, Montani C (2004) Polycube-maps. Proc of SIGGRAPH ACM TOG 23(3):853–860

    Article  Google Scholar 

  28. Wang H, He Y, Li X, Gu X, Qin H (2008) Polycube splines. Comp Aided Des 40(6):721–733

    Article  MATH  Google Scholar 

  29. Wang W, Pottmann H, Liu Y (2006) Fitting B-spline curves to point clouds by curvature-based SDM. ACM Trans Graphics 25(2):214–238

    Article  Google Scholar 

  30. Yan DM, Lévy B, Liu Y, Sun F, Wang W (2009) Isotropic remeshing with fast and exact computation of restricted Voronoi diagram. Proc SGP Comp Graphics Forum 28(5):1445–1454

    Article  Google Scholar 

  31. Yao C, Chu H, Ju T, LEE T (2009) Compatible quadrangulation by sketching. Comput Animat Virtual Worlds 20(2-3):101–109

    Article  Google Scholar 

  32. Yeh IC, Lin CH, Sorkine O, Lee TY (2011) Template-based 3D model fitting using dual-domain relaxation. IEEE TVCG 17(8):1178–1190

    Google Scholar 

Download references


The authors wish to thank Sylvain Lefebvre for a discussion (about an unrelated topic) that inspired this work, Rhaleb Zayer, Xavier Goaoc, Tamy Boubekeur, Yang Liu and Wenping Wang for many discussions, Loic Marechal, Marc Loriot and the AimAtShape repository for data. This project is partly supported by the European Research Council grant GOODSHAPE ERC-StG-205693 and ANR/NSFC (60625202,60911130368) Program (SHAN Project).

Author information

Authors and Affiliations


Corresponding author

Correspondence to Vincent Nivoliers.


Appendix 1: Convergence to squared distance: error bound

This Appendix proves that if X is an \(\varepsilon\)-sampling of \(\mathcal{S}\) then:

$$ \lim_{\varepsilon \rightarrow 0} \tilde{F}_{{\mathcal{T}} \rightarrow {\mathcal{S}}}({\bf X})=F_{{\mathcal{T}} \rightarrow {\mathcal{S}}}({\bf X}) $$

Lemma 1 Let y be a point of \(\mathcal{T}\) and x i its nearest point in X (see Fig. 21). Let \({d=\parallel {\bf y} - \Uppi_{\mathcal{S}}({\bf y}) \parallel}\) and \(\tilde{d}=\parallel {\bf y} - {\bf x}_i \parallel\). Then for \(\varepsilon < 2\) the following bound is sharp:

$$ \tilde{d}^2 - d^2 \leq \varepsilon^2\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y}))(\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y}))+d) $$
Fig. 21
figure 21

Configuration of the nearest point of \({\Uppi_{\mathcal{S}}({\bf y})}\)


Let \(\mathcal{B}_{Vor}\) be the ball centered at y passing through x i . This ball contains no point of X.

Let \(\mathcal{B}_{lfs}\) be the ball tangent to \(\mathcal{S}\) at \({\Uppi_{\mathcal{S}}({\bf y})}\) on the opposite side of y and of radius \({\hbox{lfs}(\Uppi_{\mathcal{S}}({\bf y}))}\) and c lfs its center. By definition of lfs, this ball has no point of \(\mathcal{S}\) in its interior and therefore contains no point of X.

Finally, let \(\mathcal{B}_{\varepsilon}\) be the ball centered at \({\Uppi_{\mathcal{S}}({\bf y})}\) of radius \({\varepsilon\hbox{lfs}(\Uppi_{\mathcal{S}}({\bf y}))}\). Since X is an \(\varepsilon\)-sampling this ball has to contain a point of X.

Since \({\Uppi_{\mathcal{S}}({\bf y})}\) is the nearest point of y on \({\mathcal{S}, {\bf y}, \Uppi_{\mathcal{S}}({\bf y})}\) and c lfs are aligned and the problem is completely symmetric around the line joining them. Figure 21 shows a cut containing this axis.

The bound follows from the fact that \(\mathcal{B}_{\varepsilon} \not\subset \mathcal{B}_{Vor} \cup \mathcal{B}_{lfs}\). Let p be a point of \(\mathcal{B}_{Vor} \cap \mathcal{B}_{lfs}\). This point exists since \(\varepsilon < 2\) and \(\mathcal{B}_{\varepsilon}\) is not included in \(\mathcal{B}_{Vor}\). Using this point the previous condition can be reformulated as \(p \in \mathcal{B}_{\varepsilon}\).

Using triangular identities in \({(\Uppi_{\mathcal{S}}({\bf y}),c_{lfs},{\bf p})}\), we have:

$$ {\parallel} \Uppi_{{\mathcal{S}}}({\bf y}) - {\bf p} {\parallel^2}=2 \hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y}))^2(1-\cos{\alpha}) $$

with α being the \({({\bf p},c_{lfs},\Uppi_{\mathcal{S}}({\bf y}))}\) angle. Using the same identities in (xc lfs p) we obtain:

$$ \begin{aligned} &\tilde{d}^2 =(d+\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y})))^2 +\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y}))^2 \\ &\quad\quad-2(d+\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y})))\hbox{lfs}(\Uppi_{{\mathcal{S}}} ({\bf y}))\cos{\alpha} \\ &\tilde{d}^2 - d^2 =2(d+\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y})))\hbox{lfs} (\Uppi_{{\mathcal{S}}}({\bf y}))(1-\cos{\alpha}) \\ \end{aligned} $$

Using Eq. 8, \((1-\cos{\alpha})\) can be replaced:

$$ \tilde{d}^2 - d^2=(d+\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y})))\frac{\parallel \Uppi_{{\mathcal{S}}}({\bf y}) - {\bf p} \parallel^2}{\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y}))} $$

Finally, since p is inside \(\mathcal{B}_{\varepsilon}\), we have:

$$ {\parallel} \Uppi_{{\mathcal{S}}}({\bf y}) - {\bf p} {\parallel} \leq \varepsilon \hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y})) $$

This finally provides the result:

$$ \tilde{d}^2 - d^2 \leq \varepsilon^2\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y}))(\hbox{lfs}(\Uppi_{{\mathcal{S}}}({\bf y}))+d) $$

This bound is sharp since it is reached whenever \(\mathcal{S}\) is exactly \(\mathcal{B}_{lfs}\) and x i is located at p.

This lemma leads to a global bound:

Proposition 1

If \(\mathcal{S}\) is different from a plane and bounded, then:

$$ \tilde{F}_{{\mathcal{T}} \rightarrow {\mathcal{S}}}({\bf X}) - F_{{\mathcal{T}} \rightarrow {\mathcal{S}}}({\bf X}) \leq \varepsilon^2\vert{\mathcal{T}}\vert\sigma_{{\mathcal{S}}}(\sigma_{{\mathcal{S}}} +d_{{\mathcal{H}}}({{\mathcal{T}},{\mathcal{S}}})) $$

where \({\sigma_{\mathcal{S}}=\sup\{lfs({\bf x}),{\bf x} \in \mathcal{S}\}}.\)


Since \(\mathcal{S}\) is not a plane and bounded, σ exists. In addition, the definition of the Hausdorff distance gives us \({d \leq d_{\mathcal{H}}({\mathcal{T},\mathcal{S}})}\).

$$ \begin{aligned} e &=\tilde{F}_{{\mathcal{T}} \rightarrow {\mathcal{S}}}({\bf X}) - F_{{\mathcal{T}} \rightarrow {\mathcal{S}}}({\bf X}) \\ &=\int\limits_{\mathcal{T}} \min_i\parallel {\bf y} - {\bf x}_i \parallel^2 {\text{d}}{\bf y} - \int\limits_{\mathcal{T}} \parallel {\bf y} - \Uppi_{{\mathcal{S}}}({\bf y}) \parallel^2 {\text{d}}{\bf y} \\ &=\int\limits_{\mathcal{T}} \min_i\parallel {\bf y}-{\bf x}_i \parallel^2 -\parallel {\bf y}-\Uppi_{{\mathcal{S}}}({\bf y}) \parallel^2 {\text{d}}{\bf y} \\ &\leq \int\limits_{\mathcal{T}} \varepsilon^2\sigma_{{\mathcal{S}}} (\sigma_{{\mathcal{S}}}+d_{{\mathcal{H}}}({{\mathcal{T}},{\mathcal{S}}})) {\text{d}}{\bf y} \\ &\leq \varepsilon^2\vert {\mathcal{T}} \vert \sigma_{{\mathcal{S}}} (\sigma_{{\mathcal{S}}}+d_{{\mathcal{H}}}({{\mathcal{T}},{\mathcal{S}}}))\\ \end{aligned} $$

Appendix 2: Gradients of the symmetric term \({\nabla \tilde{F}_{\mathcal{S} \rightarrow \mathcal{T}}}\)

This appendix gives the gradients of the symmetric term \({\tilde{F}_{\mathcal{S} \rightarrow \mathcal{T}}}\) (Sect. 3.3). They are used by our Quasi-Newton solution mechanism (see Sect. 3.4). This term is computed using the Voronoi diagram of the samples {y j } m j=1 of \(\mathcal{T}\), restricted to the surface \(\mathcal{S}\). In this setting, the variables are the vertices {x i } n i=1 of the triangles of \(\mathcal{S}\). Recall that the restricted Voronoi diagram computes for each seed y j a triangulated portion of \(\mathcal{S}\) corresponding to the intersection of \(\mathcal{S}\) with the Voronoi cell of y j . One of these triangles T is highlighted in Fig. 22. Each triangle contributes a term in the objective function and in the gradient (see Eq. 6 in Sect. 3.4). Since the vertices of the triangles are not the actual variables, one needs to use the Jacobians of these vertices and combine them with the chain rule in order to get the gradient of \({\tilde{F}_{\mathcal{S} \rightarrow \mathcal{T}}}\) with respect to the variables {x i } n i=1 . To compute the Jacobians, three different configurations (a), (b), and (c) need to be distinguished (see Fig. 22). Configuration (c) (surface vertex) is trivial. The gradients are computed as follows for the two other configurations (a) and (b). For the interested reader, the rest of this appendix details the derivations.

Fig. 22
figure 22

Computing the gradient of the symmetric term \({\nabla \tilde{F}_{\mathcal{S} \rightarrow \mathcal{T}}}\): configurations of the vertices of \(Vor({\bf Y})\vert_\mathcal{S}\)

figure c

c corresponds to the intersection between the bisector of [y 1,y 2] and an edge [x 1, x 2] of \(\mathcal{S}\).

$$ \begin{array}{l} \frac{{\text{d}}{\bf c}}{{\text{d}}{\bf x}_{{1}}}={\bf e}{\bf w}_{1}^t+(1-u){\bf I}_{3\times3}\\ \frac{{\text{d}}{\bf c}}{{\text{d}}{\bf x}_{{2}}} ={\bf e}{\bf w}_{2}^t+u {\bf I}_{3\times3}\\ \end{array} \quad \hbox{ where:} \left\{ \begin{aligned}{\bf e} &=({\bf x}_{{2}}-{\bf x}_{{1}})\\ {\bf n} &=({\bf y}_{{2}} - {\bf y}_{{1}})\\ k &={\bf n}\cdot{\bf e}\\ h &=\frac{1}{2}{\bf n}\cdot({\bf y}_{{1}}+{\bf y}_{{2}})\\ u &=\frac{1}{k}(h-{\bf n}\cdot{\bf x}_{{1}})\\ {\bf w}_{1} &=\frac{1}{k^2}(h-{\bf n}\cdot{\bf x}_{{2}}){\bf n}\\ {\bf w}_{2} &=-\frac{1}{k^2}(h-{\bf n}\cdot{\bf x}_{{1}}){\bf n} \end{aligned} \right. $$
figure d

c corresponds to the intersection between the three bisectors of [y 1y 2], [y 2y 3], [y 3y 1] and a facet (x 1x 2x 3) of \(\mathcal{S}\).

$$ \begin{array}{l} \frac{{\text{d}}{\bf c}}{{\text{d}} {\bf x}_{{1}}}={\bf e}{\bf w}_{1}^t\\ \frac{{\text{d}}{\bf c}}{{\text{d}} {\bf x}_{{2}}}={\bf e}{\bf w}_{2}^t\\ \frac{{\text{d}}{\bf c}}{{\text{d}} {\bf x}_{{3}}}={\bf e}{\bf w}_{3}^t \end{array} \quad \hbox{ where: } \left\{ \begin{aligned} {\bf e} &=({\bf y}_{{1}}-{\bf y}_{{2}})\times({\bf y}_{{1}}-{\bf y}_{{3}})\\ {\bf n} &=({\bf x}_{{1}}-{\bf x}_{{2}})\times({\bf x}_{{1}}-{\bf x}_{{3}})\\ k &={\bf n}\cdot{\bf e}\\ {\bf w}_{1} &=(({\bf x}_{{2}}-{\bf x}_{{3}})\times({\bf x}_{{1}}-{\bf c})+{\bf n})/k\\ {\bf w}_{2} &=(({\bf x}_{{3}}-{\bf x}_{{1}})\times({\bf x}_{{1}}-{\bf c}))/k\\ {\bf w}_{3} &=(({\bf x}_{{1}}-{\bf x}_{{2}})\times({\bf x}_{{1}}-{\bf c}))/k\\ \end{aligned} \right . $$

What follows is an explanation of the derivations. For configurations (a) and (b), the point can always be expressed as the intersection between a plane \(\mathcal{P}\) and a line \(\mathcal{L}\):

  • The plane \(\mathcal{P}\) defined from a point p and a normal n

  • The line \(\mathcal{L}\) defined from a point v and a direction e

The intersection c is defined as:

$$ {\bf c}={\bf v}+u{\bf e} \hbox{ with } u=\frac{({\bf p}-{\bf v}).{\bf n}}{{\bf e}.{\bf n}} $$

To ease further notations, we define k = e.n. In addition, the Jacobian of c with respect to x i will be denoted \(\frac{d{\bf c}}{d{\bf x}_i}\).

2.1 Derivation for configuration (a)

The plane \(\mathcal{P}\) is a Voronoi cell facet. This plane is the bisector of two Voronoi seeds y 1 and y 2. Its parameters are therefore:

  • n = y 2 − y 1

  • \({\bf {p}}=\frac{{\bf{y}}_1+{\bf {y}}_2}{2}\)

This plane is constant with respect to the variables. The edge separates two vertices of X namely x 1 and x 2. Its parameters are:

  • e = x 2 − x 1

  • v = x 1

Considering a small displacement dX of X, the variables become x i  + dx i . The new location of the intersection point becomes c + dc. We have:

$$ {\text{d}}{\bf c}={\text{d}}{\bf x}_1+u {\text{d}}{\bf e}+{\text{d}}u {\bf e}=u {\text{d}}{\bf x}_2+(1-u){\text{d}}{\bf x}_1+{\text{d}}u {\bf e} $$
$$ \begin{aligned} k^2{\text{d}}u &=- {\text{d}}{\bf x}_1.{\bf n} k - ({\bf p} - {\bf v}).{\bf n}({\text{d}}{\bf x}_2-{\text{d}}{\bf x}_1).{\bf n} \\ &={\text{d}}{\bf x}_1.{\bf n}({\bf p}-{\bf x}_2).{\bf n} - {\text{d}}{\bf x}_2.{\bf n}({\bf p}-{\bf x}_1).{\bf n} \\ \end{aligned} $$

The Jacobians of u are as follows:

$$ \frac{{\text{d}}u}{{\text{d}}{\bf x}_1}=\left[\frac{1}{k^2}({\bf p}-{\bf x}_2).{\bf n} \right]{\bf n}^t {, } \quad \frac{{\text{d}}u}{{\text{d}}{\bf x}_2} =-\left[\frac{1}{k^2}({\bf p}-{\bf x}_1).{\bf n} \right]{\bf n}^t $$

Finally, the Jacobians of c are:

$$ \frac{{\text{d}}{\bf c}}{{\text{d}}{\bf x}_1}={\bf e}\frac{{\text{d}}u}{{\text{d}}{\bf x}_1}+(1-u)I_{3\times3}, \quad \frac{{\text{d}}{\bf c}}{{\text{d}}{\bf x}_2}={\bf e}\frac{{\text{d}}u}{{\text{d}}{\bf x}_2}+uI_{3\times3} $$

2.2 Derivation for configuration (b)

The plane \(\mathcal{P}\) is a facet of \(\mathcal{S}\) defined by its three vertices x 1, x 2 and x 3. Its parameters are:

  • n = (x 1 − x 2) × (x 1 − x 3)

  • p = x 1.

The edge is the intersection of two bisectors defined by three constant seeds y 1, y 2 and y 3. Its parameters are:

  • e = (y 1 − y 2) × (y 1 − y 3)

  • v = c

Note that in this case c can be used to define a point on the line since the line is constant. Therefore:

$$ \begin{aligned} {\text{d}}{\bf c} &={\text{d}}u {\bf e} \\ {\text{d}}{\bf n} &={\text{d}}{\bf x}_1\times({\bf x}_2-{\bf x}_3)+{\text{d}}{\bf x}_2\times({\bf x}_3-{\bf x}_1)+{\text{d}}{\bf x}_3\times({\bf x}_1-{\bf x}_2) \\ \end{aligned} $$
$$ \begin{aligned} &k^2{\text{d}}u =k({\text{d}}{\bf p}.{\bf n}+({\bf p}-{\bf v}).{\text{d}}{\bf n}) - \overbrace{({\bf v}-{\bf p}).{\bf n}}^{ ({\bf v},{\bf p})\in{\mathcal{P}}^2\Rightarrow 0 } {\text{d}}k \\ &k {\text{d}}u =({\bf p}-{\bf v}).{\text{d}}{\bf n}+{\text{d}}{\bf x}_1.{\bf n} \\ &\quad=({\bf x}_1-{\bf v}). \sum_{i=1}^3{\text{d}}{\bf x}_i\times({\bf x}_{(i+1)[3]}-{\bf x}_{(i+2)[3]})+{\text{d}}{\bf x}_1.{\bf n} \\ &\quad=\sum_{i=1}^3 {\text{d}}{\bf x}_i .(({\bf x}_{(i+1)[3]}-{\bf x}_{(i+2)[3]}) \times ({\bf x}_1-{\bf v}))+{\text{d}}{\bf x}_1.{\bf n} \\ \end{aligned} $$

The Jacobians of u are:

$$ \begin{aligned} \frac{{\text{d}}u}{{\text{d}}{\bf x}_1} &=\frac{1}{k} \left[({\bf x}_2-{\bf x}_3)\times({\bf x}_1 - {\bf v})+{\bf n}\right]^t \\ \frac{{\text{d}}u}{{\text{d}}{\bf x}_2} &=\frac{1}{k} \left[({\bf x}_3-{\bf x}_1)\times({\bf x}_1 - {\bf v})\right]^t \\ \frac{{\text{d}}u}{{\text{d}}{\bf x}_3} &=\frac{1}{k} \left[({\bf x}_1-{\bf x}_2)\times({\bf x}_1 - {\bf v})\right]^t \\ \end{aligned} $$

And finally the Jacobians of c are

$$ \frac{{\text{d}}{\bf c}}{{\text{d}}{\bf x}_i}={\bf e} \frac{{\text{d}}u}{{\text{d}}{\bf x}_i} $$

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Nivoliers, V., Yan, DM. & Lévy, B. Fitting polynomial surfaces to triangular meshes with Voronoi squared distance minimization. Engineering with Computers 30, 289–300 (2014).

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: