# Multilevel Editing of B-Spline Curves with Robust Orientation of Details

^{*}

## Abstract

**:**

## 1. Introduction

- We present a robust and effective method for preserving orientation of details in the multilevel editing of B-spline curves.
- We choose RMFs as the reference coordinate system and show that they are stable and suitable for preserving orientation of details rather compared to other reference frames.
- Our technique can easily be applied to the multilevel editing of 3D camera motions by editing its curve component.

## 2. Related Work

## 3. Multilevel Representation of B-Spline Curves

#### 3.1. Multilevel B-Spline Curves

#### 3.2. Multilevel B-Spline Curves with Orientation of Details

- ${F}^{j-1}(u)$ should smoothly change on ${C}^{j-1}(u)$.
- ${F}^{j-1}(u)$ should minimize its variations when ${C}^{j-1}(u)$ is edited.
- ${F}^{j-1}(u)$ should be computed efficiently.

## 4. Multilevel Editing with Orientation of Details

Algorithm 1: Multilevel editing of a B-spline curve at level j. |

INPUT: j : editing level $(1\le j\le k)$ $\Delta {\mathbf{d}}_{i}^{j}$ : edited displacements of control points ${\mathbf{d}}_{i}^{j}$ OUTPUT: ${C}^{k}(u)$: curve edited at level j 1: BEGIN 2: ${\mathbf{d}}_{i}^{j}:={\mathbf{d}}_{i}^{j}+{\left({F}^{j-1}({\widehat{u}}_{i})\right)}^{T}\Delta {\mathbf{d}}_{i}^{j};$ 3: FOR $l=j$ TO k 4: FOR $m=0$ TO $|{U}^{l}|-1$ 5: ${\mathbf{d}}_{m}^{l}:={F}^{l-1}({\widehat{u}}_{m}){\mathbf{d}}_{m}^{l};$ 6: END FOR 7: ${C}^{l}(u):={C}^{l-1}(u)+{\widehat{D}}^{l}(u);$ 8: FOR $m=0$ TO $|{U}^{l}|-1$ 9: Update RMFs at node parameters ${\widehat{u}}_{m}$ of ${C}^{l}(u);$ 10: END FOR 11: END FOR 12: END BEGIN 9: RETURN ${C}^{k}(u);$ |

## 5. Experimental Results

## 6. Conclusions

## Acknowledgments

## Author Contributions

## Conflicts of Interest

## References

- Piegl, L.; Tiller, W. The NURBS Book, 2nd ed.; Springer: Berlin/Heidelberg, Germany, 1997. [Google Scholar]
- Farin, G. Curves and Surfaces for CAGD, 5th ed.; Academic Press: Cambridge, MA, USA, 2002. [Google Scholar]
- Forsey, D.-R.; Bartels, R.-H. Hierarchical B-spline refinement. ACM SIGGRAPH Comput. Graph.
**1988**, 22, 205–212. [Google Scholar] [CrossRef] - Finkelstein, A.; Salesin, D.-H. Multiresolution curves. In Prceedings of the SIGGRAPH ‘94 21st Annual Conference on Computer Graphics and Interactive Techniques, Orlando, FL, USA, 24–29 July 1994; pp. 261–268.
- Wang, W.; Jüttler, B.; Zheng, D.; Liu, Y. Computation of rotation minimizing frames. ACM Trans. Graph.
**2008**, 27, 1–18. [Google Scholar] [CrossRef] - Vuong, A.-V.; Giannelli, C.; Jüttler, B.; Simeon, B. A hierarchical approach to adaptive local refinement in isogeometric analysis. Comput. Methods Appl. Mech. Eng.
**2011**, 200, 3554–3567. [Google Scholar] [CrossRef] - Bornemann, P.-B.; Cirak, F. A subdivision-based implementation of the hierarchical B-spline finite element method. Comput. Methods Appl. Mech. Eng.
**2013**, 253, 584–598. [Google Scholar] [CrossRef] - Elber, G.; Gotsman, C. Multiresolution control for nonuniform B-spline curve editing. In Proceeding of the 3rd Pacific Graphics Conference on Computer Graphics and Applications, Seoul, Korea, 21–24 August 1995; pp. 267–278.
- Prusinkiewicz, P.; Samavati, F.; Samavati, F.; Smith, C.; Karwowski, R. L-system description of subdivision curves. Int. J. Shape Model.
**2002**, 9, 41–59. [Google Scholar] [CrossRef] - Poon, K.; Bateman, L.; Karwowski, R.; Prusinkiewicz, P.; Samavati, F. L-system implementation of multiresolution curves based on cubic B-spline subdivision. In Proceedings of the 14th Western Computer Graphics Symposium, Banff, AB, Canada, 30 March–2 April 2003.
- Dreger, A.; Gross, M.-H.; Schlegel, J. Multiresolution triangular B-spline surfaces. In Proceedings of the Computer Graphics International, Hannover, Germany, 26 June 1998; p. 166.
- Elber, G. Multiresolution curve editing with linear constraints. In Proceedings of the 6th ACM Symposium on Solid Modeling and Applications, Ann Arbor, MI, USA, 4–8 June 2001; pp. 109–119.
- Hahmann, S.; Sauvage, B.; Bonneau, G.-P. Area preserving deformation of multiresolution curves. Comput. Aided Geom. Des.
**2005**, 22, 349–367. [Google Scholar] [CrossRef] - Sauvage, B.; Hahmann, S.; Bonneau, G.-P. Length preserving multiresolution editing of curves. Computing
**2004**, 72, 161–170. [Google Scholar] [CrossRef] - Olsen, L.; Samavati, F.-F.; Bartels, R.-H. Multiresolution B-spline based on wavelet constraints. In Proceedings of the Eurographics Symposium on Geometric Processing, Vienna, Austria, 4–6 July 2005; pp. 1–10.
- Li, D.; Qin, K.; Sun, H. Curve modeling with constrained B-spline wavelets. Comput. Aided Geom. Des.
**2005**, 22, 45–56. [Google Scholar] [CrossRef] - Botsch, M.; Kobbelt, L. Multiresolution surface representation based on displacement volumes. Comput. Graph. Forum
**2003**, 22, 483–491. [Google Scholar] [CrossRef] - Zhang, C.; Yoon, S.-H.; Lee, J. Multilevel Editing for Hierarchical B-spline curves using Rotation Minimizing Frames. J. Korea Comput. Graph. Soc.
**2010**, 16, 41–50. [Google Scholar] [CrossRef] - Chung, T.L.; Wang, W. Discrete moving frames for sweep surface modeling. In Proceedings of the Pacific Graphics ’96, Taipei, Taiwan, 19–22 August 1996; pp. 159–173.
- Bloomenthal, J. Modeling the mighty maple. In Proceedings of the SIGGRAPH ’85 12th Annual Conference on Computer Graphics and Interactive Techniques, San Francisco, CA, USA, 22–26 July 1985; pp. 305–311.
- Semwal, S. K.; Hallauer, J. Biomedical modeling: Implementing line-of-action algorithm for human muscles and bones using generalized cylinders. Comput. Graph.
**1994**, 18, 105–112. [Google Scholar] [CrossRef] - Jüttler, B. Rotational minimizing spherical motions. In Advance in Robotics; Analysis and Control; Springer: Berlin/Heidelberg, Germany, 1998; pp. 413–422. [Google Scholar]
- Klok, F. Two moving frames for sweeping along a 3D Trajectory. Comput. Aided Geom. Des.
**1986**, 3, 217–229. [Google Scholar] [CrossRef] - Jüttler, B. Rational approximation of rotation minimizing frames using Phythagorean-hodograph cubics. J. Geom. Graph.
**1999**, 3, 141–159. [Google Scholar] - Farouki, R.T.; Giannelli, C.; Sampoli, M.L.; Sestini, A. Rotation-minimizing osculating frames. Comput. Aided Geom. Des.
**2014**, 31, 27–42. [Google Scholar] [CrossRef]

**Figure 1.**(

**a**) A cubic B-spline curve with initial knots $\{0,0,0,0,1,1,1,1\}$; (

**b**) inserting three knots $\{0.25,0.5,0.75\}$ produces additional control points without shape change; (

**c**) a curve edited by moving additional control points.

