CN114119807B - 坐标位置径向渐变算法高效阅读ofd渲染文件的方法 - Google Patents
坐标位置径向渐变算法高效阅读ofd渲染文件的方法 Download PDFInfo
- Publication number
- CN114119807B CN114119807B CN202111478386.3A CN202111478386A CN114119807B CN 114119807 B CN114119807 B CN 114119807B CN 202111478386 A CN202111478386 A CN 202111478386A CN 114119807 B CN114119807 B CN 114119807B
- Authority
- CN
- China
- Prior art keywords
- coordinate
- radial gradient
- ellipse
- point
- rendering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/66—Analysis of geometric attributes of image moments or centre of gravity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Geometry (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Image Generation (AREA)
Abstract
本发明提出坐标位置径向渐变算法高效阅读OFD渲染文件的方法,包括:读取OFD文件,解析提取显示区域存在的径向渐变参数;确定径向渐变渲染的坐标范围;计算判断坐标范围内的坐标点是否需要渲染;需要渲染则计算当前坐标点颜色,并渲染;若不需要渲染的则重新计算下一个坐标点是否需要渲染;完成径向渐变坐标范围内的各坐标点颜色的计算,在显示区域内输出渲染效果以供阅读。本发明在阅读包含径向渐变的OFD文件时只渲染可视化范围内的径向渐变的效果,具有提高渲染效果、减少内存消耗、优化性能的优点。
Description
技术领域
本发明涉及径向渐变的应用领域,特别涉及坐标位置径向渐变算法高效阅读OFD渲染文件的方法。
背景技术
径向渐变指的是从起点到终点颜色从内到外的椭圆形渐变。OFD渲染文件指的是文件中包含颜色填充OFD文件,本发明中的OFD渲染文件指的是使用径向渐变用于填充显示的OFD文件。
OFD标准中径向渐变的定义为径向渐变定义了两个离心率和倾斜角度均相同的椭圆,并在椭圆边缘连线区域内进行渐变绘制的方法。具体方法是先由起始点椭圆中心点开始绘制一个起点颜色的空心椭圆,随后沿着中心点的连线不断绘制离心率与倾斜角度相同的空心椭圆,颜色起点由起始点颜色逐渐变为结束点颜色,椭圆大小由起始点椭圆变为结束点椭圆。
目前,阅读径向渐变的文件进行放大显示时,由于应用径向渐变进行渲染时,需要沿着两个坐标点方向进行绘制,无论是否显示,需要对径向渐变方向上全部的内容进行渲染,从而导致阅读的效率低,阅读时的内存消耗高的现象。
发明内容
本发明的目的提供坐标位置径向渐变算法高效阅读OFD渲染文件的方法,解决上述现有技术问题中的一个或多个。
第一方面,本发明提出坐标位置径向渐变算法高效阅读OFD渲染文件的方法,包括:
步骤1、读取文件,解析提取显示区域存在的径向渐变参数;
步骤2、确定径向渐变渲染的坐标范围;
步骤3、计算判断径向渐变渲染的坐标范围内每个坐标点是否需要渲染,需要渲染的则计算坐标点颜色,并渲染;若不需要渲染的则重新计算下一个坐标点是否需要渲染;
步骤4、完成径向渐变渲染的坐标范围内的各坐标点颜色计算,在显示区域内输出渲染效果以供阅读。
在一些实施方式中,所述文件为OFD文件,所述显示区域指的是显示窗口中页面范围内的区域。
在一些实施方式中,确定径向渐变渲染的坐标范围的方法为:
获取当前文件的缩放倍数和显示区域的坐标范围,
解析径向渐变参数、显示区域的坐标范围以及文件的缩放倍数,计算初步的径向渐变渲染坐标范围,获取初步的径向渐变渲染坐标范围与当前页面的显示区域的坐标范围的交集,形成径向渐变渲染的坐标范围。
在一些实施方式中,所述径向渐变参数包括起点椭圆和终点椭圆的圆心坐标位置、长轴大小、偏心率、长轴与水平方向的夹角、起点和终点的颜色取值。
在一些实施方式中,计算判断径向渐变渲染的坐标范围内每个坐标点是否需要渲染的过程为:
计算坐标点所在椭圆的椭圆方程;
推导S1与S的比例值k的一元二次方程组并求解,S1是当前坐标点所在的椭圆的圆心与起点椭圆的圆心之间的距离值,S是起点椭圆的圆心与终点椭圆的圆心之间的距离值;
根据判断条件判断是否需要渲染,判断条件为k的一元二次方程组有解,且解为0-1之间的数值,若符合判断条件则该坐标点需要渲染,反之则不需要进行渲染。
在一些实施方式中,所述坐标点所在椭圆的椭圆方程为:
上式中
x0和y0分别为起点椭圆的圆心的横坐标和纵坐标,x1和y1分别为终点椭圆的圆心的横坐标和纵坐标,a、b、c分别为坐标点所在椭圆的长轴、短轴以及椭圆焦点到圆心点的距离,x和y分别为当前坐标点的横坐标和纵坐标,θ为起点椭圆、终点椭圆以及坐标点所在椭圆长轴与水平方向的夹角。
在一些实施方式中,计算当前坐标点颜色的过程如下:
获取S1与S的比例值k;
计算出终点颜色取值与起点颜色取值的颜色差值,
计算出比值k与颜色差值的乘积加上起点颜色取值即可得到当前坐标点颜色的取值。
在一些实施方式中,所述颜色取值取的是RGB颜色值。
第二方面,提出一种阅读器,包括处理器、存储器、通信接口和通信总线,所述处理器和所述存储器与所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行第一方面叙述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法。
第三方面,提出一种计算机存储介质,存储介质中存储有至少一可执行指令,所述可执行指令使所述处理器执行第一方面叙述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法。
本发明所述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法的优点为:
本发明叙述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法在阅读包含径向渐变的文件时只渲染可视范围内的径向渐变的效果,能够提高渲染效率,减少内存消耗,优化性能。
附图说明
图1为本发明的一些实施方式中坐标位置径向渐变算法高效阅读OFD渲染文件的方法的流程框图。
具体实施方式
本实施例提出坐标位置径向渐变算法高效阅读OFD渲染文件的方法,结合图1所示的内容,包括如下步骤:
步骤1、OFD阅读器读取OFD文件,解析提取显示区域存在的径向渐变参数,显示区域指的是OFD阅读器的显示窗口中页面范围内的区域,
其中径向渐变参数包括起点和终点椭圆圆心的坐标位置、长轴大小、偏心率、长轴与水平方向的夹角、起点和终点的颜色取值,
设起点椭圆的圆心坐标为x0和y0,长轴大小为a0;终点椭圆的圆心坐标为x1和y1,长轴大小为a1,起点椭圆和终点椭圆的偏心率与长轴和水平方向的夹角相同,分别为e和θ;
步骤2、确定OFD阅读器中径向渐变渲染的坐标范围,其过程为:
获取显示的OFD文件的缩放倍数和显示区域的坐标范围,
根据径向渐变参数、显示区域的坐标范围以及文件的缩放倍数计算初步的径向渐变渲染坐标范围,获取初步的径向渐变渲染坐标范围与当前页面的显示区域的坐标范围的交集,形成径向渐变渲染的坐标范围;
比如:
假设显示区域的左上角显示的文件上的坐标为(X0,Y0),显示区域的高度为h,宽度为w,根据解析的径向渐变参数的渲染范围,假设左上角坐标为(X1,Y1),右下角的坐标为(X2,Y2),根据两组的坐标范围计算出这两个矩形区域的相交的范围,采用如下的公式:
左上角点的坐标为:
右下角点的坐标为:
上式中出现的min和max分别是取两个数值之间最小值和最大值;
同时需要判断左上角点的坐标和右下角点的坐标之间的关系确定此区域是否有效,仅当
两式同时成立才能形成有效的区域,若其中一式不成立或两式均不成立则当前的显示范围内无需进行渲染;
步骤3、计算判断径向渐变渲染的坐标范围内每个坐标点是否需要渲染,其过程为:
已知圆心和长短半轴的任意椭圆的方程为:
上式中x’和y’为椭圆圆心点的坐标,a、b、c分别表示椭圆长轴、短轴、椭圆焦点到圆心点的距离,θ表示椭圆长轴与水平方向的夹角;
假定某一坐标点位于起点椭圆和终点椭圆中间的某个椭圆上,由于径向渐变的过程是线性的,设该坐标点所在椭圆的圆心与起点椭圆的圆心之间的距离S1,起点椭圆的圆心与终点椭圆的圆心之间的距离S,S1与S的比值为k,k的取值为0-1之间的实数,用k和读取的OFD文件的径向渐变的参数来表示待求坐标点所在的椭圆方程,若能求出比例系数k即可确定坐标点所在的椭圆方程,
假设坐标点所在椭圆的圆心点的坐标和长半轴可表示为:
坐标点所在的椭圆的焦距为2c,根据椭圆公式,可以将待求的椭圆方程表示为:
上式中
由于
代入椭圆方程中,整理得到:
令
则上式可转换推导出k的一元二次方程:
对k的一元二次方程进行求解,由于k的系数和常数项是可计算的,若k的一元二次方程组能够求解,并且解的值在0到1之间的数值,则认为此坐标点是需要渲染的进入步骤4,反之则不需要进行渲染,然后重复步骤3计算下一个坐标点;
步骤4、计算坐标点颜色并进行渲染,该过程具体如下:
计算出终点颜色取值与起点颜色取值的颜色差值,颜色取值取的是RGB颜色值;
将比值k与颜色差值相乘,然后加上起点颜色取值即可得到该坐标点颜色的取值;
根据该坐标点颜色的取值对显示区域内该坐标点所在的位置进行渲染;
步骤5、重复步骤3和步骤4至完成OFD阅读器中径向渐变渲染的坐标范围内所有坐标点的计算判断,并完成径向渐变渲染,在OFD阅读器的显示窗口中输出渲染好的显示区域以供阅读。
通过实施上述实施例,在阅读包含径向渐变的文件时只渲染可视范围内的径向渐变的效果,从而达到提高渲染效率,减少内存消耗的效果。
本发明的一些实施例提供一种阅读器,比如上述的OFD阅读器,包括处理器、存储器、通信接口和通信总线,处理器和存储器与通信接口通过通信总线完成相互间的通信;
存储器用于存放至少一可执行指令,可执行指令使处理器执行上述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法。
本发明的一些实施例提供一种计算机存储介质,存储介质中存储有至少一可执行指令,可执行指令执行上述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法。
在一种可选的实施方式中,可执行指令进一步使处理器执行如下操作:当前输出的渲染好的显示区域的痕迹存储为历史浏览痕迹,在跳转至同一文件的其他显示区域后再返回该显示区域可以直接调用该历史痕迹,不需要再利用上述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法对该显示区域做重复计算判断,避免重复运算。
在一种可选的实施方式中,可执行指令进一步使处理器执行如下操作:当前输出的渲染好的显示区域的痕迹存储为历史浏览痕迹,在跳转至同一文件的其他显示区域后再返回该显示区域可以直接调用该历史痕迹,在关闭文件后该历史痕迹会被直接清除,避免文件阅读过程中对同一区域进行重复的运算渲染,同时也能够避免文件关闭后文件对应的历史痕迹影响内存。
在一种可选的实施方式中,可执行指令进一步使处理器执行如下操作:当前输出的渲染好的显示区域的痕迹存储为历史浏览痕迹,在跳转至同一文件的其他显示区域后再返回该显示区域可以直接调用该历史痕迹,在关闭文件后该历史痕迹会被定期清除,比如设定24h为一个清除周期,那么在关闭文件的24h后历史痕迹被清除。避免文件再次被打开阅读时需要进行重复的运算渲染,但也能够避免文件对应的历史痕迹长时间的占用内存。
以上所述仅是本发明的优选方式,应当指出,对于本领域普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出若干相似的变形和改进,这些也应视为本发明的保护范围之内。
Claims (9)
1.一种坐标位置径向渐变算法高效阅读OFD渲染文件的方法,其特征在于,包括:
步骤1、读取文件,解析提取显示区域存在的径向渐变参数;
步骤2、确定径向渐变渲染的坐标范围;
步骤3、计算判断径向渐变渲染的坐标范围内每个坐标点是否需要渲染,需要渲染的则计算坐标点颜色,并渲染;若不需要渲染的则重新计算下一个坐标点是否需要渲染,其中,计算判断径向渐变渲染的坐标范围内每个坐标点是否需要渲染的过程为:
计算坐标点所在椭圆的椭圆方程;
推导S1与S的比例值k的一元二次方程组并求解,S1是当前坐标点所在的椭圆的圆心与起点椭圆的圆心之间的距离值,S是起点椭圆的圆心与终点椭圆的圆心之间的距离值;
根据判断条件判断是否需要渲染,判断条件为k的一元二次方程组有解,且解为0-1之间的数值,若符合判断条件则该坐标点需要渲染,反之则不需要进行渲染;
步骤4、完成径向渐变渲染的坐标范围内的各坐标点颜色计算,在显示区域内输出渲染效果以供阅读。
2.根据权利要求1所述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法,其中,所述文件为OFD文件,所述显示区域指的是显示窗口中页面范围内的区域。
3.根据权利要求1所述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法,其中,确定径向渐变渲染的坐标范围的方法为:
获取当前文件的缩放倍数和显示区域的坐标范围,
解析径向渐变参数、显示区域的坐标范围以及文件的缩放倍数,计算初步的径向渐变渲染坐标范围,获取初步的径向渐变渲染坐标范围与当前页面的显示区域的坐标范围的交集,形成径向渐变渲染的坐标范围。
4.根据权利要求1或3所述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法,其中,所述径向渐变参数包括起点椭圆和终点椭圆的圆心坐标位置、长轴大小、偏心率、长轴与水平方向的夹角、起点和终点的颜色取值。
6.根据权利要求1所述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法,其中,计算当前坐标点颜色的过程如下:
获取S1与S的比例值k;
计算出终点颜色取值与起点颜色取值的颜色差值,
计算出比值k与颜色差值的乘积加上起点颜色取值即可得到当前坐标点颜色的取值。
7.根据权利要求6所述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法,其中,所述颜色取值取的是RGB颜色值。
8.一种阅读器,其特征在于,包括处理器、存储器、通信接口和通信总线,所述处理器和所述存储器与所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行权利要求1-7中任一项所述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法。
9.一种计算机存储介质,存储介质中存储有至少一可执行指令,其特征在于,所述可执行指令使处理器执行权利要求1-7中任一项所述的坐标位置径向渐变算法高效阅读OFD渲染文件的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111478386.3A CN114119807B (zh) | 2021-12-06 | 2021-12-06 | 坐标位置径向渐变算法高效阅读ofd渲染文件的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111478386.3A CN114119807B (zh) | 2021-12-06 | 2021-12-06 | 坐标位置径向渐变算法高效阅读ofd渲染文件的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114119807A CN114119807A (zh) | 2022-03-01 |
CN114119807B true CN114119807B (zh) | 2022-06-14 |
Family
ID=80367270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111478386.3A Active CN114119807B (zh) | 2021-12-06 | 2021-12-06 | 坐标位置径向渐变算法高效阅读ofd渲染文件的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114119807B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111897776A (zh) * | 2020-06-22 | 2020-11-06 | 百望股份有限公司 | 一种ofd文档的处理方法、电子设备及计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2009202377A1 (en) * | 2009-06-15 | 2011-01-06 | Canon Kabushiki Kaisha | Combining overlapping objects |
-
2021
- 2021-12-06 CN CN202111478386.3A patent/CN114119807B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111897776A (zh) * | 2020-06-22 | 2020-11-06 | 百望股份有限公司 | 一种ofd文档的处理方法、电子设备及计算机可读存储介质 |
Non-Patent Citations (3)
Title |
---|
Kyungwoon Cho ; Hyokyung Bahn.Design and Implementation of a Distributed Versioning File System for Cloud Rendering.《IEEE Access》.2021, * |
冯辉等.基于Qt渲染的OFD文档格式转换.《信息技术与标准化》.2018,(第04期), * |
李向宇.基于空间目标对接环的视觉测量算法设计与实现.《中国优秀硕士学位论文全文数据库信息科技辑》.2019, * |
Also Published As
Publication number | Publication date |
---|---|
CN114119807A (zh) | 2022-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3620981B1 (en) | Object detection method, device, apparatus and computer-readable storage medium | |
EP1453007B1 (en) | Color gradient paths | |
CN109816669A (zh) | 一种识别电力设备缺陷的改进Mask R-CNN图像实例分割方法 | |
US20200279415A1 (en) | Efficiently Computed Distance Fields | |
US10002448B2 (en) | Producing glyph distance fields | |
CN110689492B (zh) | 图像边缘平滑方法和装置 | |
US9317944B2 (en) | Alignment of start and end of dashed curves | |
CN106408626A (zh) | 图形处理系统 | |
AU2014277854A1 (en) | Emboldening of outline fonts | |
CN109377552B (zh) | 图像遮挡计算方法、装置、计算设备及存储介质 | |
CN114119807B (zh) | 坐标位置径向渐变算法高效阅读ofd渲染文件的方法 | |
CN111160491A (zh) | 一种卷积神经网络中的池化方法和池化模型 | |
CN114511862B (zh) | 表格识别方法、装置及电子设备 | |
CN113361371A (zh) | 道路提取方法、装置、设备以及存储介质 | |
CN113706705A (zh) | 用于高精地图的图像处理方法、装置、设备以及存储介质 | |
EP2372659B1 (en) | Method and system for rapidly vectorizing image by gradient meshes based on parameterization | |
JP5083551B2 (ja) | データ処理装置、外郭データ生成装置、データ処理プログラム、外郭データ生成プログラム | |
US20220058841A1 (en) | Color gradient capture from source image content | |
CN115063509B (zh) | 一种基于daa直线表示的光栅化方法、装置及存储介质 | |
CN113139975B (zh) | 一种基于道路特征的路面分割方法及装置 | |
CN117315406B (zh) | 一种样本图像处理方法、装置及设备 | |
CN116382307B (zh) | 基于未知连通区域质心的多机器人自主探索方法及系统 | |
EP4336444A1 (en) | Corner detection method and apparatus | |
AU2015268723B1 (en) | Method, system and apparatus for modifying a font character | |
CN116612295A (zh) | 特征图生成方法、目标检测模型的训练方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |