CN112035105A - 可视化区域的渲染方法、装置、设备和存储介质 - Google Patents
可视化区域的渲染方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN112035105A CN112035105A CN202010973155.9A CN202010973155A CN112035105A CN 112035105 A CN112035105 A CN 112035105A CN 202010973155 A CN202010973155 A CN 202010973155A CN 112035105 A CN112035105 A CN 112035105A
- Authority
- CN
- China
- Prior art keywords
- rendering
- data
- updated
- visualization
- visualization area
- 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.)
- Pending
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 426
- 238000012800 visualization Methods 0.000 title claims abstract description 184
- 238000000034 method Methods 0.000 title claims abstract description 91
- 230000000007 visual effect Effects 0.000 claims abstract description 32
- 230000008569 process Effects 0.000 claims description 49
- 238000012544 monitoring process Methods 0.000 claims description 20
- 238000006073 displacement reaction Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 7
- 230000001960 triggered effect Effects 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000013515 script Methods 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开涉及计算机技术领域,公开了一种可视化区域的渲染方法、装置、设备和存储介质。该方法包括:获取可视化区域对应的更新的渲染数据;基于所述更新的渲染数据,触发对所述可视化区域的渲染,并显示渲染后的所述可视化区域。通过上述技术方案,实现了应用程序中可视化区域的按需渲染,大幅降低CPU和GPU占用,减少应用程序卡顿和崩溃的现象。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种可视化区域的渲染方法、装置、设备和存储介质。
背景技术
现有的多数应用程序中均会涉及可视化区域,该可视化区域的显示是通过渲染实现的。
目前,对于可视化区域的渲染实现方式是实时渲染。例如,根据显示设备的刷新频率来设定可视化区域的渲染频率,然后按照该渲染频率进行可视化区域的渲染及显示。
但是,实时渲染的实现方式会存在冗余渲染过程,如渲染数据未变情况下的持续渲染,其会持续占用应用程序所在设备的CPU和GPU,造成资源浪费,甚至致使应用程序卡顿或崩溃。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种可视化区域的渲染方法、装置、设备和存储介质。
第一方面,本公开提供了一种可视化区域的渲染方法,包括:
获取可视化区域对应的更新的渲染数据;
基于所述更新的渲染数据,触发对所述可视化区域的渲染,并显示渲染后的所述可视化区域。
在一些实施例中,所述获取可视化区域对应的更新的渲染数据包括:
通过所述可视化区域中的容器对象和元素对象监测所述可视化区域对应的渲染数据是否更新,其中,所述可视化区域包括至少一个所述容器对象,每个所述容器对象关联至少一个所述元素对象;
若是,则通过所述容器对象对应的数据更新事件和/或所述元素对象对应的数据更新事件,确定所述更新的渲染数据。
在一些实施例中,所述通过所述可视化区域中的容器对象和元素对象监测所述可视化区域对应的渲染数据是否更新包括:
若所述容器对象和所述元素对象被初始化,则通过所述容器对象和所述元素对象监测到所述可视化区域对应的渲染数据更新;
相应地,所述通过所述容器对象对应的数据更新事件和/或所述元素对象对应的数据更新事件确定所述更新的渲染数据包括:
通过所述容器对象对应的数据更新事件和所述元素对象对应的数据更新事件,将相应的初始化数据确定为所述更新的渲染数据。
在一些实施例中,所述通过所述可视化区域中的容器对象和元素对象监测所述可视化区域对应的渲染数据是否更新包括:
若检测到所述元素对象的拖拽操作或缩放操作,则基于所述拖拽操作或所述缩放操作的位移数据,确定所述元素对象的操作后的位置和/或操作后的尺寸;
通过所述元素对象基于所述操作后的位置和/或所述操作后的尺寸,监测到所述可视化区域对应的渲染数据更新;
相应地,所述通过所述容器对象对应的数据更新事件和/或所述元素对象对应的数据更新事件确定所述更新的渲染数据包括:
通过所述元素对象对应的数据更新事件,将所述操作后的位置和/或所述操作后的尺寸确定为所述更新的渲染数据。
在一些实施例中,所述获取可视化区域对应的更新的渲染数据包括:
若检测到对所述可视化区域进行连续渲染的触发操作,则基于所述触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据,作为所述可视化区域对应的更新的渲染数据;
相应地,基于所述更新的渲染数据,触发对所述可视化区域的渲染包括:
针对每个所述单次渲染,按照相应单次渲染的渲染时间,基于相应单次渲染的渲染数据,触发对所述可视化区域的渲染。
在一些实施例中,在所述基于所述触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据之后,还包括:
针对每个所述单次渲染,按照相应单次渲染的渲染时间,将相应单次渲染的渲染数据传输至所述可视化区域中的容器对象和/或元素对象。
在一些实施例中,基于所述更新的渲染数据,触发对所述可视化区域的渲染包括:
基于所述更新的渲染数据,调用可视化区域渲染接口,触发对所述可视化区域的渲染。
第二方面,本公开还提供了一种可视化区域的渲染装置,该装置包括:
渲染数据获取模块,用于获取可视化区域对应的更新的渲染数据;
渲染模块,用于基于所述更新的渲染数据,触发对所述可视化区域的渲染,并显示渲染后的所述可视化区域。
在一些实施例中,渲染数据获取模块包括:
渲染数据更新判断子模块,用于通过所述可视化区域中的容器对象和元素对象监测所述可视化区域对应的渲染数据是否更新,其中,所述可视化区域包括至少一个所述容器对象,每个所述容器对象关联至少一个所述元素对象;
渲染数据获取子模块,用于若是,则通过所述容器对象对应的数据更新事件和/或所述元素对象对应的数据更新事件,确定所述更新的渲染数据。
在一些实施例中,渲染数据更新判断子模块具体用于:
若所述容器对象和所述元素对象被初始化,则通过所述容器对象和所述元素对象监测到所述可视化区域对应的渲染数据更新;
相应地,渲染数据获取子模块具体用于:
通过所述容器对象对应的数据更新事件和所述元素对象对应的数据更新事件,将相应的初始化数据确定为所述更新的渲染数据。
在一些实施例中,渲染数据更新判断子模块具体用于:
若检测到所述元素对象的拖拽操作或缩放操作,则基于所述拖拽操作或所述缩放操作的位移数据,确定所述元素对象的操作后的位置和/或操作后的尺寸;
通过所述元素对象基于所述操作后的位置和/或所述操作后的尺寸,监测到所述可视化区域对应的渲染数据更新;
相应地,渲染数据获取子模块具体用于:
通过所述元素对象对应的数据更新事件,将所述操作后的位置和/或所述操作后的尺寸确定为所述更新的渲染数据。
在一些实施例中,渲染数据获取模块具体用于:
若检测到对所述可视化区域进行连续渲染的触发操作,则基于所述触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据,作为所述可视化区域对应的更新的渲染数据;
相应地,渲染模块具体用于:
针对每个所述单次渲染,按照相应单次渲染的渲染时间,基于相应单次渲染的渲染数据,触发对所述可视化区域的渲染。
在一些实施例中,渲染模块还具体用于:
在所述基于所述触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据之后,针对每个所述单次渲染,按照相应单次渲染的渲染时间,将相应单次渲染的渲染数据传输至所述可视化区域中的容器对象和/或元素对象。
在一些实施例中,渲染模块具体用于:
基于所述更新的渲染数据,调用可视化区域渲染接口,触发对所述可视化区域的渲染。
第三方面,本公开提供了一种的电子设备,该电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的可视化区域的渲染方法中的任一实施例。
第四方面,本公开提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的可视化区域的渲染方法中的任一实施例。
本公开实施例提供的技术方案,通过获取可视化区域对应的更新的渲染数据;基于更新的渲染数据,触发对可视化区域的渲染,并显示渲染后的可视化区域。实现了只在可视化区域对应的渲染数据更新时,才触发执行可视化区域的渲染过程,避免了实时渲染过程中渲染数据无更新时的冗余渲染过程,很大程度上降低了对设备的CPU和GPU的占用,减少了应用程序的卡顿现象和崩溃现象,提高了应用程序和设备的运行流畅度,从而提升用户体验。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本公开实施例一提供的一种可视化区域的渲染方法的流程图;
图2是本公开实施例二提供的一种可视化区域的渲染方法的流程图;
图3是本公开实施例三提供的一种可视化区域的渲染装置的结构示意图;
图4是本公开实施例四提供的电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步的详细描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
实施例一
本实施例提供的可视化区域的渲染方法,可适用于应用程序中包含的可视化区域的渲染过程,也适用于应用程序开发过程中对于可视化区域的编码测试过程。该方法可以由可视化区域的渲染装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在能够运行包含该可视化区域的应用程序的电子设备中,例如手机、平板电脑、笔记本电脑或台式电脑等;也可以集成在能够运行图形化编程的开发平台的电子设备中,例如笔记本电脑、台式电脑或服务器等。参见图1,本实施例的方法具体包括:
S110、获取可视化区域对应的更新的渲染数据。
其中,渲染数据是渲染可视化区域所需的数据。
具体地,相关技术中可视化区域为实时渲染,其渲染频率较高,存在冗余渲染。本公开实施例中对可视化区域进行按需渲染,只有可视化区域对应的渲染数据有更新时,才会触发渲染流程,而渲染数据未变化时,不执行重复渲染。故可视化区域的渲染装置会监测可视化区域对应的渲染数据是否更新,如果监测到更新,就获取更新的渲染数据。
在一些实施例中,S110包括:
步骤A、通过可视化区域中的容器对象和元素对象监测可视化区域对应的渲染数据是否更新。
其中,可视化区域包括至少一个容器对象,每个容器对象关联至少一个元素对象。容器对象是用于容纳可视化元素(元素对象)的容器。元素对象是可视化区域中的可操作实体,例如可以是视图控件(可放置图片、动画等)、文本框控件、按钮控件(如点击类控件、选择类控件等)、提示控件(如弹窗等)。容器对象可以理解为可视化区域的背景,元素对象可以理解为可视化区域中的角色。
具体地,容器对象和元素对象是可视化区域中用于承载数据的载体,其均具有一定的数据结构,用于存储数据,如尺寸、文字素材、图片素材、声音素材等。故可视化区域中的数据如果变更,那么容器对象和/或元素对象对应的数据结构中的数据会变更。因此,可视化区域的渲染装置可以通过可视化区域中的容器对象和元素对象来监测该可视化区域对应的渲染数据是否更新。可视化区域中的渲染数据的变更,可以是通过初始化操作而触发,也可以是通过用户/开发人员对可视化区域中的容器对象和/或元素对象进行操作而触发,还可以是通过后台更新指令来触发。
步骤B、若是,则通过容器对象对应的数据更新事件和/或元素对象对应的数据更新事件,确定更新的渲染数据。
其中,数据更新事件(如change事件)是指监测到数据更新后触发的事件,其用于传输更新的渲染数据。
具体地,如果容器对象监测到渲染数据更新,那么容器对象会触发其对应的数据更新事件,以将更新的渲染数据传输至可视化区域的渲染装置。同样地,如果元素对象监测到渲染数据更新,那么元素对象会触发其对应的数据更新事件,以将更新的渲染数据传输至可视化区域的渲染装置。如果容器对象和元素对象均监测到渲染数据更新,那么会触发各自的数据更新事件。如此,可视化区域的渲染装置可获得更新的渲染数据。
这样设置的好处在于,通过可视化区域中的容器对象及其数据更新事件,以及元素对象及其数据更新事件,能够更加全面且准确地监测可视化区域的渲染数据的更新,既能避免冗余渲染过程,又能避免必需渲染过程的遗漏,提高按需渲染的准确性。
在一些实施例中,步骤A包括:若容器对象和元素对象被初始化,则通过容器对象和元素对象监测到可视化区域对应的渲染数据更新。相应地,步骤B包括:通过容器对象对应的数据更新事件和元素对象对应的数据更新事件,将相应的初始化数据确定为更新的渲染数据。具体地,针对于可视化区域被首次加载并渲染显示的场景,容器对象和元素对象首次加载后会被初始化,而初始化过程便是为容器对象和元素对象各自对应的数据结构赋予初始值,故容器对象和元素对象均能监测到渲染数据的更新。
在一些实施例中,步骤A包括:若检测到元素对象的拖拽操作或缩放操作,则基于拖拽操作或缩放操作的位移数据,确定元素对象的操作后的位置和/或操作后的尺寸;通过元素对象基于操作后的位置和/或操作后的尺寸,监测到可视化区域对应的渲染数据更新。相应地,步骤B包括:通过元素对象对应的数据更新事件,将操作后的位置和/或操作后的尺寸确定为更新的渲染数据。具体地,针对于应用程序的可视化区域显示过程中,持续监测渲染数据更新的场景,在可视化区域被初次显示之后,用户/开发人员可以对可视化区域中的元素对象进行操作,例如对其进行拖拽操作或缩放操作。可视化区域的渲染装置检测到上述操作后,便可基于操作产生的元素对象的位移数据来确定该元素对象在操作后的位置和/或尺寸,并将其更新存储至元素对象的数据结构中。那么,可视化区域的渲染装置通过元素对象便可监测到该渲染数据的更新,并通过元素对象对应的数据更新事件来获取到该更新的渲染数据。
S120、基于更新的渲染数据,触发对可视化区域的渲染,并显示渲染后的可视化区域。
具体地,可视化区域的渲染装置获得更新的渲染数据后,会对其进行进一步的处理,例如过滤掉对渲染过程无用的数据。然后,利用该处理后的渲染数据,触发可视化区域渲染的流程,以渲染可视化区域并显示。
在一些实施例中,基于更新的渲染数据,触发对可视化区域的渲染包括:基于更新的渲染数据,调用可视化区域渲染接口,触发对可视化区域的渲染。具体地,可视化区域的渲染装置触发渲染的过程可以实现为:在可视化区域的渲染装置中设置一个全局的数据更新事件,该全局的数据更新事件用于接收容器对象的数据更新事件和/或元素对象的数据更新事件传输的更新的渲染数据,并且在其回调函数中调用可视化区域渲染接口。这样,可视化区域的渲染装置的全局的数据更新事件,在其接收更新的渲染数据的过程中,会以处理后的渲染数据为输入参数,调用可视化区域渲染接口,触发该渲染接口对应的可视化区域渲染功能的运行,实现对可视化区域的渲染。
本实施例的技术方案,通过获取可视化区域对应的更新的渲染数据;基于更新的渲染数据,触发对可视化区域的渲染,并显示渲染后的可视化区域。实现了只在可视化区域对应的渲染数据更新时,才触发执行可视化区域的渲染过程,避免了实时渲染过程中渲染数据无更新时的冗余渲染过程,很大程度上降低了对设备的CPU和GPU的占用,减少了应用程序的卡顿现象和崩溃现象,提高了应用程序和设备的运行流畅度,从而提升用户体验。
实施例二
本实施例在上述实施例一的基础上,对“获取可视化区域对应的更新的渲染数据”进行了进一步优化。在此基础上,还可以进一步增加连续渲染过程中的渲染数据的传输过程。其中与上述各实施例相同或相应的术语的解释在此不再赘述。参见图2,本实施例提供的可视化区域的渲染方法包括:
S210、若可视化区域中的容器对象和元素对象被初始化,则通过容器对象和元素对象监测到可视化区域对应的渲染数据更新。
S220、通过容器对象对应的数据更新事件和元素对象对应的数据更新事件,将相应的初始化数据确定为更新的渲染数据。
S230、若检测到元素对象的拖拽操作或缩放操作,则基于拖拽操作或缩放操作的位移数据,确定元素对象的操作后的位置和/或操作后的尺寸。
S240、通过元素对象基于操作后的位置和/或操作后的尺寸,监测到可视化区域对应的渲染数据更新。
S250、通过元素对象对应的数据更新事件,将操作后的位置和/或操作后的尺寸确定为更新的渲染数据。
S260、若检测到对可视化区域进行连续渲染的触发操作,则基于触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据,作为可视化区域对应的更新的渲染数据。
具体地,可视化区域的渲染装置除了可以针对用户/开发人员对元素对象的操作而触发单次渲染之外,
可视化区域中的渲染过程除了初始化显示和用户/开发人员对元素对象的操作而触发的单次渲染过程之外,还包括某一元素对象的连续渲染过程。例如,放大、缩小或旋转某一元素对象(如图片)的动画演示过程的渲染及显示,属于连续渲染过程。连续渲染过程的实现可以是在可视化区域中布设相应的触发控,同时在该触发控件的后台设置实现连续渲染的代码块或脚本。该触发控件可以是点击类按钮控件,例如放大按钮、缩小按钮或旋转按钮等。当用户/开发人员点击连续渲染对应的触发控件后,可视化区域的渲染装置能够检测到该触发操作,然后触发执行对应的代码块或脚本,该代码块或脚本中包含连续渲染过程所需的数据。可视化区域的渲染装置中的全局的数据更新事件能够获取代码块或脚本中的数据,并解析该数据获得连续渲染过程对应的多个单次渲染过程的数据,如每个单次渲染的渲染时间和渲染数据,至此,可视化区域的渲染装置获得了可视化区域对应的更新的渲染数据。
S270、针对每个单次渲染,按照相应单次渲染的渲染时间,将相应单次渲染的渲染数据传输至可视化区域中的容器对象和/或元素对象。
具体地,可视化区域的渲染装置在获得更新的渲染数据后,除了进行可视化区域的渲染之外,还需要将该更新的渲染数据传输至可视化区域中对应的容器元素和对象元素。例如,可视化区域的渲染装置通过其中的全局的数据更新事件,在每个单次渲染的渲染时间到达时,将该单次渲染的渲染数据传输至相应的容器元素和对象元素,以保证可视化区域对应的存储数据和显示数据的一致性。
S280、基于更新的渲染数据,触发对可视化区域的渲染,并显示渲染后的可视化区域。
示例性地,针对于S260的场景,S280实现为:针对每个单次渲染,按照相应单次渲染的渲染时间,基于相应单次渲染的渲染数据,触发对可视化区域的渲染。
具体地,可视化区域的渲染装置按照单次渲染的渲染时间来执行相应的单次渲染过程。针对每个单次渲染过程,可视化区域的渲染装置需要在该单次渲染的渲染时间到达时,基于该单次渲染的渲染数据来触发对可视化区域的渲染,并在渲染完成后显示。这样,通过连续多个单次渲染过程的渲染及显示,来实现连续渲染。
需要说明的是,此处不限定S270和S280执行时的执行顺序,只需确保S270在S260之后执行即可。
本实施例的技术方案,通过若检测到对可视化区域进行连续渲染的触发操作,则基于触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据,作为可视化区域对应的更新的渲染数据;针对每个单次渲染,按照相应单次渲染的渲染时间,基于相应单次渲染的渲染数据,触发对可视化区域的渲染。实现了可视化区域的连续渲染过程,在确保无冗余渲染的基础上,完善了可视化区域按需渲染的渲染类型和渲染流程,进一步提高可视化区域的渲染准确性和渲染效率。通过针对每个单次渲染,按照相应单次渲染的渲染时间,将相应单次渲染的渲染数据传输至可视化区域中的容器对象和/或元素对象。实现了将连续渲染过程中的渲染数据传输至可视化区域中的容器元素和对象元素,保证了可视化区域对应的存储数据和显示数据的一致性。
实施例三
本实施例提供一种可视化区域的渲染装置,参见图3,该装置具体包括:
渲染数据获取模块310,用于获取可视化区域对应的更新的渲染数据;
渲染模块320,用于基于更新的渲染数据,触发对可视化区域的渲染,并显示渲染后的可视化区域。
在一些实施例中,渲染数据获取模块310包括:
渲染数据更新判断子模块,用于通过可视化区域中的容器对象和元素对象监测可视化区域对应的渲染数据是否更新,其中,可视化区域包括至少一个容器对象,每个容器对象关联至少一个元素对象;
渲染数据获取子模块,用于若是,则通过容器对象对应的数据更新事件和/或元素对象对应的数据更新事件,确定更新的渲染数据。
在一些实施例中,渲染数据更新判断子模块具体用于:
若容器对象和元素对象被初始化,则通过容器对象和元素对象监测到可视化区域对应的渲染数据更新;
相应地,渲染数据获取子模块具体用于:
通过容器对象对应的数据更新事件和元素对象对应的数据更新事件,将相应的初始化数据确定为更新的渲染数据。
在一些实施例中,渲染数据更新判断子模块具体用于:
若检测到元素对象的拖拽操作或缩放操作,则基于拖拽操作或缩放操作的位移数据,确定元素对象的操作后的位置和/或操作后的尺寸;
通过元素对象基于操作后的位置和/或操作后的尺寸,监测到可视化区域对应的渲染数据更新;
相应地,渲染数据获取子模块具体用于:
通过元素对象对应的数据更新事件,将操作后的位置和/或操作后的尺寸确定为更新的渲染数据。
在一些实施例中,渲染数据获取模块310具体用于:
若检测到对可视化区域进行连续渲染的触发操作,则基于触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据,作为可视化区域对应的更新的渲染数据;
相应地,渲染模块320具体用于:
针对每个单次渲染,按照相应单次渲染的渲染时间,基于相应单次渲染的渲染数据,触发对可视化区域的渲染。
在一些实施例中,渲染模块320还具体用于:
在基于触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据之后,针对每个单次渲染,按照相应单次渲染的渲染时间,将相应单次渲染的渲染数据传输至可视化区域中的容器对象和/或元素对象。
在一些实施例中,渲染模块320具体用于:
基于更新的渲染数据,调用可视化区域渲染接口,触发对可视化区域的渲染。
通过本公开实施例三的一种可视化区域的渲染装置,实现了只在可视化区域对应的渲染数据更新时,才触发执行可视化区域的渲染过程,避免了实时渲染过程中渲染数据无更新时的冗余渲染过程,很大程度上降低了对设备的CPU和GPU的占用,减少了应用程序的卡顿现象和崩溃现象,提高了应用程序和设备的运行流畅度,从而提升用户体验。
本公开实施例所提供的可视化区域的渲染装置可执行本公开任意实施例所提供的可视化区域的渲染方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述可视化区域的渲染装置的实施例中,所包括的各个模块和子模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本公开的保护范围。
实施例四
参见图4,本实施例提供了一种电子设备400,其包括:一个或多个处理器420;存储装置410,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器420执行,使得一个或多个处理器420实现本公开实施例所提供的可视化区域的渲染方法,包括:
获取可视化区域对应的更新的渲染数据;
基于更新的渲染数据,触发对可视化区域的渲染,并显示渲染后的可视化区域。
当然,本领域技术人员可以理解,处理器420还可以实现本公开任意实施例所提供的可视化区域的渲染方法的技术方案。
图4显示的电子设备400仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图4所示,电子设备400以通用计算设备的形式表现。电子设备400的组件可以包括但不限于:一个或者多个处理器420,存储装置410,连接不同系统组件(包括存储装置410和处理器420)的总线450。
总线450表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
电子设备400典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备400访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储装置410可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)411和/或高速缓存存储器412。电子设备400可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统413可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线450相连。存储装置410可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开各实施例的功能。
具有一组(至少一个)程序模块415的程序/实用工具414,可以存储在例如存储装置410中,这样的程序模块415包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块415通常执行本公开所描述的任意实施例中的功能和/或方法。
电子设备400也可以与一个或多个外部设备460(例如键盘、指向设备、显示器470等)通信,还可与一个或者多个使得用户能与该电子设备400交互的设备通信,和/或与使得该电子设备400能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出接口(I/O接口)430进行。并且,电子设备400还可以通过网络适配器440与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图4所示,网络适配器440通过总线450与电子设备400的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备400使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
实施例五
本实施例提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种可视化区域的渲染方法,该方法包括:
获取可视化区域对应的更新的渲染数据;
基于更新的渲染数据,触发对可视化区域的渲染,并显示渲染后的可视化区域。
当然,本公开实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本公开任意实施例所提供的可视化区域的渲染方法中的相关操作。
本公开实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
需要说明的是,本公开所用术语仅为了描述特定实施例,而非限制本申请范围。如本公开说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。术语“和/或”包括一个或多个相关所列条目的任何一个和所有组合。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种可视化区域的渲染方法,其特征在于,包括:
获取可视化区域对应的更新的渲染数据;
基于所述更新的渲染数据,触发对所述可视化区域的渲染,并显示渲染后的所述可视化区域。
2.根据权利要求1所述的方法,其特征在于,所述获取可视化区域对应的更新的渲染数据包括:
通过所述可视化区域中的容器对象和元素对象监测所述可视化区域对应的渲染数据是否更新,其中,所述可视化区域包括至少一个所述容器对象,每个所述容器对象关联至少一个所述元素对象;
若是,则通过所述容器对象对应的数据更新事件和/或所述元素对象对应的数据更新事件,确定所述更新的渲染数据。
3.根据权利要求2所述的方法,其特征在于,所述通过所述可视化区域中的容器对象和元素对象监测所述可视化区域对应的渲染数据是否更新包括:
若所述容器对象和所述元素对象被初始化,则通过所述容器对象和所述元素对象监测到所述可视化区域对应的渲染数据更新;
相应地,所述通过所述容器对象对应的数据更新事件和/或所述元素对象对应的数据更新事件确定所述更新的渲染数据包括:
通过所述容器对象对应的数据更新事件和所述元素对象对应的数据更新事件,将相应的初始化数据确定为所述更新的渲染数据。
4.根据权利要求2所述的方法,其特征在于,所述通过所述可视化区域中的容器对象和元素对象监测所述可视化区域对应的渲染数据是否更新包括:
若检测到所述元素对象的拖拽操作或缩放操作,则基于所述拖拽操作或所述缩放操作的位移数据,确定所述元素对象的操作后的位置和/或操作后的尺寸;
通过所述元素对象基于所述操作后的位置和/或所述操作后的尺寸,监测到所述可视化区域对应的渲染数据更新;
相应地,所述通过所述容器对象对应的数据更新事件和/或所述元素对象对应的数据更新事件确定所述更新的渲染数据包括:
通过所述元素对象对应的数据更新事件,将所述操作后的位置和/或所述操作后的尺寸确定为所述更新的渲染数据。
5.根据权利要求1所述的方法,其特征在于,所述获取可视化区域对应的更新的渲染数据包括:
若检测到对所述可视化区域进行连续渲染的触发操作,则基于所述触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据,作为所述可视化区域对应的更新的渲染数据;
相应地,基于所述更新的渲染数据,触发对所述可视化区域的渲染包括:
针对每个所述单次渲染,按照相应单次渲染的渲染时间,基于相应单次渲染的渲染数据,触发对所述可视化区域的渲染。
6.根据权利要求5所述的方法,其特征在于,在所述基于所述触发操作对应的数据,确定连续渲染过程中单次渲染的渲染时间和渲染数据之后,还包括:
针对每个所述单次渲染,按照相应单次渲染的渲染时间,将相应单次渲染的渲染数据传输至所述可视化区域中的容器对象和/或元素对象。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述基于所述更新的渲染数据,触发对所述可视化区域的渲染包括:
基于所述更新的渲染数据,调用可视化区域渲染接口,触发对所述可视化区域的渲染。
8.一种可视化区域的渲染装置,其特征在于,包括:
渲染数据获取模块,用于获取可视化区域对应的更新的渲染数据;
渲染模块,用于基于所述更新的渲染数据,触发对所述可视化区域的渲染,并显示渲染后的所述可视化区域。
9.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的可视化区域的渲染方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的可视化区域的渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010973155.9A CN112035105A (zh) | 2020-09-16 | 2020-09-16 | 可视化区域的渲染方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010973155.9A CN112035105A (zh) | 2020-09-16 | 2020-09-16 | 可视化区域的渲染方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112035105A true CN112035105A (zh) | 2020-12-04 |
Family
ID=73590028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010973155.9A Pending CN112035105A (zh) | 2020-09-16 | 2020-09-16 | 可视化区域的渲染方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112035105A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102637198A (zh) * | 2012-02-28 | 2012-08-15 | 优视科技有限公司 | 网页内容显示的实现方法、装置、浏览器及移动终端 |
CN102682461A (zh) * | 2012-04-28 | 2012-09-19 | Tcl集团股份有限公司 | 一种动画渲染方法、系统及动画播放器 |
CN107301220A (zh) * | 2017-06-16 | 2017-10-27 | 百度在线网络技术(北京)有限公司 | 数据驱动视图的方法、装置、设备及存储介质 |
CN109508221A (zh) * | 2018-11-16 | 2019-03-22 | 苏州好玩友网络科技有限公司 | 一种块组件的渲染方法、装置、设备及存储介质 |
CN109683880A (zh) * | 2018-12-25 | 2019-04-26 | 百度在线网络技术(北京)有限公司 | 网页交互方法、装置、设备和存储介质 |
CN110047030A (zh) * | 2019-04-10 | 2019-07-23 | 网易(杭州)网络有限公司 | 周期性特效生成方法及装置、电子设备、存储介质 |
CN110110174A (zh) * | 2017-12-15 | 2019-08-09 | 阿里巴巴集团控股有限公司 | 数据可视化页面的生成、监听及展示方法、浏览器及服务器 |
CN111143018A (zh) * | 2019-12-31 | 2020-05-12 | 北京旷视机器人技术有限公司 | 一种前端图像渲染方法、装置和电子设备 |
CN111277893A (zh) * | 2020-02-12 | 2020-06-12 | 北京字节跳动网络技术有限公司 | 视频处理方法、装置、可读介质及电子设备 |
CN111338628A (zh) * | 2020-03-10 | 2020-06-26 | 中国联合网络通信集团有限公司 | 组件渲染方法及设备 |
-
2020
- 2020-09-16 CN CN202010973155.9A patent/CN112035105A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102637198A (zh) * | 2012-02-28 | 2012-08-15 | 优视科技有限公司 | 网页内容显示的实现方法、装置、浏览器及移动终端 |
CN102682461A (zh) * | 2012-04-28 | 2012-09-19 | Tcl集团股份有限公司 | 一种动画渲染方法、系统及动画播放器 |
CN107301220A (zh) * | 2017-06-16 | 2017-10-27 | 百度在线网络技术(北京)有限公司 | 数据驱动视图的方法、装置、设备及存储介质 |
CN110110174A (zh) * | 2017-12-15 | 2019-08-09 | 阿里巴巴集团控股有限公司 | 数据可视化页面的生成、监听及展示方法、浏览器及服务器 |
CN109508221A (zh) * | 2018-11-16 | 2019-03-22 | 苏州好玩友网络科技有限公司 | 一种块组件的渲染方法、装置、设备及存储介质 |
CN109683880A (zh) * | 2018-12-25 | 2019-04-26 | 百度在线网络技术(北京)有限公司 | 网页交互方法、装置、设备和存储介质 |
CN110047030A (zh) * | 2019-04-10 | 2019-07-23 | 网易(杭州)网络有限公司 | 周期性特效生成方法及装置、电子设备、存储介质 |
CN111143018A (zh) * | 2019-12-31 | 2020-05-12 | 北京旷视机器人技术有限公司 | 一种前端图像渲染方法、装置和电子设备 |
CN111277893A (zh) * | 2020-02-12 | 2020-06-12 | 北京字节跳动网络技术有限公司 | 视频处理方法、装置、可读介质及电子设备 |
CN111338628A (zh) * | 2020-03-10 | 2020-06-26 | 中国联合网络通信集团有限公司 | 组件渲染方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110489101B (zh) | 接口模拟方法、系统、介质和电子设备 | |
US10394437B2 (en) | Custom widgets based on graphical user interfaces of applications | |
CN107515759B (zh) | 截屏方法、装置、电子设备及可读存储介质 | |
US9772861B2 (en) | Accessing operating system elements via a tag cloud | |
CN107341016B (zh) | 分屏机制下的焦点态实现方法、装置、终端及存储介质 | |
CN113835992B (zh) | 内存泄露的处理方法、装置、电子设备及计算机存储介质 | |
US10768947B2 (en) | Method for interface refresh synchronization,terminal device, and non-transitory computer-readable storage medium | |
US20150033134A1 (en) | Visually Depicting Cloud Resource Utilization During Execution Of An Application | |
CN111813465B (zh) | 一种信息获取方法、装置、介质和设备 | |
US10983625B2 (en) | Systems and methods for measurement of unsupported user interface actions | |
CN107301220B (zh) | 数据驱动视图的方法、装置、设备及存储介质 | |
CN111783010B (zh) | 网页空白页面监测方法、装置、终端及存储介质 | |
US20230276079A1 (en) | Live streaming room page jump method and apparatus, live streaming room page return method and apparatus, and electronic device | |
CN113157439B (zh) | 一种资源统计方法、装置及终端 | |
CN111177634A (zh) | 支持多语言的文案内容加载方法、装置、设备、及介质 | |
CN110717126A (zh) | 页面浏览方法、装置、电子设备及计算机可读存储介质 | |
CN116048371A (zh) | 应用程序中页面组件切换方法、装置、设备、介质及产品 | |
CN112035105A (zh) | 可视化区域的渲染方法、装置、设备和存储介质 | |
CN114090817A (zh) | 一种人脸特征数据库动态构建方法、装置及存储介质 | |
CN114647411A (zh) | 编程界面加载方法、装置、电子设备及存储介质 | |
CN112684965A (zh) | 动态壁纸状态变更方法、装置、电子设备及存储介质 | |
CN114979749B (zh) | 图形界面绘制方法、电子设备及可读存储介质 | |
CN114510309B (zh) | 动画效果的设置方法、装置、设备及介质 | |
US9733783B1 (en) | Controlling a user interface | |
CN113835791B (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 |