[发明专利]一种无失真三角形的区域划分绘制方法有效
申请号: | 202211609552.3 | 申请日: | 2022-12-15 |
公开(公告)号: | CN115661298B | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 李涵;夏伟杰;郭元浩;李文强;张川;周钰致;刘伟强;周建江;苏霖 | 申请(专利权)人: | 南京航空航天大学 |
主分类号: | G06T11/20 | 分类号: | G06T11/20 |
代理公司: | 南京钟山专利代理有限公司 32252 | 代理人: | 徐燕 |
地址: | 211106 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 失真 三角形 区域 划分 绘制 方法 | ||
本发明公开了一种无失真三角形的区域划分绘制方法,采用三角形相邻两边作为不共线的非零向量来线性组合表示任一像素点与两个非零向量公共点构成的像素向量,通过线性组合系数和像素向量在三角形各边上的投影大小对三角形进行区域划分,不同区域采用不同的距离反走样完成三角形绘制。本发明能够解决现有技术中三角形各边在小角度情况下会出现绘制异常、反走样显示效果差的技术问题,可以实现三角形的无失真绘制,显示效果好。
技术领域
本发明涉及图形显示技术领域,具体而言涉及一种无失真三角形的区域划分绘制方法。
背景技术
三角形是组成计算机图形最基本的元素之一,在很多显示系统中需要绘制任意类型的三角形。常见的三角形绘制算法会对三角形三个顶点的纵坐标大小进行判断将顶点纵坐标较小的顶点记为min点,纵坐标顶点较大的顶点记为max点,剩余顶点记为mid点,引出一条经过mid点的水平线将三角形分为上三角形和下三角形,从min点所在行开始对三角形进行逐行扫描,通过水平线与三角形边的交点的横坐标与像素点的横坐标进行大小比较确定像素点是否在三角形内部。在上三角形部分,交点即为水平线与min-mid、min-max边的交点;在下三角形部分,交点即为水平线与mid-max、min-max边的交点。反走样部分采用多重采样算法。在三角形各边处于小角度的情况下,该算法绘制出的三角形锯齿现象严重,且在上三角形与下三角形的衔接处会出现填充异常的问题。如何高效、简便地完成三角形的绘制成为重要的研究内容。
发明内容
为了解决目前常见的三角形绘制算法会造成上下三角形衔接处填充异常以及反走样效果差的问题,本发明提供一种无失真三角形的区域划分绘制方法,适用于任意类型三角形,便于硬件实现。
为实现上述目的,本发明采用以下技术方案:
一种无失真三角形的区域划分绘制方法,所述区域划分绘制方法包括以下步骤:
S1,令待绘制的三角形的三个顶点分别为点O、点A和点B;采用三角形相邻两边对应的不共线的非零向量和的线性组合表示任一像素点P与两个非零向量公共点构成的像素向量
S2,通过像素点的像素向量对应的线性组合系数k和t对三角形进行区域划分,将其划分成以下四个绘制区域:三角形内部区域、OA边所属区域、AB边所属区域和OB边所属区域;
S3,根据OA边所属区域、AB边所属区域和OB边所属区域的像素点的像素向量在各自对应的三角形边上的投影大小,计算得到像素点与对应边的距离值distance;采用下述公式计算得到像素点的透明度alpha:
alpha=(2-distance)/2;
对不同区域采用不同的距离反走样完成三角形绘制;其中,三角形内部区域的像素点的透明度取值为1。
为优化上述技术方案,采取的具体措施还包括:
进一步地,步骤S2中,采用下述公式计算得到像素点P的像素向量对应的线性组合系数k和t:
式中,(x1,y1)是点O的坐标值,(x2,y2)是点A的坐标值,(x3,y3)是点B的坐标值,(xs,ys)是像素点P的坐标值。
进一步地,步骤S2中,通过像素向量对应的线性组合系数k和t对三角形进行区域划分的过程包括以下子步骤:
通过k、t的大小将三角形分为四个绘制区域:
若像素向量对应的线性组合系数满足以下条件:t<0,则像素点属于第一绘制区域,对应的三角形边为OA边;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211609552.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种精量播种机
- 下一篇:一种泳池清污机器人清洁路径规划管理系统及方法