Mathematical Problems in Engineering

Volume 2015 (2015), Article ID 435648, 9 pages

http://dx.doi.org/10.1155/2015/435648

## Smoothing Algorithm for Planar and Surface Mesh Based on Element Geometric Deformation

LTCS, Department of Mechanics and Engineering Science, College of Engineering, Peking University, Beijing 100871, China

Received 18 September 2014; Accepted 18 November 2014

Academic Editor: Chenfeng Li

Copyright © 2015 Shuli Sun et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

Smoothing is one of the basic procedures for improvement of mesh quality. In this paper, a novel and efficient smoothing approach for planar and surface mesh based on element geometric deformation is developed. The presented approach involves two main stages. The first stage is geometric deformation of all the individual elements through a specially designed two-step stretching-shrinking operation (SSO), which is performed by moving the vertices of each element according to a certain rule in order to get better shape of the element. The second stage is to determine the position of each node of the mesh by a weighted average strategy according to quality changes of its adjacent elements. The suggested SSO-based smoothing algorithm works efficiently for triangular mesh and can be naturally expanded to quadrilateral mesh, arbitrary polygonal mesh, and mixed mesh. Combined with quadratic error metric (QEM), this approach may be also applied to improve the quality of surface mesh. The proposed method is simple to program and inherently very suitable for parallelization, especially on graphic processing unit (GPU). Results of numerical experiments demonstrate the effectiveness and potential of this method.

#### 1. Introduction

As an elementary technique, mesh quality improvement has been widely used in many applications, such as mesh generation [1–5], mesh simplification [6–8], dynamic grid or mesh deformation [9–14], and other mesh processing procedures. Due to its importance, mesh quality improvement technique has received a lot of attention and great progress has already been made in recent years [15–34]. Mesh improvement approach can be basically divided into two main categories, topological optimization and smoothing (also called geometrical optimization). Topological optimization changes the topology of a mesh, that is, the node-element connectivity relationship, while smoothing or geometrical optimization improves mesh quality by simply moving or adjusting node positions without changing the topology of mesh. This paper will focus on the latter, smoothing.

Theoretically the optimization-based smoothing procedure [16, 21, 22, 29] would lead to better results. However, the capacity of improvements is limited when applying such kind of computationally expensive procedure to practical problem. In many works, for example, in [18], smoothing was commonly performed by Laplacian smoothing technique, that is, simply shifting each interior node (free vertex) to the centroid of the surrounding polygon or polyhedron. Although it is computationally inexpensive and easy to implement, however, it may produce occasionally invalid or illegal elements that are unacceptable in numerical analysis. Chen and Xu [25] presented the concept of optimal Delaunay triangulation and developed a quality smoothing scheme for triangular mesh [26] by minimizing the interpolation error among all triangulations with the same number of vertices in the local patch. This optimization-based smoothing method [26–28] could solve the corresponding optimization problem explicitly and thus the computational cost is as low as that of Laplacian smoothing. However, this method is only suitable for triangular mesh and cannot be expanded to other types of mesh.

Recently Vartziotis et al. [33, 34] developed a novel smoothing method named GETMe (geometric element transformation method) for triangular and quadrilateral mesh based on element geometric transformation. This method first improves element shape by two-step geometric transformation and then updates positions of moved nodes to achieve the purpose of smoothing. It is not necessary to construct or solve optimization problem, so high efficiency of the method is expected. Test results show that the method achieves excellent performance in effect of smoothing and algorithm efficiency. Unfortunately, it is unsuccessful to expand this approach to polygonal elements with more than four edges (e.g., pentagon and hexagon).

Inspired by the work of Vartziotis et al. [33, 34], this paper proposes a new and efficient smoothing approach for planar and surface mesh based on element geometric deformation. The approach includes two main stages. In the first stage, for each individual element, all vertices are moved by a purposely designed two-step stretching-shrinking operation (SSO) in order to get better shape of the element. The second stage is to determine the position of each node of the mesh by a weighted average strategy according to quality changes of its adjacent elements. The proposed SSO-based smoothing approach has the universal scheme and can be conveniently expanded from triangular mesh to quadrilateral mesh, arbitrary polygonal mesh, and mixed mesh. Combined with QEM, this approach may be also applied to improve the quality of surface mesh. Furthermore, the suggested method is simple to program and inherently very suitable for parallelization, especially on GPU.

