Skin Meshing Software

Ho-Lun Cheng and Xinwei Shi

Skin meshing software can construct quality surface meshes for the skin surfaces specified by a set of spheres. The input is the coordinates of the center and the radii of the spheres. The software can import the PDB files downloaded from the protein data bank and extract the information of the atoms in the molecule also. The output is a guaranteed quality triangular mesh of the skin surface specified by the spheres or the molecular skin model of the molecule in the pdb file.  The software can compute the alpha shapes of the union of spheres and the pockets in molecules as well.

The software is mainly based on the the Delaunay based meshing algorithm using restricted union of balls, which are described in the papers in the publication part. The computation of the alpha shapes and the pockets is based on the papers of three dimensional alpha shapes and pockets in macromolecules.

¡¡

Above is the user interface of the skin software. It also shows the rendering of the triangulation result of a simple skin specified by 5 spheres.

Download

Skin executable  skin.exe 

Parameter file:   parameter.file 

Skin data file :  3d-2d-figure.skn (more testing data are available in the Image Gallery).

¡¡

Usage Import files:
The software accepts two different kinds of input file format, namely, the .skn file and .pdb file. The software differentiates the data format according to the file extension. The skin file contains the data with the following format,

16.964 13.974 3.550 3.025
16.911 12.715 4.354 3.300
15.617 12.680 5.067 3.275

The first three columns are the x, y, z coordinates of the center and the fourth column is the radius of the sphere, which can be negative and thus represent an imaginary sphere. You can take the fourth column as the square of the radius by enable the check box "Squared Weight" option in the following dialog. You can also enable the check box "Multiply Weight sqrt(2)" to scale all the spheres with a factor of sqrt(2) such that the skin surface can fit to the original union of spheres partially.

The .pdb file is a standard data format for molecular archive, which contains atomic coordinates, bibliographic citations, as well as other biological information. Please refer to the protein data bank. The software extracts the atomic type and its coordinates, then it looks up a table to get the van der Waals radius. The table is contained in the  parameter.file and you can modify it to suit your need. You need to specify the path of the parameter.file and the solvent radius for generating the skin mesh for a molecule in a pdb file. The default value of the solvent radius is 1.4 Angstrom to represent the water as solvent.

Generate Mesh:
Mesh generation button
Statistics of the the number of triangles and triangulation quality button
Store the mesh to a stl file.
Rendering options:
Rotating the model
Rendering the solid outline of the triangulation
Rendering the surface with Gouraud Shading
Rendering the solid outline of each quadratic patch with different colors
Zoom in the model
Zoom out the model
¡¡
Rendering Union of balls, Delaunay, Voronoi and mixed cell:
After importing the data correctly and before generating the surface mesh , you can view the union of balls, the Delaunay triangulation (weighted),the Voronoi diagram (weighted) and the skin decomposition.
Rendering the union of the input spheres.
Compute the Delaunay Triangulation (weighted) of the input spheres
Rendering the Voronoi diagram (weighted)
Rendering the mixed cell the partition the skin surface to quadratic patches
¡¡
Display alpha shapes and the pockets:

After the Delaunay triangulation is computed and enabling the radio button "alpha shape", the software prompt to input the alpha value and display the alpha complex afterward. You can specify the type of the simplex in the alpha simplex to be displayed by enable the corresponding check box.

By enabling the radio button "Pocket", the software will compute the pocket in the Delaunay triangulation, which is a collection of tetrahedra that not belong to the alpha complex. The pocket is useful to locate the active site on a protein molecules. Please refer to the papers in the reference part for details.

Image

Gallery

We use the skin surface to model macromolecules such as DNA and proteins. The following figure illustrate the union of balls, alpha complex and the skin surface of a DNA molecule stored in adna.skn. More protein surface meshes can be found in the library of molecular surface mesh.

The skin surface can be used model the smooth surface models. The following two figures illustrated the skin surface of a human face, hand, foot and the model of bunny.

¡¡ ¡¡

¡¡ ¡¡
¡¡ ¡¡
The skin surface is also a deformable manifold in 3D, you can refer to previous version of skin software to see a model deform.
Acknowledgements

The skin software was initially created by Dr. Cheng during his Ph.D study in UIUC. On the base of Cheng's work, Shi developed two new skin meshing algorithms and implemented the current version of the skin software. The alpha shape and pocket computation was implemented by He in her honor year project when she studied in NUS.

The software partially reuse the codes of alpha shapes from Raindrop company. The input spheres of the 3D models illustrated in the image gallery are generated by the power crust software. The protein data bank provide most molecular data.

¡¡
Reference H.L Cheng and Xinwei Shi. Quality Mesh Generation for Molecular Skin Surfaces Using Restricted Union of Balls. IEEE Visualization 2005.

H.L. Cheng, T.K. Dey, H. Edelsbrunner, J. Sullivan. Dynamic skin triangulation. Discrete & Computational Geometry 25 (2001), 525-568.

H. Edelsbrunner. Deformable smooth surface design. Discrete & Computational Geometry 21 (1999), 87-115.

Herbert Edelsbrunner and Ernst P. Mucke. Three-dimensional alpha
shape. ACM Transaction on Graphics, 13(1):43¨C72, January 1994.

Edelsbrunner, H., Facello, M., and Liang, J. On the definition and the
construction of pockets in macromolecules. Tech. rep., 1995.