一种圆形裁剪区域的绘制方法及其系统技术方案

技术编号:17542468 阅读:66 留言:0更新日期:2018-03-24 20:29
本发明专利技术公开了一种圆形裁剪区域的绘制方法及其系统,其首先需要读取整个图片的图片信息;其次根据上述图片信息,计算出图片的最大内切圆的半径;然后根据最大内切圆的半径,将圆形部分区域分割成多个矩形区域;而后分别读取每一个矩形区域内的图片信息;最后按照顺序依次将多个矩形区域拼接,拼接完成后,就是一个完整的圆形显示区域;上述所述图片信息包括但不限于图片的宽度和高度。本发明专利技术可以大大简化圆形可视区域的绘制办法,只需要一张png或者jpg的图片即可。

The drawing method and system of a circular cutting area

The invention discloses a method and system for drawing circular cutting area, the first need to read the whole picture of the picture information; then according to the picture information, calculate the maximum inscribed circle radius of the picture; then according to the maximum inscribed circle radius, the circular part of the region is divided into a plurality of rectangular regions; and then read each a rectangular area of the image information; finally, according to the order of a plurality of rectangular area stitching, stitching is completed, is a complete circular display area; the picture information including but not limited to the picture width and height. This invention can greatly simplify the drawing method of the circular visual area, only a picture of PNG or JPG is needed.

【技术实现步骤摘要】
一种圆形裁剪区域的绘制方法及其系统
本专利技术涉及游戏软件开发
,具体地是涉及一种圆形裁剪区域的绘制方法及其系统。
技术介绍
现有技术一般都是采用OPENGL底层绘制出可视区域,在可视区域以内裁剪显示的内容。但是此种方式,其底层算法较为复杂,一般的新手在不会利用OpenGL的情形下不容易制作出圆形绘制区域的效果,是与传统的圆形区域绘制截然不同的两个方式。因此,本专利技术的专利技术人亟需构思一种新技术以改善其问题。
技术实现思路
本专利技术旨在提供一种圆形裁剪区域的绘制方法及其系统,其可以大大简化了圆形可视区域的绘制。为解决上述技术问题,本专利技术的技术方案是:一种圆形裁剪区域的绘制方法,包括如下步骤:S1:读取整个图片的图片信息;S2:根据上述图片信息,计算出图片的最大内切圆的半径;S3:根据最大内切圆的半径,将圆形部分区域分割成多个矩形区域;S4:分别读取每一个矩形区域内的图片信息;S5:按照顺序依次将多个矩形区域拼接,拼接完成后,就是一个完整的圆形显示区域;上述所述图片信息包括但不限于图片的宽度和高度。优选地,所述步骤S3具体包括:从平行于图片宽度的方向的直径开始,以圆心为原点,以选定的直径方向为Y轴,以垂直此直径方向的直径为X轴建立平面坐标系;从原点处间隔2个像素将圆形区域分割,分割后在计算出具体的矩形面积。优选地,所述步骤S4具体包括:按照每个矩形区域的像素的起始位置和宽高,分别读取每一个矩形区域内的图片信息。一种圆形裁剪区域的绘制系统,包括如下模块:第一读取模块,用于读取整个图片的图片信息;计算模块,用于根据上述图片信息,计算出图片的最大内切圆的半径;分割模块,用于根据最大内切圆的半径,将圆形部分区域分割成多个矩形区域;第二读取模块,用于分别读取每一个矩形区域内的图片信息;绘制模块,用于按照顺序依次将多个矩形区域拼接,拼接完成后,就是一个完整的圆形显示区域;上述所述图片信息包括但不限于图片的宽度和高度。优选地,所述分割模块具体包括:坐标系建立单元,用于从平行于图片宽度的方向的直径开始,以圆心为原点,以选定的直径方向为Y轴,以垂直此直径方向的直径为X轴建立平面坐标系;分割单元,用于从原点处间隔2个像素将圆形区域分割,分割后在计算出具体的矩形面积。优选地,所述第二读取模块,用于按照每个矩形区域的像素的起始位置和宽高,分别读取每一个矩形区域内的图片信息。采用上述技术方案,本专利技术至少包括如下有益效果:本专利技术所述的圆形裁剪区域的绘制方法及其系统,可以大大简化圆形可视区域的绘制办法,只需要一张png或者jpg的图片即可。附图说明图1为本专利技术所述的圆形裁剪区域的绘制方法的流程图;图2为本专利技术所述的圆形裁剪区域的绘制系统的结构示意图;图3为本专利技术所述的圆形裁剪区域的绘制原理图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例1如图1所示,为符合本实施例的一种圆形裁剪区域的绘制方法,包括如下步骤:S1:读取整个图片的图片信息;S2:根据上述图片信息,计算出图片的最大内切圆的半径;S3:根据最大内切圆的半径,将圆形部分区域分割成多个矩形区域;S4:分别读取每一个矩形区域内的图片信息;S5:按照顺序依次将多个矩形区域拼接,拼接完成后,就是一个完整的圆形显示区域;上述所述图片信息包括但不限于图片的宽度和高度。优选地,所述步骤S3具体包括:从平行于图片宽度的方向的直径开始,以圆心为原点,以选定的直径方向为Y轴,以垂直此直径方向的直径为X轴建立平面坐标系;从原点处间隔2个像素将圆形区域分割,分割后在计算出具体的矩形面积。优选地,所述步骤S4具体包括:按照每个矩形区域的像素的起始位置和宽高,分别读取每一个矩形区域内的图片信息。实施例2如图2所示,为符合本实施例的一种圆形裁剪区域的绘制系统,包括如下模块:第一读取模块,用于读取整个图片的图片信息;计算模块,用于根据上述图片信息,计算出图片的最大内切圆的半径;分割模块,用于根据最大内切圆的半径,将圆形部分区域分割成多个矩形区域;第二读取模块,用于分别读取每一个矩形区域内的图片信息;绘制模块,用于按照顺序依次将多个矩形区域拼接,拼接完成后,就是一个完整的圆形显示区域;上述所述图片信息包括但不限于图片的宽度和高度。优选地,所述分割模块具体包括:坐标系建立单元,用于从平行于图片宽度的方向的直径开始,以圆心为原点,以选定的直径方向为Y轴,以垂直此直径方向的直径为X轴建立平面坐标系;分割单元,用于从原点处间隔2个像素将圆形区域分割,分割后在计算出具体的矩形面积。优选地,所述第二读取模块,用于按照每个矩形区域的像素的起始位置和宽高,分别读取每一个矩形区域内的图片信息。下面结合附图3具体阐述本专利技术。本专利技术的具体步骤如下:(1)读取图片内容,宽高数据。(2)根据宽高数据,计算出图片的最大内切圆的半径,根据高的长度即可算出,高的长度就是最大内切圆的直径,这是常识。(3)从平行于图片宽度的方向的直径开始,以圆心为原点,以选定的直径方向为Y轴,以垂直此直径方向的直径为X轴建立平面坐标系。从原点处间隔2个像素将圆形区域分割,分割后在分割出具体的矩形面积。计算公式:由于每个矩形的宽是2个像素,矩形长边的长度的一半是,当前分割线与X轴的交点与圆心的长度和分割线与圆边的交点的距离,同时这两个点与圆心构成一个直角三角形。即,(h/2)*(h/2)=r*r-(2*i)*(2*i);i是从原点开始向X轴的两个方向依次延伸,间隔两个像素分割出第i个矩形,i从1开始。(4)圆心是图片对角线的交点,从内切圆中已经算出每个矩形的宽高大小,圆心的位置已知,矩形的宽高和位置已知,即可算出每个矩形的像素的起始位置,分别读取图片数据,读取出的数据和第一步不同,第一步是读取出整个图片的数据,此处是根据起始位置和宽高,截取出图片中固定矩形区域的图片数据,即ReadImageInf(floatx,floaty,floatw,float,h)。计算方法:在以图片左下角为原点的坐标系中,圆心坐标为:(w/2,h/2),在i=1时,以圆心为原点的坐标系中,X轴正方向,第一个矩形的起始点坐标x1=0,y1*y1=r*r-2*2,根据此公式可以算出y的平方,开平方即可算出y值,是矩形的长边长度的一半,所以第一个矩形区域的四个起始坐标以图片左下角为原点的坐标系中,坐标就是(w/2,y1+h/2)矩形的w=2,h=2*y1。后面依次算出每个矩形区域的起始点坐标和宽高即可裁剪出矩形区域。(5)按照在圆形区域计算矩形大小的位置顺序依次将多个矩形区域拼接,拼接完成后,就是一个完整的圆形显示区域。(6)具体的效果及计算排列的分部图如下图所示。虚线绘制的直径与圆的交点C4坐标如图所示,B4的坐标可以根据i直接计算得出,圆心为原点。在已知,图片宽高和分割间距时,可以依次根据上述所述计算出每个矩形区域的大小,进而算出所需要读取的图片位置区域,按照既定顺序排列好图片的位置显示即可。本专利技术大大简化了圆形可视区域的绘制办法,只需要一张png或者本文档来自技高网...
一种圆形裁剪区域的绘制方法及其系统