In the rest of this paper we first review the idea and basic procedures of GETMe [33, 34] and then the two-step SSO and the corresponding smoothing approach for planar mesh are presented. Next the smoothing approach for surface mesh is proposed by introducing QEM. Finally, some numerical experiments are given to demonstrate the effectiveness and feasibility of the method.

#### 2. Related Work

Recently a novel smoothing approach named GETMe (geometric element transformation method) for triangular and quadrilateral mesh was proposed by Vartziotis et al. [33, 34]. This approach first improves element shape by two-step geometric transformation and then updates positions of moved nodes to achieve the purpose of smoothing. It is not necessary to construct or solve optimization problem, so high efficiency of the method is expected.

The method first operates on a counterclockwise oriented triangle with pairwise disjoint vertices , . Taking the edge of the triangle, for example, rotating it by an angle clockwise with as the center, then a new vertex defined as the intersection of two subsidiary lines (the perpendicular of in and the edge rotated clockwise by angle with as the center) is obtained bywhere and complex numbers are used to simplify notation.

Applying the same procedure to the other two edges, a clockwise rotated new triangle with the vertices , , and is obtained. To avoid the rotational effect, a similar counterclockwise transformation with angle by is applied to get a new triangle with the vertices , , and .

It is proved that such geometric element transformations preserve the element centroid, and an arbitrary triangle will gradually converge to an equilateral triangle after enough successive transformations [33].

The above transformations usually enlarge the size of the original triangle. In the event that the element does not have any boundary nodes, scaling is applied so that the new element preserves its original perimeter. If an edge of the element belongs to a boundary, the element is scaled according to the length of this edge and is moved so that the nodes belonging to this edge return to their original positions [33].

This geometric transformation can be generalized leading to an additional degree of freedom in controlling the speed in which an element becomes regular [34]. For quadrilateral elements, similar transformation can be also conducted [34]. After successively performing such transformation, an arbitrary quadrilateral will become a regular square.

In [33], the authors suggested a sequential GETMe approach based on successively improving elements with the lowest quality to complete smoothing of the mesh. Initially, the poor quality elements are rated. During the sequential process, the transformation algorithm is applied to the “worst” element, until the mesh quality reaches the desired level or termination criteria are met. After each transformation, all the affected elements are updated. Alternatively, a simultaneous GETMe approach [34] was presented for smoothing mixed planar meshes. It is based on transforming all elements simultaneously. Updated node positions are obtained as weighted means of the transformed element nodes.

Testing shows that the method achieves excellent performance in the effect of smoothing and algorithm efficiency. Unfortunately, it is unsuccessful to expand this approach to polygonal elements with more than four edges (e.g., pentagon and hexagon).

#### 3. Smoothing Algorithm for Planar Mesh

A new and universal smoothing approach for planar triangular mesh based on element geometric deformation is first proposed in this section. The presented approach includes two main stages. The first stage is geometric deformation of all the individual triangles. For each triangle, the vertices are moved by a specially designed two-step stretching-shrinking operation (SSO) in order to get better shape of the element. The second stage is to determine the position of each node of the mesh by a weighted average strategy according to the quality changes of its adjacent triangles. Next, the geometric deformation operation for triangle is first proposed and then is followed by its natural extensions to quadrilateral and arbitrary polygon.

##### 3.1. Geometric Deformation of Single Triangles

As for the algorithm in the first stage, geometric deformation of each individual triangle can be performed by two operations, stretching and shrinking. The stretching operation will enlarge the size of the original triangle but change the element towards regular shape. In order to preserve its original size, a scaling or shrinking operation must be applied to the enlarged triangle with better shape. The detail of SSO is given as follows.

For a counterclockwise oriented triangle with pairwise disjoint vertices , , the stretching operation is performed by pulling each vertex out along the perpendicular direction of its opposite edge (see Figure 1).