一种三维球体绘制方法及系统的制作方法

文档序号:9930122阅读:693来源:国知局
一种三维球体绘制方法及系统的制作方法
【技术领域】
[0001]本发明涉及三维可视化,通过一系列的计算和操作,实现在网络中生成一个三维球体的方法。
【背景技术】
[0002]随着计算机3D技术的发展与普及。出现了很多构建三维空间球体的方法。其中最常见的是通过网格的方法及形式进行制作和体现。但随着人们对新颖的展示形式的追求。单一的网格展示的三维空间球体已经不能满足用户的视觉体验。因此追求一种新的三维空间球体表现及构建方式就成为了我们必然的选择。
[0003]随着众多的3D开源技术的发展和普及,也使得我们按照自己想要的展示形式进行三维球体的制作成为了一种可能。但让面临较多的问题和挑战。
[0004]首先,由于需要找出构成三维球体的基本组成单元,如网格式球体采用三角形作为三维球体构型的基础单元等。而本次三维球体的制作将采用六边形作为构型基本单元。
[0005]其次,三维空间球体的美观性和直观性。由于采用该方法的目的是要通过六边形作为构建球体的基本单元,以展示给用户进行视觉体验。因此如何能够清晰直接,美观的表达是需要我们设法解决的问题。
[0006]再者,三维空间球体上每个顶点的位置如何确定也是本发明中重点研究的地方。因为任何三维空间体的而构建都离不开顶点的位置控制,错误的位置关系及排列顺序将会使整个空间球体杂乱,无序。
[0007]最后,是对空间球体上顶点的连线。由于线段是由其端点位置决定的,因此空间球体中顶点位置,以及准确的找到每条线段所对应的端点,是能否正确构建出该三维空间球体的重点和难点。

【发明内容】

