System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及芯片算法开发领域,尤其涉及一种图形绘制方法、装置、电子设备及存储介质。
技术介绍
1、在绘制实心凸多边形任务中,主要有两种方法,一种是面积法,一种是向量积法。其本质都是判断点是否在顶点围成的多边形内部。对于面积法,如果点在多边形内部,则每条边分别与该点组成的三角形面积之和应等于多边形面积。这种方法在硬件计算部分会涉及到点到直线的距离公式,开根号等运算对于硬件计算会比较复杂。并且面积的计算会带来精度误差,对于判别是否相等带来影响。
2、相比较而言,向量积法根据矢量叉积结果来判断点是否在内部,判断更方便并且在大多图像处理任务中都是整数坐标运算,处理更为高效简单。但其仅适用于实心多边形绘制,对于空心多边形不能直接支持,由此导致使用了两套算法逻辑,造成计算资源的开销较大。
技术实现思路
1、本专利技术提供一种图形绘制方法、装置、电子设备及存储介质,旨在减轻计算资源开销。
2、第一方面,本申请提供一种图形绘制方法,包括:
3、响应于第一输入,获取所述第一输入对应的配置信息,所述配置信息包括所述待绘制图形的多个顶点坐标;
4、从各个像素点坐标中选择目标坐标;
5、每选择到所述目标坐标时,根据所述配置信息以及所述目标坐标计算各个第一向量和对应的第二向量的叉积,所述第一向量指示第一顶点坐标至目标坐标之间的位移,所述第二向量指示所述第一顶点坐标至第二顶点坐标之间的位移,多个所述顶点坐标包括所述第一顶点坐标和所述第二顶点坐标,所
6、在各个所述第一向量和对应的所述第二向量的叉积的符号一致且任一叉积的大小小于第一乘积时,对所述目标坐标对应的像素点进行填充,所述第一乘积为待绘制图形的线宽与所述第二向量的模的乘积;
7、继续从各个像素点坐标中选择下一个目标坐标,直至所有像素点坐标选择完为止。
8、进一步的,所述配置信息包括第一线宽或者第二线宽;
9、所述第一线宽为待绘制图形为空心图形或角框时的线宽;
10、所述第二线宽为待绘制图形为实心图形或直线时的线宽,所述第二线宽大于所述第一线宽。
11、进一步的,所述第二线宽大于或等于宽度阈值,所述宽度阈值为第一顶点坐标至第三顶点坐标的距离,在所述待绘制图形中所述第二顶点与所述第一顶点和所述第三顶点均相邻;
12、可选地,所述第二线宽等于所述像素点所在画面的对角线长度。
13、进一步的,所述待绘制图形为角框,所述角框包括水平部和垂直部,所述配置信息还包括所述水平部的宽度、所述垂直部的高度以及第一线宽,所述第一线宽为待绘制图形为角框时的线宽。
14、进一步的,所述对所述目标坐标对应的像素点进行填充之前,还包括:
15、根据多个所述顶点坐标、所述水平部的宽度以及所述垂直部的高度确定角框填充范围;
16、在各个所述第一向量和对应的所述第二向量的叉积的符号一致、任一叉积的大小小于第一乘积以及所述目标坐标处于所述角框填充范围内时,执行步骤:对所述目标坐标对应的像素点进行填充;
17、在各个所述第一向量和对应的所述第二向量的叉积的符号一致、任一叉积的大小小于第一乘积以及所述目标坐标未处于所述角框填充范围内时,执行步骤:继续从各个像素点坐标中选择下一个目标坐标。
18、进一步的,所述待绘制图形的多个顶点坐标为所述待绘制图形的多个顶点在第一坐标系中对应的顶点坐标,所述顶点位于像素点的顶点位置;
19、所述从各个像素点坐标中选择目标坐标,包括:
20、从所述第一坐标系下的各个像素点坐标中选择目标坐标,所述第一坐标系中各个像素点坐标指示对应像素点的几何中心。
21、进一步的,所述根据所述配置信息以及所述目标坐标计算各个第一向量和对应的第二向量的叉积之后,还包括:
22、在各个所述第一向量和对应的所述第二向量的叉积的符号不一致或所有叉积的大小均不小于第一乘积时,执行步骤:继续从各个像素点坐标中选择下一个目标坐标。
23、第二方面,本申请还提供一种基于芯片的图形绘制装置,包括:
24、信息获取模块,用于响应于第一输入,获取所述第一输入对应的配置信息,所述配置信息包括所述待绘制图形的多个顶点坐标;
25、像素选择模块,用于从各个像素点坐标中选择目标坐标;
26、第一计算模块,用于每选择到所述目标坐标时,根据所述配置信息以及所述目标坐标计算各个第一向量和对应的第二向量的叉积,所述第一向量指示第一顶点坐标至目标坐标之间的位移,所述第二向量指示所述第一顶点坐标至第二顶点坐标之间的位移,多个所述顶点坐标包括所述第一顶点坐标和所述第二顶点坐标,所述第一顶点和所述第二顶点为所述待绘制图形相邻的顶点;
27、第二计算模块,用于在各个所述第一向量和对应的所述第二向量的叉积的符号一致且任一叉积的大小小于第一乘积时,对所述目标坐标对应的像素点进行填充,所述第一乘积为待绘制图形的线宽与所述第二向量的模的乘积;
28、填充模块,用于继续从各个像素点坐标中选择下一个目标坐标,直至所有像素点坐标选择完为止。
29、第三方面,本申请还提供一种电子设备,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行所述的图形绘制方法。
30、第四方面,本申请还提供一种可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行所述的图形绘制方法。
31、本专利技术公开了一种图形绘制方法、装置、电子设备及存储介质,该方法包括:响应于第一输入,获取第一输入对应的配置信息,配置信息包括待绘制图形的多个顶点坐标;从各个像素点坐标中选择目标坐标;每选择到目标坐标时,根据配置信息以及目标坐标计算各个第一向量和对应的第二向量的叉积,第一向量指示第一顶点坐标至目标坐标之间的位移,第二向量指示第一顶点坐标至第二顶点坐标之间的位移,多个顶点坐标包括第一顶点坐标和第二顶点坐标,第一顶点和第二顶点为待绘制图形相邻的顶点;在各个第一向量和对应的第二向量的叉积的符号一致且任一叉积的大小小于第一乘积时,对目标坐标对应的像素点进行填充,第一乘积为待绘制图形的线宽与第二向量的模的乘积;继续从各个像素点坐标中选择下一个目标坐标,直至所有像素点坐标选择完为止。而因为在进行图形绘制时,单个像素点的填充是根据第一向量和对应的第二向量间的叉积结果的方向以及大小,结合第一乘积确定的,第一乘积为待绘制图形的线宽与所述第二向量的模的乘积,因此充分利用了叉积结果,且相比于现有技术仅能用于实心多边形绘制,能够用一套算法逻辑同时实现实心以及空心图形的绘制,节约了芯片硬件端的资源开销,运算也更为简单高效,提高了整体的图形绘制效率。
本文档来自技高网...【技术保护点】
1.一种图形绘制方法,其特征在于,包括:
2.根据权利要求1所述的图形绘制方法,其特征在于,所述配置信息包括第一线宽或者第二线宽;
3.根据权利要求2所述的图形绘制方法,其特征在于,所述第二线宽大于或等于宽度阈值,所述宽度阈值为第一顶点坐标至第三顶点坐标的距离,在所述待绘制图形中所述第二顶点与所述第一顶点和所述第三顶点均相邻;
4.根据权利要求1所述的图形绘制方法,其特征在于,所述待绘制图形为角框,所述角框包括水平部和垂直部,所述配置信息还包括所述水平部的宽度、所述垂直部的高度以及第一线宽,所述第一线宽为待绘制图形为角框时的线宽。
5.根据权利要求4所述的图形绘制方法,其特征在于,所述对所述目标坐标对应的像素点进行填充之前,还包括:
6.根据权利要求1所述的图形绘制方法,其特征在于,所述待绘制图形的多个顶点坐标为所述待绘制图形的多个顶点在第一坐标系中对应的坐标,所述顶点位于像素点的顶点位置;
7.根据权利要求1所述的图形绘制方法,其特征在于,所述根据所述配置信息以及所述目标坐标计算各个第一向量和对应的第二向量
8.一种基于芯片的图形绘制装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行权利要求1至7中任一项所述的图形绘制方法。
10.一种可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序在处理器上运行时执行权利要求1至7中任一项所述的图形绘制方法。
...【技术特征摘要】
1.一种图形绘制方法,其特征在于,包括:
2.根据权利要求1所述的图形绘制方法,其特征在于,所述配置信息包括第一线宽或者第二线宽;
3.根据权利要求2所述的图形绘制方法,其特征在于,所述第二线宽大于或等于宽度阈值,所述宽度阈值为第一顶点坐标至第三顶点坐标的距离,在所述待绘制图形中所述第二顶点与所述第一顶点和所述第三顶点均相邻;
4.根据权利要求1所述的图形绘制方法,其特征在于,所述待绘制图形为角框,所述角框包括水平部和垂直部,所述配置信息还包括所述水平部的宽度、所述垂直部的高度以及第一线宽,所述第一线宽为待绘制图形为角框时的线宽。
5.根据权利要求4所述的图形绘制方法,其特征在于,所述对所述目标坐标对应的像素点进行填充之前,还包括:
<...【专利技术属性】
技术研发人员:何榜耕,
申请(专利权)人:山东岱微电子有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。