**Figure 2.**Multilevel curve editing: (

**a**) a cubic B-spline curve; (

**b**) editing the curve at the higher level in a fixed coordinate system; (

**c**) re-editing the curve at the original level; (

**d**) the desired result after (

**c**); (

**e**) the real result after (

**c**); and (

**f**) the result using Frenet frames in (

**b**).

**Figure 3.**Comparison of local reference frames: (

**a**) at points on the curve; (

**b**) based on Frenet frames; and (

**c**) based on rotation minimizing frames (RMFs).

**Figure 4.**Determination of node parameters: (

**a**) a cubic B-spline basis function ${N}_{i}^{3}(u)$ and node parameter ${\widehat{u}}_{i}$, and (

**b**) the derivatives of $d({N}_{i}^{3}(u))/du$ and ${\widehat{u}}_{i}$ such that $d({N}_{i}^{3}({\widehat{u}}_{i}))/du=0$.

**Figure 5.**Adding a displacement function ${D}^{1}(0,h(u),0)$ to different reference frames: (

**a**) a graph of $h(u)$; (

**b**) ${D}^{1}(u)$ is added to ${C}^{0}(u)$ in a fixed coordinate system; (

**c**) ${D}^{1}(u)$ is added to the Frenet frames on ${C}^{0}(u)$ and (

**d**) ${D}^{1}(u)$ is added to the RMFs on ${C}^{0}(u)$.

**Figure 6.**Results of multilevel editing: (

**a**) initial curve at level 0; (

**b**) the curve edited at level 5; (

**c**) the curve edited globally at level 0; and (

**d**) the resulting curve at level 5.

**Figure 7.**Results of multilevel editing: (

**a**) initial curve at level 0; (

**b**) the curve edited at higher levels; (

**c**) and (

**d**) the resulting curves at higher levels after the initial curve (in black) is edited at level 0.

**Figure 8.**Results of multilevel editing: (

**a**) initial curve at level 0; (

**b**) edited curve at level 4; (

**c**) edited curve at level 1; (

**d**) edited curve at level 2; (

**e**) and (

**f**) edited curve to be a space curve.

**Figure 9.**Camera motion control: (

**a**) camera trajectory and orientation curves at level 0; (

**b**) image captured by the camera at the position of the red box in (

**a**); (

**c**) edited camera curves at level 2; and (

**d**) image captured by the camera at the position of the red box in (

**c**).

Method | # of adds | # of mults | # of divs | # of sqrt |
---|---|---|---|---|

Frenet frame | 19 | 42 | 6 | 2 |

RMF | 28 | 32 | 2 | 0 |

**Table 2.**Times to compute RMFs and Frenet Frames for the curve of Figure 6.

Level | Num. of Frames | Time (ms) | Ratio (b) to (a) | |
---|---|---|---|---|

RMF (a) | Frenet (b) | |||

1 | 5 | 0.027949 | 4.07133 | 145.6699703 |

2 | 7 | 0.0400458 | 7.48952 | 187.0238577 |

3 | 11 | 0.06561 | 17.68624 | 269.5662247 |

4 | 19 | 0.1188456 | 36.12243 | 303.9441931 |

5 | 35 | 0.211788 | 85.059 | 401.6233214 |

© 2016 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC-BY) license (http://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Hwang, H.-D.; Park, D.-G.; Yoon, S.-H.
Multilevel Editing of B-Spline Curves with Robust Orientation of Details. *Symmetry* **2016**, *8*, 121.
https://doi.org/10.3390/sym8110121

**AMA Style**

Hwang H-D, Park D-G, Yoon S-H.
Multilevel Editing of B-Spline Curves with Robust Orientation of Details. *Symmetry*. 2016; 8(11):121.
https://doi.org/10.3390/sym8110121

**Chicago/Turabian Style**

Hwang, Hae-Do, Dong-Geun Park, and Seung-Hyun Yoon.
2016. "Multilevel Editing of B-Spline Curves with Robust Orientation of Details" *Symmetry* 8, no. 11: 121.
https://doi.org/10.3390/sym8110121