Focused on the issue that adopting the OpenGL selection mechanism to directly act on the data points of Catmull-Clark subdivision mesh may cause the name stack overflowing because of the too large data volume, referencing the intersection theory of subdivision surfaces, a new pickup method for subdivision models was proposed. Through extracting and subdividing the neighboring mesh of pickup objects, the method converted the pickup for data points of subdivision mesh into the pickup for points, edges and faces of the initial mesh and the local subdivision meshes at successive levels, and the pickup for points of the local subdivision mesh at last level. Comparison and analysis experiments of some pickup examples were conducted. The total number of naming objects and the pickup time consumption of the given method were both far less than those of the traditional OpenGL selection method when the subdivision mesh had plenty of data points. The experimental results show that the proposed method can quickly and accurately pick up the data points of subdivision mesh, and it is especially suitable for the complex subdivision models with a large number of data points, and can effectively avoid pickup errors caused by the name stack overflowing.
[1] XU S, LIU Z, ZUO Z. Study on quick picking technology for massive 3D point cloud[J]. Computer Engineering and Design, 2013,34(8): 2764-2768. (徐胜攀, 刘正军, 左志权. 大规模三维点云快速拾取技术研究[J]. 计算机工程与设计, 2013,34(8): 2764-2768.) [2] MA W, WANG H. Interpolating an arbitrary number of joint B-spline curves by Loop surfaces[J]. Computers and Graphics, 2012,36(5): 321-328. [3] ANTONELLI M, BECCARI C, CASCIOLA G, et al. Subdivision surfaces integrated in a CAD system[J]. Computer-Aided Design, 2013,45(11): 1294-1305. [4] YAO J, LI X. Research on 3-dimension pick-up of human-computer interaction in computer graphics[J]. Journal of Engineering Design, 2006,13(2): 116-120. (姚继权, 李晓豁. 计算机图形学人机交互中三维拾取方法的研究[J]. 工程设计学报, 2006,13(2): 116-120.) [5] CHEN Y, YIN F. Research and implementation of a Web3D demonstration system based on the picking algorithm[J]. Applied Science and Technology, 2011,38(12): 9-14. (陈煜, 殷凤华. 基于拾取算法的产品交互式Web3D模拟的研究与实现[J]. 应用科技, 2011,38(12): 9-14.) [6] ZHANG J, LIANG C, LI G. 3D primitive picking on GPU[J]. Journal of Engineering Graphics, 2009,30(1): 46-52. (张嘉华, 梁成, 李桂清. GPU三维图元拾取[J]. 工程图学学报, 2009,30(1): 46-52.) [7] ZHU M, DONG B, WANG Y, et al. Algorithm for picking in 3D scenes based on viewport space[J]. Journal of Engineering Graphics, 2008,29(2): 94-97. (朱明亮, 董冰, 王祎, 等. 三维场景中基于视口空间的拾取算法[J]. 工程图学学报, 2008,29(2): 94-97.) [8] WANG X, TANG Z. Application of object buffer pick-up algorithm in 3D geology volume visualization[J]. Science Technology and Engineering, 2012,12(20): 5066-5068. (王雪莉, 唐志辉. 基于对象缓冲区的拾取法在地质体可视化中的应用[J]. 科学技术与工程, 2012,12(20): 5066-5068.) [9] VANACKEN L, GROSSMAN T, CONINX K. Multimodal selection techniques for dense and occluded 3D virtual environments[J]. International Journal of Human-Computer Studies, 2009,67(3): 237-255. [10] ZHOU H. Research on modeling technology of subdivision surface[D]. Nanjing: Nanjing University of Aeronautics and Astronautics, 2004: 48-51. (周海. 细分曲面造型技术研究[D]. 南京: 南京航空航天大学, 2004: 48-51.) [11] YUAN H, LIU H, LIAO W. Basic boolean operation research in Catmull-Clark subdivision surface[J]. Journal of Computer Research and Development, 2008,45(5): 1259-1268. (袁鸿, 刘浩, 廖文和. 基于Catmull-Clark细分的曲面布尔运算基础研究[J]. 计算机研究与发展, 2008,45(5): 1259-1268.) [12] LIU H. Fundamental technology research on subdivision surface modeling based on quad meshes[D]. Nanjing: Nanjing University of Aeronautics and Astronautics, 2005: 24-33. (刘浩. 基于四边形网格的细分曲面造型基础技术研究[D]. 南京: 南京航空航天大学, 2005: 24-33.)