【技术保护点】
一种圆形裁剪区域的绘制方法,其特征在于,包括如下步骤:S1:读取整个图片的图片信息;S2:根据上述图片信息,计算出图片的最大内切圆的半径;S3:根据最大内切圆的半径,将圆形部分区域分割成多个矩形区域;S4:分别读取每一个矩形区域内的图片信息;S5:按照顺序依次将多个矩形区域拼接,拼接完成后,就是一个完整的圆形显示区域;上述所述图片信息包括但不限于图片的宽度和高度。

【技术特征摘要】
1.一种圆形裁剪区域的绘制方法,其特征在于,包括如下步骤:S1:读取整个图片的图片信息;S2:根据上述图片信息,计算出图片的最大内切圆的半径;S3:根据最大内切圆的半径,将圆形部分区域分割成多个矩形区域;S4:分别读取每一个矩形区域内的图片信息;S5:按照顺序依次将多个矩形区域拼接,拼接完成后,就是一个完整的圆形显示区域;上述所述图片信息包括但不限于图片的宽度和高度。2.如权利要求1所述的圆形裁剪区域的绘制方法,其特征在于,所述步骤S3具体包括:从平行于图片宽度的方向的直径开始,以圆心为原点,以选定的直径方向为Y轴,以垂直此直径方向的直径为X轴建立平面坐标系;从原点处间隔2个像素将圆形区域分割,分割后在计算出具体的矩形面积。3.如权利要求1或2所述的圆形裁剪区域的绘制方法,其特征在于,所述步骤S4具体包括:按照每个矩形区域的像素的起始位置和宽高,分别读取每一个矩形区域内的图片信息。4.一种圆形裁剪区域的绘制系统,其特征在...

【专利技术属性】
技术研发人员:牛犇
申请(专利权)人:苏州乐米信息科技股份有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1