[0008]本发明针对上述问题提出了一种三维球体的绘制方法及系统,解决了传统三维可视化中用单一的网格方法绘制球体的问题,本发明采用了六边形作为构型基本单元,展现出的三维球体更加美观和清晰。
[0009]一种三维球体的绘制方法,其特征在于,包括:
确定每个一级节点的二维坐标,具体方法为:
预设总列数值为m,总行数值为n,则当i为偶数时,则第i行j列的坐标为A (i,j)= (_180+j*360/m,-90+i*180/n);当 i 为奇数时,则第 i 行 j 列的坐标为 A (i,j) =(_180+j*360/m+360/(2*m),-90+i*180/n);
通过二维与三维坐标的转换公式,计算出每个一级节点的三维坐标分别为A.x,A.y,A.z,确定二级节点的三维坐标,具体方法为:找出三个所需的一级节点,其中,当P为奇数时,三个所需的一级节点为:[A(p, q),A(p,q+1), A(p+l,q+l)],当p为偶数时,三个所需的一级节点为[A(p, q),A(p,q+1), A(p+l,q)]; 根据找出的三个所需的一级节点的三维坐标计算出二级节点的三维坐标;
确定三级节点的三维坐标,具体方法为:通过对所有已确定的一级节点的三维坐标与二级节点的三维坐标进行计算得到三级节点的三维坐标;
依次标识所有一级节点、二级节点与三级节点的属性;所述节点属性包括:节点所在层级,节点ID,相邻一级节点,相邻二级节点以及相邻三级节点。
[0010]循环遍历每个三级节点,顺次连接每个三级节点与其节点属性中的二级节点与三级节点,即可得到三维球体。
[0011]进一步地,根据找出的三个所需的一级节点的三维坐标计算出二级节点的三维坐标,计算公式为:
二级节点 X 轴坐标:Β.χ= (A (P,q).χ+ A (P,q+1).x+ A(p+1,q+1).x)/3;
二级节点 Y 轴坐标:Β.y= (A(ρ, q).y+ Α(ρ,q+1).y+ Α(ρ+1,q+1).y)/3;
二级节点 Z 轴坐标:Β.z= (A(p, q).z+ A(p,q+1).z+ A(p+1,q+1).z)/3。
[0012]进一步地,通过对所有已确定的一级节点的三维坐标与二级节点的三维坐标进行计算的计算公式为:
三级节点 X 坐标:C.χ=Α.χ+ (B.χ-Α.χ) *0.25;
三级节点 Y 坐标:C.y=A.y+ (B.y-A.y) *0.25;
三级节点 Z 坐标:C.z=A.z+(B.z-A.ζ)*0.25。
[0013]一种三维球体的绘制系统,包括:
一级节点绘制模块,用于确定每个一级节点的二维坐标,具体方法为:
预设总列数值为m,总行数值为n,则当i为偶数时,则第i行j列的坐标为A (i,j)= (_180+j*360/m,-90+i*180/n);当 i 为奇数时,则第 i 行 j 列的坐标为 A (i,j) =(_180+j*360/m+360/(2*m),-90+i*180/n);
转换模块,用于通过二维与三维坐标的转换公式,计算出每个一级节点的三维坐标分别为 A.X,A.y, A.z ;
二级节点绘制模块,用于确定二级节点的三维坐标,具体方法为:找出三个所需的一级节点,其中,当P为奇数时,三个所需的一级节点为:[A(p, q),A(p,q+1), A(p+l,q+l)],当P为偶数时,三个所需的一级节点为[A(p, q),A(p,q+1), A(p+l,q)];
根据找出的三个所需的一级节点的三维坐标计算出二级节点的三维坐标;
三级节点绘制模块,用于确定三级节点的三维坐标,具体方法为:通过对所有已确定的一级节点的三维坐标与二级节点的三维坐标进行计算得到三级节点的三维坐标;
标记模块,用于依次标识所有一级节点、二级节点与三级节点的属性;所述节点属性包括:节点所在层级,节点ID,相邻一级节点,相邻二级节点以及相邻三级节点。
[0014]连接模块,用于循环遍历每个三级节点,顺次连接每个三级节点与其节点属性中的二级节点与三级节点,即可得到三维球体。
[0015]进一步地,还包括计算模块一,用于根据找出的三个所需的一级节点的三维坐标计算出二级节点的三维坐标,计算公式为:
二级节点 X 轴坐标:Β.χ= (A (P,q).χ+ A (P,q+1).x+ A(p+1,q+1).x)/3;
二级节点 Y 轴坐标:Β.y= (A(ρ, q).y+ Α(ρ,q+1).y+ Α(ρ+1,q+1).y)/3;
二级节点 Z 轴坐标:Β.z= (A(p, q).z+ A(p,q+1).z+ A(p+1,q+1).z)/3。
[0016]进一步地,还包括计算模块二,用于通过对所有已确定的一级节点的三维坐标与二级节点的三维坐标进行计算的计算公式为:
三级节点 X 坐标:C.χ=Α.χ+ (B.χ-Α.χ) *0.25;
三级节点 Y 坐标:C.y=A.y+ (B.y-A.y) *0.25;
三级节点 Z 坐标:C.z=A.z+(B.z-A.ζ)*0.25。
[0017]本发明提出了一种三维球体绘制方法,所述方法通过确定一级节点二维坐标,并通过二维与三维坐标的转换公式,进而确定二级节点和三级节点的三维坐标并分别标识所有节点属性,循环遍历每个三级节点,顺次连接每个三级节点与其节点属性中的二级节点与三级节点,即可得到三维球体。本发明还提供了相应的系统结构,通过本发明,能够绘制出美观清晰独特的以六边形为构型基本单元的球体,解决了以往传统网格绘制球体的单一性。
【附图说明】
[0018]为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0019]图1为一种绘制三维球体的方法实施例流程图;
图2为一种绘制三维球体的系统实施例结构示意图;
图3为一级节点的二维坐标显示图;
图4为一级节点的三维坐标显示图的主视图;
图5为一级节点的
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1