Dual Poisson-Disk Tiling:
An Efficient Method for Distributing Features on Arbitrary Surfaces

Hongwei Li, Kui-Yip Lo, Man-Kang Leung, and Chi-Wing Fu

IEEE Transactions on Visualization and Computer Graphics (TVCG),
Vol.14, no. 5, pp. 982-998, Sep./Oct. 2008.


This paper introduces a novel surface-modeling method to stochastically distribute features on arbitrary topological surfaces. The generated distribution of features follows the Poisson disk distribution, so we can have a minimum separation guarantee between features and avoid feature overlap. With the proposed method, we not only can interactively adjust and edit features with the help of the proposed Poisson disk map, but can also efficiently re-distribute features on object surfaces.

The underlying mechanism is our dual tiling scheme, known as the Dual Poisson-Disk Tiling. First, we compute the dual of a given surface parameterization, and tile the dual surface by our specially-designed dual tiles; during the pre-processing, the Poisson disk distribution has been pre-generated on these tiles. By dual tiling, we can nicely avoid the problem of corner heterogeneity when tiling arbitrary parameterized surfaces, and can also reduce the tile set complexity. Furthermore, the dual tiling scheme is non-periodic, and we can also maintain a manageable tile set. To demonstrate the applicability of this technique, we explore a number of surface-modeling applications: pattern and shape distribution, bump-mapping, illustrative rendering, mold simulation, the modeling of separable features in texture and BTF, and the distribution of geometric textures in shell space.



Click the following link to download (to be released soon):


    author = {Hongwei Li and Kui-Yip Lo and Man-Kang Leung and Chi-Wing Fu},
    title = {Dual {P}oisson-Disk Tiling: An Efficient Method for Distributing Features on Arbitrary Surfaces},
    journal = {IEEE Transactions on Visualization and Computer Graphics},
    month = {Sep.-Oct.},
    year = {2008},
    volume = {14},
    number = {5},
    pages = {982--998},