[发明专利]一种三维模型的快速绘制方法有效
申请号: | 201611163601.X | 申请日: | 2016-12-15 |
公开(公告)号: | CN106600698B | 公开(公告)日: | 2019-09-24 |
发明(设计)人: | 赵挺竹 | 申请(专利权)人: | 西安汇明光电技术有限公司 |
主分类号: | G06T17/30 | 分类号: | G06T17/30 |
代理公司: | 西安睿通知识产权代理事务所(特殊普通合伙) 61218 | 代理人: | 惠文轩 |
地址: | 710065 陕西省西*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明属于计算机图形学领域,公开了一种三维模型的快速绘制方法。该方法包括如下步骤:在绘制三维模型时,将三维模型绘制过程中的画线和三角形填充统筹考虑,根据三角形三个顶点在二维平面上的相对位置将画线细分为三种模式,在完成三角形三条边绘制的同时获得了该三角形从上到下左边界和右边界的所有点的坐标,使后续的三角形的填充变为根据左右边界的坐标而完成的直线连接,从而大大减少了在三角形填充所需的计算量,由于三维模型的绘制大部分的计算量都在三角形的填充上,本发明极大地减少了该部分的计算量,从而实现了三维模型的实时绘制。 | ||
搜索关键词: | 一种 三维 模型 快速 绘制 方法 | ||
【主权项】:
1.一种三维模型的快速绘制方法,其特征在于,所述方法包括:步骤1,获取所要绘制的三维模型的数据信息,所述三维模型的数据信息以N个三角形面数据来描述;每个三角形面数据至少包含组成该三角形面的三个顶点坐标;N为正整数;其中,所述三维模型的数据信息的组织形式为:最开始的十二个字节为描述字,且所述十二个字节中的前四个字节表示所述三维模型的数据信息包含的三角形面数据的个数,所述十二个字节中的后八个字节为预留字节;接下来每七十二个字节为一个单位,用来存储一个三角形面数据,且所述N个三角形面数据依次存储;步骤2,设变量n的初值为1,且n=1,…,N;步骤3,获取第n个三角形面数据,得到组成第n个三角形面的三个顶点坐标,并将所述三个顶点坐标分为上顶点、左顶点和右顶点;步骤3具体包括:将所述三个顶点坐标投影到二维坐标系中,得到三个顶点在所述二维坐标系中的二维坐标;根据所述三个顶点在所述二维坐标系中的二维坐标,计算任意两个顶点之间连线的斜率,根据任意两个顶点之间连线的斜率将所述三个顶点坐标分为上顶点、左顶点和右顶点;步骤4,确定画线函数,所述画线函数为:从所述上顶点到所述左顶点的直线,从所述上顶点到所述右顶点的直线,以及从所述左顶点到 所述右顶点的直线;步骤5,根据所述上顶点到所述左顶点的直线,确定所述第n个三角形面左边界的m个端点坐标,根据所述上顶点到所述右顶点的直线和所述左顶点到所述右顶点的直线,确定所述第n个三角形面右边界的m个端点坐标,其中,m为正整数;步骤6,将所述第n个三角形面左边界的m个端点坐标和所述第n个三角形面右边界的m个端点坐标依次对应连接,从而完成对所述第n个三角形面的填充;步骤7,令n的值加1,并依次重复执行步骤3至步骤6,从而得到N个三角形面的填充,得到所要绘制的三维模型;其中,所述每个三角形面数据还包含该三角形面的每个顶点法线坐标;在所述步骤5之后,且在所述步骤6之前,所述方法还包括:根据第n个三角形面的每个顶点法线坐标,计算该第n个三角形面的灰度值;所述步骤6具体为:将所述第n个三角形面左边界的m个端点坐标和所述第n个三角形面右边界的m个端点坐标采用具有所述灰度值的直线依次对应连接,从而完成对所述第n个三角形面的填充。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安汇明光电技术有限公司,未经西安汇明光电技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201611163601.X/,转载请声明来源钻瓜专利网。
- 上一篇:一种面向3D场景的导航网格地图表示方法
- 下一篇:一种3D模型快速生成方法