一种三维实心图形显示方法,包括:将三维实心图形的所有空间点三角网格化为空间三角形集合;将空间三角形的顶点的空间坐标读入并转换成二维屏幕坐标形成二维图形;通过坐标转换得出该空间三角形的投影深度;当该空间三角形的投影深度小于深度缓存中的与该空间三角形的中心点对应的屏幕像素点的投影深度时,对该空间三角形投影得到的二维图形进行颜色填充;将该进行颜色填充后的二维图形加载到颜色缓存并更新该屏幕像素点对应的深度缓存的值;当所有空间三角形读取完毕时,将颜色缓存中的数据信息显示于屏幕上。本发明专利技术统一了转换三维实心图形至屏幕显示的标准,使得显示出的图像品质高且稳定性好。
【技术实现步骤摘要】
本专利技术涉及图像处理
,尤其涉及一种。
技术介绍
在目前的计算机辅助设计(CAD)系统中,三维实心图形一般用数学公式或自由曲 面的方式表示,要对三维实心图形进行显示需要将其转换成简单几何元素如点、线、面等 再绘制到屏幕上。转换的方法没有一个统一标准,效率及稳定性无法保证。同时由于只需 显示三维实心图形的表面到屏幕上,需要判断三维实心图形的表面属性,判断的效率及正 确性直接关系到显示的效率及质量。
技术实现思路
鉴于以上内容有必要提供一种三维实心图形显示系统,包括初始化模块,用于清 除颜色缓存和深度缓存,并读入三维实心图形的B样条特征点数据,该B样条特征点数据确 定了三维实心图形的所有空间点的三维坐标,清除颜色缓存后将所有屏幕像素点的颜色信 息填充为背景色,清除深度缓存后将所有屏幕像素点的投影深度初使化为最大值;三角形 化模块,用于将上述三维实心图形的所有空间点三角网格化为空间三角形集合;循环读取 模块,用于依次读入该三维实心图形的所有空间三角形的顶点的空间坐标;坐标转换模块, 用于依次将上述读入的空间三角形的顶点的空间坐标转换成二维屏幕坐标,每个二维屏幕 坐标对应一个屏幕像素点,该空间三角形的三个顶点对应的三个屏幕像素点形成一个二维 图形,该二维图形是一个二维三角形或一条线或一个点;所述坐标转换模块还用于将该空 间三角形的中心点的空间坐标转换成二维屏幕坐标,得到该空间三角形的中心点的投影深 度,将该投影深度作为该空间三角形的投影深度;投影深度比较模块,用于判断上述空间三 角形的投影深度是否大于深度缓存中的与该空间三角形的中心点对应的屏幕像素点的投 影深度;及图形填充模块,用于当上述空间三角形的投影深度小于深度缓存中的与该空间 三角形的中心点对应的屏幕像素点的投影深度时,对上述空间三角形投影得到的二维图形 包括的屏幕像素点进行颜色填充;缓存更新模块,用于将上述进行颜色填充后的二维图形 加载到颜色缓存,及更新深度缓存中该屏幕像素点对应的投影深度为该空间三角形的中心 点的投影深度;图形显示模块,用于当所有空间三角形读取完毕时,将颜色缓存中的数据信 息显示于屏幕。鉴于以上内容还有必要提供一种三维实心图形显示方法,该方法包括(a)清除 颜色缓存和深度缓存,并读入三维实心图形的B样条特征点数据,该B样条特征点数据确定 了三维实心图形的所有空间点的三维坐标,清除颜色缓存后将所有屏幕像素点的颜色信息 填充为背景色,清除深度缓存后将所有屏幕像素点的投影深度初使化为最大值;(b)将上 述三维实心图形的所有空间点三角网格化为空间三角形集合;(c)读入一个空间三角形的 顶点的空间坐标;(d)依次将上述读入的空间三角形的顶点的空间坐标转换成二维屏幕坐 标,每个二维屏幕坐标对应一个屏幕像素点,该空间三角形的三个顶点对应的三个屏幕像素点形成二维图形;(e)将该空间三角形的中心点的空间坐标转换成二维屏幕坐标,得到 该空间三角形的中心点的投影深度,将该投影深度作为该空间三角形的投影深度;(f)当 该空间三角形的投影深度不小于深度缓存中的与该空间三角形的中心点对应的屏幕像素 点的投影深度时,进入步骤(h);当该空间三角形的投影深度小于深度缓存中的与该空间 三角形的中心点对应的屏幕像素点的投影深度时,对该空间三角形投影得到的二维图形包 括的屏幕像素点进行颜色填充;(g)将该进行颜色填充后的二维图形加载到颜色缓存并更 新该屏幕像素点对应的深度缓存的值;(h)当还有空间三角形未读取时,返回步骤c ;当所 有空间三角形读取完毕时,将颜色缓存中的数据信息显示于屏幕上。通过本专利技术提供的,统一了转换三维实心图形至屏 幕显示的标准,使得显示出的图像品质高且稳定性好。附图说明图1是本专利技术三维实心图形显示系统的运行环境的示意图。图2是将三维实心图形三角网格化为空间三角形集合的示意图。图3是空间三角形的投影深度的示意图。图4是本专利技术三维实心图形显示方法的流程图。主要元件符号说明权利要求1.一种三维实心图形显示系统,其特征在于,该系统包括初始化模块,用于清除颜色缓存和深度缓存,并读入三维实心图形的B样条特征点数 据,该B样条特征点数据确定了三维实心图形的所有空间点的三维坐标,清除颜色缓存后 将所有屏幕像素点的颜色信息填充为背景色,清除深度缓存后将所有屏幕像素点的投影深 度初使化为最大值;三角形化模块,用于将上述三维实心图形的所有空间点三角网格化为空间三角形集合;循环读取模块,用于依次读入该三维实心图形的所有空间三角形的顶点的空间坐标;坐标转换模块,用于依次将上述读入的空间三角形的顶点的空间坐标转换成二维屏幕 坐标,每个二维屏幕坐标对应一个屏幕像素点,该空间三角形的三个顶点对应的三个屏幕 像素点形成二维图形;所述坐标转换模块还用于将该空间三角形的中心点的空间坐标转换成二维屏幕坐标, 得到该空间三角形的中心点的投影深度,将该投影深度作为该空间三角形的投影深度;投影深度比较模块,用于判断上述空间三角形的投影深度是否小于深度缓存中的与该 空间三角形的中心点对应的屏幕像素点的投影深度;及图形填充模块,用于当上述空间三角形的投影深度小于深度缓存中的与该空间三角形 的中心点对应的屏幕像素点的投影深度时,对上述空间三角形投影得到的二维图形包括的 屏幕像素点进行颜色填充;缓存更新模块,用于将上述进行颜色填充后的二维图形加载到颜色缓存,及更新深度 缓存中该屏幕像素点对应的投影深度为该空间三角形的中心点的投影深度;图形显示模块,用于当所有空间三角形读取完毕时,将颜色缓存中的数据信息显示于 屏幕。2.如权利要求1所述的三维实心图形显示系统,其特征在于,所述空间三角形的三个 顶点对应的三个屏幕像素点形成的二维图形是二维三角形或线。3.如权利要求1所述的三维实心图形显示系统,其特征在于,所述三角形化模块还用 于将网格化后的每个空间三角形细分为四个空间三角形。4.一种三维实心图形显示方法,其特征在于,该方法包括(a)清除颜色缓存和深度缓存,并读入三维实心图形的B样条特征点数据,该B样条特 征点数据确定了三维实心图形的所有空间点的三维坐标,清除颜色缓存后将所有屏幕像素 点的颜色信息填充为背景色,清除深度缓存后将所有屏幕像素点的投影深度初使化为最大 值;(b)将上述三维实心图形的所有空间点三角网格化为空间三角形集合;(c)读入一个空间三角形的顶点的空间坐标;(d)依次将上述读入的空间三角形的顶点的空间坐标转换成二维屏幕坐标,每个二维 屏幕坐标对应一个屏幕像素点,该空间三角形的三个顶点对应的三个屏幕像素点形成二维 图形;(e)将该空间三角形的中心点的空间坐标转换成二维屏幕坐标,得到该空间三角形的 中心点的投影深度,将该投影深度作为该空间三角形的投影深度;(f)当该空间三角形的投影深度不小于深度缓存中的与该空间三角形的中心点对应的屏幕像素点的投影深度时,进入步骤h;当该空间三角形的投影深度小于深度缓存中的与 该空间三角形的中心点对应的屏幕像素点的投影深度时,对该空间三角形投影得到的二维 图形包括的屏幕像素点进行颜色填充;(g)将该进行颜色填充后的二维图形加载到颜色缓存并更新该屏幕像素点对应的深度 缓存的值;(h)当还有空间三角形未读取时,返回步骤c;当所有空间三角形读取完毕时,将本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:张旨光,吴新元,孙小超,王敏,胡金波,
申请(专利权)人:鸿富锦精密工业深圳有限公司,鸿海精密工业股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。