CN118071893A - 一种图形界面处理方法以及装置 - Google Patents
一种图形界面处理方法以及装置 Download PDFInfo
- Publication number
- CN118071893A CN118071893A CN202211415388.2A CN202211415388A CN118071893A CN 118071893 A CN118071893 A CN 118071893A CN 202211415388 A CN202211415388 A CN 202211415388A CN 118071893 A CN118071893 A CN 118071893A
- Authority
- CN
- China
- Prior art keywords
- particles
- animation
- electronic device
- simulation calculation
- particle motion
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 239000002245 particle Substances 0.000 claims abstract description 539
- 230000033001 locomotion Effects 0.000 claims abstract description 262
- 239000012530 fluid Substances 0.000 claims abstract description 192
- 238000000034 method Methods 0.000 claims abstract description 101
- 230000008859 change Effects 0.000 claims abstract description 85
- 230000004044 response Effects 0.000 claims abstract description 84
- 238000004364 calculation method Methods 0.000 claims description 151
- 238000004088 simulation Methods 0.000 claims description 151
- 238000012545 processing Methods 0.000 claims description 145
- 238000013507 mapping Methods 0.000 claims description 60
- 230000008569 process Effects 0.000 claims description 47
- 230000015654 memory Effects 0.000 claims description 37
- 230000006854 communication Effects 0.000 claims description 29
- 238000004891 communication Methods 0.000 claims description 28
- 230000001133 acceleration Effects 0.000 claims description 16
- 206010034719 Personality change Diseases 0.000 claims description 9
- 238000013016 damping Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 230000004424 eye movement Effects 0.000 claims description 7
- 239000011521 glass Substances 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 21
- 230000002452 interceptive effect Effects 0.000 abstract description 6
- 239000000463 material Substances 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 58
- 230000000875 corresponding effect Effects 0.000 description 31
- 230000006870 function Effects 0.000 description 21
- 239000010410 layer Substances 0.000 description 18
- 238000007726 management method Methods 0.000 description 14
- 238000010295 mobile communication Methods 0.000 description 12
- 238000005266 casting Methods 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 210000001508 eye Anatomy 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 210000005252 bulbus oculi Anatomy 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请公开一种图形界面处理方法,该方法应用于手机等电子设备,该方法包括:获取第一操作后,响应于第一操作生成用户接口UI动画,UI动画在显示界面播放。UI动画包括多帧图像,多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到,在播放多帧图像时,多帧图像中多个像素点的像素值的变化形成响应于第一操作的流体粒子运动。实时生成UI动画,无需提前制作动画素材,降低了工作量。由于流体粒子运动的动画是一种响应于用户操作的实时动画,因此可提升用户的交互操作体验。该UI动画的具有效果华丽的特点,显著增加动画的趣味性,提升使用该方法的UI产品的用户粘性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种图形界面处理方法以及装置。
背景技术
目前,手机等电子设备已成为人们日常生活及工作中使用频率较高的电子设备。例如,用户可使用手机浏览新闻资讯,观看视频,进行网上购物等。
而随着电子设备性能的提升以及用户接口(user interface,UI)动画技术的不断发展,完全静态的界面设计已经满足不了用户的需求了。目前为了实现UI动画,通常采用两种方式:一种是序列帧动画(sequence frame),另外一种是关键帧动画(keyframeanimation)。
然而不管是序列帧动画还是关键帧动画,动画内容都是预先设置好的。只能根据用户操作控制UI动画播放的顺序和进度。并且,只能按固定的样式反馈用户的不同操作。因此,需要一种新的图形界面处理方法,以改善用户的交互体验。
发明内容
本申请提供一种图形界面处理方法,还提供了相关装置、设备、计算机可读存储介质以及计算机程序产品。通过本申请提供的方案无需提前制作动画素材,得到响应于用户操作的流体粒子运动的实时动画,提升用户的交互操作体验。
为达到上述目的,本申请实施例提供如下技术方案:
第一方面,本申请的实施例提供了一种图形界面处理方法,包括:首先,电子设备获取用户的第一操作,所述第一操作为针对电子设备的显示屏的操作。例如,用户滑动电子设备的显示屏,该滑动操作作为第一操作。然后,响应于所述第一操作,电子设备生成用户接口UI动画,所述UI动画包括多帧图像;所述多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到,所述流体粒子运动模型包括模拟流体的粒子运动的物理模型。
关于物理模型(physical model),在研究和解决物理学问题时,舍弃次要因素,抓住主要因素,建立的概念模型称为物理模型。该方法称为构建物理模型,或称为构建模型。物理模型也可简称为模型,但在这种情况下与概念模型通常不同,是可以模拟物理对象的较小或更大的复制品。
需要说明的是,本申请实施例中的像素值包括但不限于:颜色值、亮度值,或者灰度值等。
本申请实施例中,电子设备获取第一操作后,响应于第一操作生成UI动画,UI动画在显示界面播放。UI动画包括多帧图像,多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到。该UI动画包括的多帧图像中多个像素点的像素值的变化为响应于第一操作的流体粒子运动,因此该UI动画的具有效果华丽的特点,显著增加动画的趣味性,提升使用该方法的UI产品的用户粘性。
在第一方面的一种可能的实施方式中,该方法还包括:在电子设备的显示界面中播放该UI动画,其中,在播放所述多帧图像时,所述多帧图像中多个像素点的像素值的变化形成响应于所述第一操作的流体粒子运动。
本申请实施例中,电子设备获取第一操作,实时生成UI动画,无需提前制作动画素材,降低了工作量。由于流体粒子运动的动画是一种响应于用户操作的实时动画,因此可提升用户的交互操作体验。
在第一方面的一种可能的实施方式中,该方法还包括:输出目标视频文件,所述目标视频文件包括所述UI动画。在另一种可能的实现方式中,电子设备响应于第一操作生成UI动画之后,将UI动画以视频文件的形式保存并输出,增加了方案的实现灵活性。
在第一方面的一种可能的实施方式中,所述流体粒子运动模型用于模拟多个粒子响应于所述第一操作发生流体粒子运动。本申请实施例中,将流体粒子运动模型应用于电子设备的UI动画生成过程。该流体粒子运动模型用于模拟多个粒子响应于第一操作发生流体粒子运动,多个粒子与UI动画包括的多帧图像中的像素点具有关联关系。通过应用该流体粒子运动模型,实现UI动画包括的多帧图像中多个像素点的变化形成流体粒子运动。提升该UI动画的显示效果。
在第一方面的一种可能的实施方式中,响应于所述第一操作,生成所述UI动画,包括:响应于所述第一操作,对所述流体粒子运动模型进行仿真计算处理,输出仿真计算结果,所述仿真计算结果包括所述多个粒子的位置信息,所述仿真计算结果指示所述流体粒子运动模型模拟所述多个粒子响应于所述第一操作发生流体粒子运动的运动结果;根据所述仿真计算结果,生成所述UI动画。响应于第一操作,对流体粒子运动模型进行仿真计算处理,输出的仿真计算结果包括多个粒子的位置信息。由于粒子与像素点具有关联关系,因此,根据该多个粒子的位置信息可得到与该粒子关联的像素点的像素值在显示界面对应的位置信息。因为仿真计算处理中,流体粒子运动模型模拟多个粒子响应于第一操作发生运动,所以根据仿真计算处理输出的多个仿真计算结果生成的多帧图像,该多帧图像中像素点的像素值的变化形成响应于第一操作的流体粒子运动。通过上述方法,UI动画包括的多帧图像在用户视角中具有流体粒子运动的动画效果。提升了UI动画的显示效果。
在第一方面的一种可能的实施方式中,根据所述仿真计算结果,生成所述UI动画,包括:根据所述仿真计算结果,生成所述多帧图像,其中,所述多帧图像分别对应所述仿真计算处理的过程中多个时刻输出的所述仿真计算结果;根据所述多帧图像,生成所述UI动画,其中,所述UI动画的帧率与所述仿真计算处理的过程中输出所述仿真计算结果的周期具有关联关系。
一种可能的实现方式中,UI动画的帧率是仿真计算处理的过程中输出所述仿真计算结果的周期的倒数。
本申请实施例中,UI动画包括的多帧图像分别对应仿真计算处理的过程中多个时刻输出的仿真计算结果,UI动画实时反映仿真计算结果。图形处理装置在获取第一操作的过程中,基于流体粒子运动模型实时进行仿真计算处理,并输出仿真计算结果。有效提升UI动画的跟手性,提升UI动画的显示效果。进一步改善用户的操作体验。
在第一方面的一种可能的实施方式中,响应于所述第一操作,对所述流体粒子运动模型进行所述仿真计算处理,输出所述仿真计算结果,包括:响应于所述第一操作,从所述流体粒子运动模型模拟的多个粒子中确定第一集合,所述第一集合包括的至少一个粒子,所述流体粒子运动模型模拟所述第一集合包括的粒子响应于所述第一操作发生运动;响应于所述第一操作,确定所述第一集合中粒子的受力情况和运动速度;根据所述第一集合中所述粒子的受力情况和运动速度,更新所述流体粒子运动模型模拟的所述多个粒子的位置信息,输出所述仿真计算结果。
本申请实施例中,图形处理装置在使用流体粒子运动模型模拟多个粒子运动的过程中,充分考虑粒子的多项参数对粒子的受力情况的影响以及粒子的运动速度,提升仿真计算结果中粒子的位置信息的准确性,提升UI动画的显示效果。
在第一方面的一种可能的实施方式中,响应于所述第一操作,从所述流体粒子运动模型模拟的所述多个粒子中确定所述第一集合,包括:根据所述第一操作,确定第一区域,所述第一区域为所述第一操作对应于所述电子设备的所述显示界面的区域;根据所述第一区域,确定第一像素点集合,所述第一像素点集合包括的像素点为所述第一区域中的像素点;根据所述第一像素点集合,从所述流体粒子运动模型模拟的所述多个粒子中确定所述第一集合,所述第一集合包括的粒子与所述第一像素点集合包括的像素点具有对应关系。
本申请实施例中,图形处理装置选取第一操作对应的第一区域,然后从第一区域中选取多个像素点作为第一像素点集合。然后,将流体粒子运动模型模拟的多个粒子集合中,选取第一像素点集合对应的多个粒子,该第一像素点集合对应的多个粒子作为第一集合。图形处理装置响应于第一操作,使用流体粒子运动模型模拟多个粒子进行流体粒子运动的过程中,确定第一集合中各个粒子的运动速度和受力情况,其中,所述第一集合中任意两个粒子的距离小于第一阈值时相互吸引,所述第一集合中任意两个粒子的距离大于所述第一阈值时相互排斥。然后,根据第一集合中各个粒子的运动速度和受力情况,模拟粒子的运动轨迹,具体的,根据所述粒子的受力情况和所述粒子的质量,计算所述粒子的加速度;根据所述粒子的加速度和所述粒子的初始速度,计算所述粒子的运动速度。所述第一集合中粒子的初始速度与所述第一操作的移动速度相关。例如,所述第一操作为所述触摸操作时,所述第一集合中粒子的初始速度与所述滑动操作的移动速度具有关联关系。又例如,所述第一集合中粒子的初始速度与所述点击操作的点击时长具有关联关系。通过上述方法,充分考虑粒子的多项参数对粒子的受力情况的影响以及粒子的运动速度,提升仿真计算结果中粒子的位置信息的准确性,提升UI动画的显示效果。
在第一方面的一种可能的实施方式中,在对流体粒子运动模型进行仿真计算处理之前,初始化所述多个粒子中每个粒子的属性,所述粒子的属性包括以下一项或多项信息:所述粒子的位置信息、所述粒子的质量、所述粒子的速度、所述粒子的加速度、所述粒子的阻尼系数,所述粒子的亮度值,所述粒子的灰度值,或者所述粒子的颜色值。在对流体粒子运动模型进行仿真计算处理的过程中,充分考虑粒子的各项属性信息,提升仿真计算结果的准确度,提升基于该仿真计算结果生成的UI动画的动画效果。
在第一方面的一种可能的实施方式中,所述电子设备的所述显示界面包括以下任意一项或多项:所述电子设备的桌面,所述电子设备的屏幕保护界面,所述电子设备的图片编辑界面,所述电子设备的视频编辑界面,或者,所述电子设备的菜单界面。在本申请实施方式中,发生流体粒子运动的显示界面存在多种可能的方案,因此,本申请提出的图形界面处理方法可以适用于多种不同的场景,提升了方案的实现灵活性。
在第一方面的一种可能的实施方式中,所述第一操作为对所述电子设备的显示屏的触摸操作。
在第一方面的一种可能的实施方式中,所述触摸操作包括以下一项或多项:点击操作,或者,滑动操作。
在第一方面的一种可能的实施方式中,获取所述第一操作,包括:获取姿态变化信息;根据所述姿态变化信息,确定所述第一操作。
在第一方面的一种可能的实施方式中,所述姿态变化信息,包括用户的姿态变化信息;所述用户的姿态变化信息,包括以下任意一项或多项:手势运动信息,眼球运动信息,躯干运动信息,或者,腿部运动信息。
在第一方面的一种可能的实施方式中,所述姿态变化信息,包括所述电子设备的姿态变化信息。
在本申请实施方式中,第一操作包括多种可能的操作方式,响应于用户对电子设备的多种操作,电子设备可生成流体粒子运动的动画。提升了方案的实现灵活性。
在第一方面的一种可能的实施方式中,该方法还包括:向云终端发送所述UI动画,所述云终端用于在虚拟桌面中播放所述UI动画。
具体的,云计算(Cloud Computing)作为分布式计算、并行计算、网络存储、虚拟化等传统计算机和网络技术发展融合的产物,逐渐被越来越多的领域所使用。采用云计算技术,传统个人计算机被替换为云终端。云终端仅用于显示信息和接收客户输入,计算和存储能力集中到后端的云服务器,由后端的云服务器为云终端提供一个虚拟桌面,该虚拟桌面也可以称为云桌面。云桌面是云计算应用于办公领域的服务模式之一,云终端可以通过访问云服务器提供的云桌面,然后通过云桌面登录至业务系统进行办公。
基于云计算技术的云手机(Cloud Phone)作为一种新型服务,对物理手机起到非常好的延展和补充作用,并开始在云手机游戏、云手机直播、移动办公等场景崭露头角。为了便于理解,云手机的场景,包括但不限于:(1)云手机游戏,需将手机屏幕画面(或游戏画面)进行视频编码后,通过网络传输到物理手机;(2)直播场景下,需将接收到的物理手机的摄像头画面数据进行视频解码并显示在云手机,当云手机上启动直播应用时,云手机将该摄像头画面数据进行视频编码并发送到直播平台;(3)移动办公场景,政府、金融等信息安全诉求较高行业员工通过即时通讯应用进行视频通话时,云手机上的摄像头画面需进行视频编码,在视频会议共享播放视频时,需进行视频解码。
在本申请实施例中,本申请实施例提出的图形界面处理方法可应用于云终端场景,具体如下,云终端场景,包括:服务器和云终端。具体处理流程如下:服务器通过电子设备获取第一操作。服务器响应于第一操作,生成UI动画。服务器向云终端发送UI动画,该云终端的虚拟桌面用于播放该UI动画。一种可能的示例中,云终端的虚拟桌面通过电子设备的显示屏向用户展示。通过上述方法,本方案还可以应用在云终端场景下,有效提升方案的实现灵活性。提升云终端场景下,用户的使用体验。
第二方面,本申请实施例提出一种图形处理装置,包括:
收发模块,用于获取第一操作,所述第一操作为针对电子设备的显示屏的操作;
处理模块,用于响应于所述第一操作,生成用户接口UI动画,所述UI动画包括多帧图像;所述多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到,所述流体粒子运动模型包括模拟流体的粒子运动的物理模型。
在一种可能的实施方式中,该图形处理装置,还包括显示模块。显示模块,用于在显示界面中播放所述UI动画,其中,在播放所述多帧图像时,所述多帧图像中多个像素点的像素值的变化形成响应于所述第一操作的流体粒子运动。
在一种可能的实施方式中,所述流体粒子运动模型用于模拟多个粒子响应于所述第一操作发生流体粒子运动,所述多个粒子与所述多帧图像中的像素点具有关联关系。
在一种可能的实施方式中,所述处理模块,具体用于响应于所述第一操作,对所述流体粒子运动模型进行仿真计算处理,输出仿真计算结果,所述仿真计算结果包括所述多个粒子的位置信息,所述仿真计算结果指示所述流体粒子运动模型模拟所述多个粒子响应于所述第一操作发生流体粒子运动的运动结果;
所述处理模块,具体用于根据所述仿真计算结果,生成所述UI动画。
在一种可能的实施方式中,所述处理模块,具体用于根据所述仿真计算结果,生成所述多帧图像,其中,所述多帧图像分别对应所述仿真计算处理的过程中多个时刻输出的所述仿真计算结果;
所述处理模块,具体用于根据所述多帧图像,生成所述UI动画,其中,所述UI动画的帧率与所述仿真计算处理的过程中输出所述仿真计算结果的周期具有关联关系。
在一种可能的实施方式中,所述处理模块,具体用于响应于所述第一操作,从所述流体粒子运动模型模拟的多个粒子中确定第一集合,所述第一集合包括的至少一个粒子,所述流体粒子运动模型模拟所述第一集合包括的粒子响应于所述第一操作发生运动;
所述处理模块,具体用于响应于所述第一操作,确定所述第一集合中粒子的受力情况和运动速度;
所述处理模块,具体用于根据所述第一集合中所述粒子的受力情况和运动速度,更新所述流体粒子运动模型模拟的所述多个粒子的位置信息,输出所述仿真计算结果。
在一种可能的实施方式中,所述处理模块,具体用于根据所述第一操作,确定第一区域,所述第一区域为所述第一操作对应于所述电子设备的所述显示界面的区域;
所述处理模块,具体用于根据所述第一区域,确定第一像素点集合,所述第一像素点集合包括的像素点为所述第一区域中的像素点;
所述处理模块,具体用于根据所述第一像素点集合,从所述流体粒子运动模型模拟的所述多个粒子中确定所述第一集合,所述第一集合包括的粒子与所述第一像素点集合包括的像素点具有对应关系。
在一种可能的实施方式中,所述处理模块,还用于初始化所述多个粒子中每个粒子的属性,所述粒子的属性包括以下一项或多项信息:
所述粒子的位置信息、所述粒子的质量、所述粒子的速度、所述粒子的加速度、所述粒子的阻尼系数,所述粒子的亮度值,所述粒子的灰度值,或者所述粒子的颜色值。
在一种可能的实施方式中,所述处理模块,还用于选取所述显示界面;
所述处理模块,还用于获取所述显示界面中像素点的像素值;
所述处理模块,还用于获取第一映射关系,所述第一映射关系为所述流体粒子运动模型模拟的所述多个粒子与所述显示界面包括的像素点之间的映射关系;
所述处理模块,还用于根据所述第一映射关系,确定所述多个粒子中粒子的像素值,其中,所述粒子的像素值与所述粒子对应的像素点的像素值相关。
在一种可能的实施方式中,所述处理模块,还用于根据第二映射关系,将所述仿真计算结果指示的所述多个粒子的像素值映射至所述显示界面,使得所述显示界面播放所述UI动画,其中,所述第二映射关系指示所述仿真计算结果包括所述多个粒子与所述显示界面包括的像素点的映射关系。
在一种可能的实施方式中,电子设备的所述显示界面包括以下任意一项或多项:
所述电子设备的桌面,所述电子设备的屏幕保护界面,所述电子设备的图片编辑界面,所述电子设备的视频编辑界面,或者,所述电子设备的菜单界面。
在一种可能的实施方式中,所述第一操作为针对所述电子设备的显示屏的触摸操作;
所述触摸操作包括以下一项或多项:点击操作,或者,滑动操作。
在一种可能的实施方式中,所述收发模块,还用于姿态变化信息;
所述处理模块,还用于根据所述姿态变化信息,确定所述第一操作;
其中,所述姿态变化信息,包括用户的姿态变化信息,和/或所述电子设备的姿态变化信息;
所述用户的姿态变化信息,包括以下任意一项或多项:
手势运动信息,眼球运动信息,躯干运动信息,或者,腿部运动信息。
在一种可能的实施方式中,所述收发模块,用于向云终端发送所述UI动画,所述云终端用于在虚拟桌面中播放所述UI动画。
第三方面,本申请提供一种图形处理装置,包括:处理器和存储器,其中,处理器和存储器通过线路互联,处理器调用存储器中的程序代码用于执行上述第一方面任一项所示的图形界面处理方法中与处理相关的功能。可选地,该图形处理装置可以是芯片。
一种可能的实现方式中,处理器,用于获取第一操作,所述第一操作为针对电子设备的显示屏的操作;
处理器,还用于响应于所述第一操作,生成用户接口UI动画,所述UI动画包括多帧图像;所述多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到,所述流体粒子运动模型包括模拟流体的粒子运动的物理模型。
在一种可能的实现方式中,处理器,还用于在显示界面中播放所述UI动画,其中,在播放所述多帧图像时,所述多帧图像中多个像素点的像素值的变化形成响应于所述第一操作的流体粒子运动。
在一种可能的实施方式中,所述流体粒子运动模型用于模拟多个粒子响应于所述第一操作发生流体粒子运动,所述多个粒子与所述多帧图像中的像素点具有关联关系。
在一种可能的实施方式中,所述处理器,具体用于响应于所述第一操作,对所述流体粒子运动模型进行仿真计算处理,输出仿真计算结果,所述仿真计算结果包括所述多个粒子的位置信息,所述仿真计算结果指示所述流体粒子运动模型模拟所述多个粒子响应于所述第一操作发生流体粒子运动的运动结果;
所述处理器,具体用于根据所述仿真计算结果,生成所述UI动画。
在一种可能的实施方式中,所述处理器,具体用于根据所述仿真计算结果,生成所述多帧图像,其中,所述多帧图像分别对应所述仿真计算处理的过程中多个时刻输出的所述仿真计算结果;
所述处理器,具体用于根据所述多帧图像,生成所述UI动画,其中,所述UI动画的帧率与所述仿真计算处理的过程中输出所述仿真计算结果的周期具有关联关系。
在一种可能的实施方式中,所述处理器,具体用于响应于所述第一操作,从所述流体粒子运动模型模拟的多个粒子中确定第一集合,所述第一集合包括的至少一个粒子,所述流体粒子运动模型模拟所述第一集合包括的粒子响应于所述第一操作发生运动;
所述处理器,具体用于响应于所述第一操作,确定所述第一集合中粒子的受力情况和运动速度;
所述处理器,具体用于根据所述第一集合中所述粒子的受力情况和运动速度,更新所述流体粒子运动模型模拟的所述多个粒子的位置信息,输出所述仿真计算结果。
在一种可能的实施方式中,所述处理器,具体用于根据所述第一操作,确定第一区域,所述第一区域为所述第一操作对应于所述电子设备的所述显示界面的区域;
所述处理器,具体用于根据所述第一区域,确定第一像素点集合,所述第一像素点集合包括的像素点为所述第一区域中的像素点;
所述处理器,具体用于根据所述第一像素点集合,从所述流体粒子运动模型模拟的所述多个粒子中确定所述第一集合,所述第一集合包括的粒子与所述第一像素点集合包括的像素点具有对应关系。
在一种可能的实施方式中,所述处理器,还用于初始化所述多个粒子中每个粒子的属性,所述粒子的属性包括以下一项或多项信息:
所述粒子的位置信息、所述粒子的质量、所述粒子的速度、所述粒子的加速度、所述粒子的阻尼系数,所述粒子的亮度值,所述粒子的灰度值,或者所述粒子的颜色值。
在一种可能的实施方式中,所述处理器,还用于选取所述显示界面;
所述处理器,还用于获取所述显示界面中像素点的像素值;
所述处理器,还用于获取第一映射关系,所述第一映射关系为所述流体粒子运动模型模拟的所述多个粒子与所述显示界面包括的像素点之间的映射关系;
所述处理器,还用于根据所述第一映射关系,确定所述多个粒子中粒子的像素值,其中,所述粒子的像素值与所述粒子对应的像素点的像素值相关。
在一种可能的实施方式中,所述处理器,还用于根据第二映射关系,将所述仿真计算结果指示的所述多个粒子的像素值映射至所述显示界面,使得所述显示界面播放所述UI动画,其中,所述第二映射关系指示所述仿真计算结果包括所述多个粒子与所述显示界面包括的像素点的映射关系。
在一种可能的实施方式中,电子设备的所述显示界面包括以下任意一项或多项:
所述电子设备的桌面,所述电子设备的屏幕保护界面,所述电子设备的图片编辑界面,所述电子设备的视频编辑界面,或者,所述电子设备的菜单界面。
在一种可能的实施方式中,所述第一操作为针对所述电子设备的显示屏的触摸操作;
所述触摸操作包括以下一项或多项:点击操作,或者,滑动操作。
在一种可能的实施方式中,所述处理器,还用于姿态变化信息;
所述处理器,还用于根据所述姿态变化信息,确定所述第一操作;
其中,所述姿态变化信息,包括用户的姿态变化信息,和/或所述电子设备的姿态变化信息;
所述用户的姿态变化信息,包括以下任意一项或多项:
手势运动信息,眼球运动信息,躯干运动信息,或者,腿部运动信息。
在一种可能的实施方式中,所述处理器,还用于向云终端发送所述UI动画,所述云终端用于在虚拟桌面中播放所述UI动画。
第四方面,本申请实施例提供一种计算机可读存储介质,包括指令,当其在计算机集群上运行时,使得计算机集群执行如第一方面或第一方面任意可能实现方式中所描述的方法。
第五方面,本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机集群上运行时,使得计算机集群执行第一方面或第一方面任意可能实现方式中所描述的方法。
第六方面,本申请实施例提供了一种芯片系统,包括:处理器,处理器用于从存储器中调用并运行该存储器中存储的计算机程序,执行如第一方面或其相应的可能的实施方式提供的方法。
第七方面,本申请实施例提供了一种电子设备,电子设备上部署有第一方面或第一方面任意可能实现方式中所描述的电子设备。
在第七方面的一种可能的实施方式中,电子设备可以包括手机、电视、车载设备、手表或者手环中的至少一种。
第八方面,本申请实施例提供一种服务器,该服务器用于实现前述第一方面或第一方面任意可能实现方式。
需要说明的是,第二方面至第八方面所带来的有益效果可以参照第一方面以及第一方面可能的实现方式所带来的有益效果进行理解,这里不再重复赘述。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
图1是本申请实施例提供的电子设备的结构示意图;
图2是本申请实施例的电子设备100的软件结构框图;
图3是本申请实施例提供的投屏系统的系统架构图;
图4为本申请实施例中图形界面处理方法的一种实施例示意图;
图5为本申请实施例中图形界面处理方法的又一种实施例示意图;
图6a为本申请实施例中一种电子设备的屏幕保护界面的示意图;
图6b为本申请实施例中一种电子设备的屏幕保护界面的示意图;
图6c为本申请实施例中一种电子设备的屏幕保护界面的示意图;
图6d为本申请实施例中一种电子设备的屏幕保护界面的示意图;
图6e为本申请实施例中一种电子设备的屏幕保护界面的示意图;
图7a为本申请实施例中一种电子设备的菜单界面的示意图;
图7b为本申请实施例中一种电子设备的菜单界面的示意图;
图8a为本申请实施例中一种电子设备的菜单界面的示意图;
图8b为本申请实施例中一种电子设备的菜单界面的示意图;
图9a为本申请实施例中一种电子设备的菜单界面的示意图;
图9b为本申请实施例中一种电子设备的菜单界面的示意图;
图10为本申请实施例中一种视频编辑界面示意图;
图11为本申请实施例中一种获取用户的姿态变化信息的示意图;
图12a为本申请实施例中又一种获取用户的姿态变化信息的示意图;
图12b为本申请实施例中又一种获取用户的姿态变化信息的示意图;
图13a为本申请实施例中一种获取电子设备的姿态变化信息的示意图;
图13b为本申请实施例中一种获取电子设备的姿态变化信息的示意图;
图13c为本申请实施例中一种获取电子设备的姿态变化信息的示意图;
图13d为本申请实施例中显示界面像素点与粒子模型的映射关系示意图;
图14a为本申请实施例中一种获取电子设备的姿态变化信息的示意图;
图14b为本申请实施例中一种获取电子设备的姿态变化信息的示意图;
图15为本申请实施例中第一操作的一种示意图;
图16a为本申请实施例中粒子的运动速度的示意图;
图16b为本申请实施例中粒子的运动速度的示意图;
图17为本申请实施例中一种应用场景的示意图;
图18为本申请实施例中一种应用场景的示意图;
图19为本申请实施例中一种动画的示意图;
图20为本申请实施例中一种粒子的受力情况的示意图;
图21为本申请提供的一种图形处理装置的结构示意图;
图22为本申请提供的另一种图形处理装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的一些示例实现。虽然附图中显示了本公开的一些示例实现,然而,应该理解,可以以各种形式实现本公开而不应被这里阐述的示例实现所限制。相反,提供这些实现是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“实施例”和“一些实施例”表示“至少一些实施例”。术语“第一”、“第二”等描述,是用于区分不同的对象等,其不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
在本文中使用的术语“UI”表示用户与应用程序或操作系统进行交互和信息交换的接口,它实现信息的内部形式与用户可以接受形式之间的转换。例如,应用程序的UI是通过java、可扩展标记语言(extensible markup language,XML)等特定计算机语言编写的源代码,UI源代码在电子设备上经过解析,渲染,最终呈现为用户可以识别的内容,比如图片、文字、按钮等UI元素。
在某些实施例中,UI中的UI元素的属性和内容是通过标签或者节点来定义的,比如XML通过<Text view>、<Img View>、<Video View>等节点来规定UI所包含的UI元素。一个节点对应UI中一个UI元素或属性,节点经过解析和渲染之后呈现为用户可视的内容。此外,很多应用程序,比如混合应用(hybrid application)的UI中通常还包含有网页。网页可以理解为内嵌在应用程序UI中的一个特殊的UI元素,网页是通过特定计算机语言编写的源代码,例如超文本标记语言(hyper text markup language,HTML),层叠样式表(cascadingstyle sheets,CSS),java脚本(JavaScript,JS)等,网页源代码可以由浏览器或与浏览器功能类似的网页显示组件加载和显示为用户可识别的内容。网页所包含的具体内容也是通过网页源代码中的标签或者节点来定义的,比如HTML通过<p>、<img>、<video>、<canvas>来定义网页的元素和属性。
在本文中使用的术语“UI元素”包括但不限于:窗口(window)、滚动条(scrollbar)、表格视图(table view)、按钮(button)、菜单栏(menu bar)、文本框(textbox)、导航栏、工具栏(toolbar)、图像(image)、静态文本(tatictext)、部件(Widget)等可视的UI元素。
在本公开的实施例中描述的一些流程中,包含了按照特定顺序出现的多个操作或步骤,但是应该理解,这些操作或步骤可以不按照其在本公开的实施例中出现的顺序来执行或并行执行,操作的序号仅用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作或步骤可以按顺序执行或并行执行,并且这些操作或步骤可以进行组合。
在诸如“Android”和“iOS”的移动操作系统中,动画本质上是基于刷新率实时显示用户界面UI或UI元素。由于人类的视觉暂留原理,使得用户感觉画面是运动的。动画从动画的初态在经过动画时间之后变换为动画的终态。在这个变换过程中,动画可以由动画类型和动画变换形式进行控制。例如,动画类型可以包括位移动画、旋转动画、缩放动画和透明动画等。而动画变换形式可以由插值器和估值器等控制器进行控制。这样的控制器可以用于在动画时间期间控制对动画进行变换的速度。
为便于理解,下面将对本申请实施例提供的电子设备100的结构进行示例说明。参见图1,图1是本申请实施例提供的电子设备的结构示意图。
如图1所示,电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I1C)接口,集成电路内置音频(inter-integrated circuitsound,I1S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括1G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线2转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线1接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
在一些可行的实施方式中,显示屏194可用于显示电子设备100的系统输出的各个界面。电子设备100输出的各个界面可参考后续实施例的相关描述。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG1,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。在一些可行的实施方式中,音频模块170可用于播放视频对应的声音。例如,显示屏194显示视频播放画面时,音频模块170输出视频播放的声音。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。陀螺仪传感器180B可以用于确定电子设备100的运动姿态。气压传感器180C用于测量气压。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。
环境光传感器180L用于感知环境光亮度。
指纹传感器180H用于采集指纹。
温度传感器180J用于检测温度。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。
以上是对电子设备100的结构进行的描述,接下来对电子设备的软件结构进行说明。电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图2是本申请实施例的电子设备100的软件结构框图。
如图2所示,分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。界面内容可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
在一些可行的实施方式中,电子设备100可以使用无线通信功能和其他设备通信。例如,电子设备100可以和电子设备200通信。进一步的,电子设备100与电子设备200建立投屏连接,电子设备100输出投屏数据至电子设备200等。其中,电子设备100输出的投屏数据可以为音视频数据。电子设备100与电子设备200的通信过程可参照后续实施例的相关描述,在此暂不赘述。
本申请所涉及的投屏可包括有线投屏和无线投屏,其中有线投屏可以通过高清多媒体接口(high definition multimedia interface,HDMI)建立电子设备之间的连接,并通过HDMI传输线传输媒体数据;无线投屏可以通过例如Miracast协议建立多个电子设备之间的连接,并通过例如无线局域网(wireless fidelity,WIFI)传输媒体数据。
本申请的投屏系统可以至少包括两个电子设备和一个投屏端口,这里的投屏端口可包括有线端口和/或无线端口。有线端口可以为HDMI;无线端口可以为应用编程接口(application programming interface,API),也可以为硬件投屏模块。参见图3,图3是本申请实施例提供的投屏系统的系统架构图。如图3所示,投屏系统包括电子设备100、电子设备200、第一有线端口101、第一无线端口102、第二有线端口201以及第二无线端口202。第一有线端口101和第一无线端口102可以集成在电子设备100上,也可独立于电子设备100存在;第二有线端口201和第二无线端口202可以集成在电子设备200上,也可以独立于电子设备200存在,本申请实施例不做限定。电子设备100与电子设备200可通过投屏端口建立投屏连接。其中,电子设备100上可以运行视频应用等,且电子设备100至少具备投屏发送(Source)能力。
电子设备100可以包括增强交互服务,该增强交互服务可以获取到电子设备的传感器信息(例如可以是从图1中的传感器输入获取),该传感器信息包括但不限于电子设备的姿态信息,该增强交互服务还可以获取到电子设备的触摸屏信息(例如可以是从图1中的触摸屏输入获取),该触摸屏信息包括但不限于对触摸屏的触摸信息。
该增强交互服务可以基于获取到的触摸信息,生成对应的事件,并将事件注入到电子设备的前端应用中。该增强交互服务也可以获取到电子设备的界面内容,在界面内容上绘制其他图像,并将绘制好的界面内容发送至投屏服务。
电子设备100可包括投屏服务,该投屏服务用于实现投屏发送(Source)能力,例如,投屏服务可以获取到电子设备的界面内容作为投屏数据,或者将增强交互服务绘制好的界面内容作为投屏数据,并将投屏数据通过第一无线端口或第一有线端口发送至电子设备。
电子设备100至少具备投屏接收(Sink)能力、图像显示能力以及声音输出能力。电子设备200可包括投屏服务,该投屏服务用于实现投屏接收(Sink)能力,该投屏服务可以将接收到的投屏数据发送至电子设备的显示屏,以使得显示屏显示对应的投屏数据。
电子设备100的示例包括但不限于搭载iOS、android、microsoft或者其他操作系统的电子设备,可选的,电子设备100可以为手机、平板电脑、个人数字助理(personaldigital assistant,PDA)或台式电脑等电子设备。电子设备200可以为电视、平板电脑、台式电脑、汽车等电子设备。
需要说明的是,电子设备包括具有显示功能的电子设备。
为了便于理解,下面结合附图和应用场景,对本申请实施例提出的图形界面处理方法进行具体阐述。请参阅图4,图4为本申请实施例中图形界面处理方法的一种实施例示意图。本申请实施例提出的图形界面处理方法,包括:
401、初始化流体粒子运动模型。
本实施例中,所述流体粒子运动模型是一种用于模拟多个粒子响应于所述第一操作发生流体粒子运动的物理模型。通过应用该流体粒子运动模型,实现UI动画包括的多帧图像中多个像素点的变化形成流体粒子运动。提升该UI动画的显示效果。关于物理模型(physical model),在研究和解决物理学问题时,舍弃次要因素,抓住主要因素,建立的概念模型称为物理模型。该方法称为构建物理模型,或称为构建模型。物理模型也可简称为模型,但在这种情况下与概念模型通常不同,是可以模拟物理对象的较小或更大的复制品。
具体的,所述流体粒子运动模型包括模拟流体的粒子运动的物理模型。在本申请实施例中,该流体粒子运动模型响应于第一操作模拟多个粒子发生流体粒子运动。
在仿真计算处理之前,电子设备初始化流体粒子运动模型模拟的多个粒子的属性,其中,粒子的属性包括以下一项或多项信息:粒子的位置信息、粒子的速度、粒子的加速度、粒子的阻尼系数,或者粒子的颜色值。下面分别进行说明。
具体的,本申请实施例中的流体粒子运动模型模拟的多个粒子,每个粒子包括一项或多项属性信息。在步骤401中,初始化流体粒子运动模型指的是初始化流体粒子运动模型所模拟的多个粒子的属性。
粒子的位置信息指示该粒子在流体粒子运动模型中的坐标,例如直角坐标系中的(x,y)坐标,又例如空间直角坐标系中的(x,y,z)坐标等。
粒子的阻尼系数指的是粒子在流体粒子运动模型中运动时受到阻碍的系数,示例性的,粒子的阻尼系数可以是粒子的摩擦系数。
在初始化流体粒子运动模型后,粒子的加速度和粒子的速度可以是0。
粒子的颜色值指的是粒子的红绿蓝(red green blue,RGB)颜色值。在初始化流体粒子运动模型后,粒子的颜色值为某一预设值或者空白,例如:(0,0,0)。
需要说明的是,粒子的属性还可能包括其他信息,例如:粒子的动量、粒子的角动量,粒子的质量等。
针对流体粒子运动模型模拟的多个粒子中的不同粒子,可以设置相同的属性,也可以针对不同的粒子设置不同的属性。以粒子的质量为例,在步骤401中,可以设置流体粒子运动模型模拟的多个粒子中每个粒子的质量相同;也可以针对粒子运动的区域划分为不同区域,在不同区域中的粒子设置不同的粒子质量。本申请实施例对此不作限制。
402、选取显示界面并建立显示界面的像素点与流体粒子运动模型仿真计算处理的多个粒子的第一映射关系。
本实施例中,电子设备的显示界面具体包括多种可能的实现方案,具体的,显示界面包括但不限于:所述电子设备的桌面,所述电子设备的屏幕保护界面,所述电子设备的图片编辑界面,所述电子设备的视频编辑界面,或者,所述电子设备的菜单等。
本申请实施例中,对显示界面的尺寸(即显示界面的分辨率)不作限制。
一种可能的实现方式中,电子设备的显示界面的尺寸(即分辨率)可以小于电子设备的显示屏尺寸(即显示屏的分辨率)。例如,显示界面为电子设备的菜单中某一级子菜单(例如“设置”子菜单),由于“设置”子菜单在显示屏中仅占用部分区域,因此,该显示界面(即“设置”子菜单在显示屏中所占用的区域)的尺寸小于显示屏尺寸。
又一种可能的实现方式中,电子设备的显示界面的尺寸(即分辨率)可以等于电子设备的显示屏尺寸(即显示屏的分辨率)。例如,当电子设备为终端设备,电子设备的显示界面为终端设备的屏幕保护界面时,显示界面(屏幕保护界面)的尺寸可以与该终端设备的显示屏尺寸相同,例如2376×1080像素,或者2700×1224像素。
又一种可能的实现方式中,电子设备的显示界面的尺寸(即分辨率)可以大于电子设备的显示屏尺寸(即显示屏的分辨率)。又例如,当电子设备为终端设备,电子设备的显示界面为电子设备的视频编辑界面时,显示界面(视频编辑界面)的尺寸可以大于终端设备的显示屏尺寸。例如视频编辑界面中待编辑的视频的分辨率为3840×2160像素(或者7680×4320像素等),而该电子设备的显示屏尺寸为2376×1080像素。则该显示界面的尺寸与待编辑的视频的分辨率相同,该显示界面的尺寸为3840×2160像素。
然后,电子设备建立该显示界面与流体粒子运动模型之间的映射关系,本申请实施例中将该映射关系称为第一映射关系。具体的,第一映射关系为流体粒子运动模型中粒子与显示界面包括的像素点的映射关系。在同一个坐标系下,确定显示界面的像素点的位置后,将该像素点映射到流体粒子运动模型中同一位置的粒子。例如:确定显示界面的像素点A的位置信息为(xA,yA),流体粒子运动模型中粒子A的位置信息为(xA,yA),则建立像素点A与粒子A的映射关系。为了便于理解,请参阅图13d,图13d为本申请实施例中显示界面像素点与流体粒子运动模型的映射关系示意图。
可以理解的是,电子设备也可以将显示界面的像素点映射到与该像素点位置接近的粒子,本申请实施例对此不做限制。
由于显示界面的像素点具有颜色值,因此,根据第一映射关系可以确定流体粒子运动模型中与该像素点对应的粒子的颜色值。
关于显示界面的像素点与流体粒子运动模型的粒子之间的映射关系,可以是一个像素点映射至一个粒子,也可以是多个临近的像素点映射至同一个粒子,还可以是一个像素点映射至多个临近的粒子,本申请实施例对此不作限制。
一种可能的实现方式中,电子设备可以先选取显示界面后,根据显示界面的尺寸(分辨率)创建并初始化流体粒子运动模型;另一种可能的实现方式中,电子设备创建并初始化流体粒子运动模型,然后电子设备选取显示界面并将显示界面的像素点映射到已经创建好的流体粒子运动模型,本申请实施例对此不作限制。
403、获取第一操作,第一操作为对电子设备的操作。
本实施例中,电子设备获取第一操作,本申请实施例中为了便于描述,将用户对电子设备的操作称为第一操作。第一操作具体包括多种可能的实现方式,下面分别进行说明。
(A)、电子设备的显示屏接收第一操作。第一操作为用户对电子设备的显示屏的触摸操作,该显示屏具有触控功能。进一步的,该触摸操作包括以下一项或多项:点击操作,或者,滑动操作。下面进行具体说明:以用户的手指接触显示屏(简称为屏幕)为例,当手指触摸该显示屏时,触发电子设备接收并记录第一操作。点击操作指的是手指点击显示屏,或者,手指在显示屏的同一区域范围内持续按压一段时间。滑动操作指的是手指在显示屏上滑动一段距离。
可以理解的是,电子设备还可以通过具有触控功能的输入设备接收第一操作。以电子设备是电脑为例,该输入设备可以是电子设备外接的触控板。
示例性的,以电子设备是手机为例,分别进行举例说明。
A1、当电子设备的显示界面为电子设备的屏幕保护界面时,请参阅图6a~图6c,图6a~图6c为本申请实施例中一种电子设备的屏幕保护界面的示意图。图6a示意的①时刻为用户的手指触摸终端设备的屏幕的时刻。图6b示意的是从①时刻至②时刻,手指从屏幕左下角滑动至屏幕中心。图6c示意的是从②时刻至③时刻,手指从屏幕中心滑动至屏幕右上方。图6a~图6c示意的是完整的第一操作过程。
具体的,显示界面可以包括图6a~图6c中示意的屏幕保护界面的壁纸。
可选地,该显示界面除了包括屏幕保护界面的壁纸外,还可以包括屏幕保护界面中其他的UI元素,例如图6a~图6c中示意的时间组件:“08:00”以及“1月1号周四”,提示组件:“>>>滑动解锁”,和/或显示屏顶部的状态栏。
A2、当电子设备的显示界面为电子设备的菜单界面时,该菜单界面包括但不限于:主菜单、底部滑动菜单、负一屏菜单,或者应用程序菜单等。
A21、一种示例请参阅图7a~图7b。图7a~图7b为本申请实施例中一种电子设备的菜单界面的示意图。图7a~图7b示意的是终端设备的主菜单(终端设备的主菜单又称为终端设备的桌面)。图7a示意的是①时刻为用户的手指触摸终端设备的屏幕的时刻。图7b示意的是从①时刻至②时刻,手指从屏幕左侧滑动至屏幕右侧。
具体的,显示界面可以包括图7a~图7b中示意的主菜单界面的壁纸。
可选地,该显示界面除了包括主菜单界面的壁纸外,还可以包括主菜单界面中其他的UI元素,例如图7a~图7b示意的应用程序图标、应用程序的名称,和/或显示屏顶部的状态栏等。
A22、又一种示例请参阅图8a~图8b。图8a~图8b为本申请实施例中一种电子设备的菜单界面的示意图。图8a~图8b示意的是终端设备的底部上滑菜单。图8a示意的是①时刻为手指触摸终端设备的屏幕底部的时刻。图8b示意的是从①时刻至②时刻,手指从屏幕底部向上滑动。
具体的,显示界面可以包括图8a~图8b中示意的底部上滑菜单、底部上滑菜单中的应用程序图标,和/或底部上滑菜单中应用程序的名称,例如:“居家”、“离家”、“睡眠模式”、“电影模式”、“智慧屏”以及“台灯”等。
可选地,该显示界面除了包括底部上滑菜单中的UI元素,例如:底部上滑菜单中的应用程序图标,和/或底部上滑菜单中应用程序的名称外,还可以包括主菜单界面中其他的UI元素,例如:壁纸、主菜单界面中的应用程序图标、主菜单界面中应用程序名称,和/或显示屏顶部的状态栏等。
A23、又一种示例请参阅图9a~图9b。图9a~图9b为本申请实施例中一种电子设备的菜单界面的示意图。图9a~图9b示意的是终端设备的相册菜单。图9a示意的是①时刻为手指触摸终端设备的屏幕的时刻。图9b示意的是从①时刻至②时刻,手指从屏幕右下角向上滑动。
具体的,显示界面可以包括图9a~图9b中示意的相册菜单的UI元素,例如:相册菜单中的文字,相册菜单中控件的图标、相册菜单中控件的名称和/或相册菜单中的图片。例如:“2022年9月17日”、“深圳市龙岗区”、“2022年9月1日”、“深圳市南山区”、“图片”、“相册”、“时刻”以及“发现”等。
可选地,该显示界面还可以包括相册菜单的其他UI元素,例如:背景等。具体的,相册菜单的背景是主菜单壁纸,或者半透明化的主菜单壁纸。又例如,相册菜单的背景可以由用户设置。
A3、电子设备的显示界面为电子设备的视频编辑界面。通过在视频编辑界面对目标视频进行第一操作,在目标视频中增加特效。该特效指的是响应于该触摸操作,目标视频的一帧或多帧画面发生流体粒子运动。目标视频中一帧或多帧画面的像素点的流体粒子运动轨迹跟随第一操作的轨迹。
示例性的,请参阅图10,图10为本申请实施例中一种视频编辑界面示意图。用户通过手指滑动定位到目标视频的某一时间点后,通过在视频播放窗口内的触摸操作,在目标视频中增加特效。如图10示意的从①时刻至②时刻,手指沿着图中小人的运动方向,从左往右滑动。
本申请实施例提出的UI动画作为目标视频中新增的特效。一种可能的实现方式中,增加特效(UI动画)后的目标视频可以在视频播放窗口中播放,该视频播放窗口作为UI动画的显示界面,在视频播放窗口(显示界面)中响应于手指滑动(即第一操作为手指滑动)实时播放UI动画。示例性的,该视频播放窗口可以是相册软件的预览窗口,该视频播放窗口也可以是视频编辑软件的预览窗口。
又一种可能的实现方式中,增加特效(UI动画)后的目标视频,以视频文件的形式保存或者输出。
A4、电子设备的显示界面为电子设备的图片编辑界面。通过在图片编辑界面对目标图片进行第一操作,在目标图片中增加特效。该特效指的是响应于该触摸操作,目标图片发生流体粒子运动。目标图片的像素点的流体粒子运动轨迹跟随第一操作的轨迹。
(B)、电子设备获取姿态变化信息后,根据姿态变化信息确定第一操作。
具体的,本申请实施例中的姿态变化信息,包括一下任意一项:用户的姿态变化信息,或者,电子设备的姿态变化信息。下面分别介绍:
B1、姿态变化信息为用户的姿态变化信息。具体的,电子设备通过传感器采集用户的姿态变化信息,该用户的姿态变化信息包括但不限于:手势运动信息,眼球运动信息,躯干运动信息,或者,腿部运动信息。该传感器包括但不限于:摄像头、红外线传感器、超声波雷达,和/或毫米波雷达等。
一种可能的实现方式中,电子设备通过传感器采集用户的姿态变化信息。该用户的姿态变化信息视为对电子设备的操作。然后,电子设备根据该用户的姿态变化信息,确定第一操作。例如:根据该用户的姿态变化信息,确定与用户的姿态变化信息对应的第一操作的轨迹;根据该第一操作的轨迹,生成动画。
示例性的,请参阅图11,图11为本申请实施例中一种获取用户的姿态变化信息的示意图。以电子设备是汽车为例,通过安装在汽车内部的一个或多个传感器采集用户的姿态变化信息。例如;通过安装在中控台的摄像头,采集用户的手部姿态变化信息。当检测到用户的手指投影区域与中控屏幕重合,且用户的手指发生运动时,根据手指的运动轨迹,确定在中控屏幕上的第一操作的轨迹。此时,显示界面为汽车的中控屏幕。
又一种示例中,请参阅图12a~图12b,图12a~图12b为本申请实施例中又一种获取用户的姿态变化信息的示意图。以电子设备是智能电视为例,通过安装在智能电视的一个或多个传感器采集用户的姿态变化信息。通过安装在智能电视屏幕附近的摄像头,采集用户的眼球姿态变化信息。当检测到眼球的视线延长线与智能电视屏幕重合,且,眼球发生运动时,根据眼球的视线延长线在智能电视屏幕的交点的运动轨迹,确定在智能电视屏幕上的第一操作的轨迹。此时,显示界面为智能电视屏幕。如图12a~图12b示意的:眼球的视线延长线与智能电视屏幕的交点从①时刻的屏幕右上方,移动到②时刻屏幕的正下方。
B2、姿态变化信息为电子设备的姿态变化信息。
一种可能的实现方式中,电子设备100投屏至电子设备200上,通过获取电子设备100的姿态变化信息,确定对电子设备200的第一操作。具体的,电子设备100或电子设备200通过陀螺仪或者其他的传感器采集电子设备100的姿态变化信息。然后根据该电子设备100的姿态变化信息,确定对应的第一操作。例如:获取电子设备100的角度变化量,确定在电子设备200的屏幕上发生的相应位移。电子设备200上发生的位移视为第一操作的轨迹。
示例性的,请参阅图13a~图13c,图13a~图13c为本申请实施例中一种获取电子设备的姿态变化信息的示意图。以电子设备100是遥控器,电子设备200是智能电视为例。用户通过操作电子设备100(遥控器),触发电子设备100的姿态变化。电子设备100内部的传感器(例如陀螺仪或者红外线发射器等)和/或电子设备200内部的传感器(例如红外线接收器或者摄像头等)采集电子设备100的姿态变化信息。然后,根据电子设备100的姿态变化信息,确定作用在电子设备200的第一操作,并确定电子设备200的显示界面上第一操作的轨迹。
又一种示例中,请参阅图14a~图14b,图14a~图14b为本申请实施例中一种获取电子设备的姿态变化信息的示意图。电子设备100是一种操作手柄,例如增强显示AR设备的手柄、虚拟现实VR设备的手柄或混合现实MR设备的手柄。用户通过操作电子设备100对电子设备200进行操作。例如图14a~图14b示意的,用户通过挥动电子设备100,在电子设备200的屏幕上生成第一操作的轨迹,即从①时刻的屏幕右侧,移动到②时刻屏幕的左侧。
404、响应于第一操作,对流体粒子运动模型进行仿真计算处理,输出仿真计算结果。
本实施例中,当用户的第一操作发起时,电子设备响应于第一操作,对流体粒子运动模型进行仿真计算处理,输出仿真计算结果,该仿真计算结果包括多个粒子的位置信息。
具体的,电子设备响应于第一操作,使用流体粒子运动模型仿真计算处理多个粒子的流体粒子运动。仿真计算处理的过程中多个时刻分别输出多个仿真计算结果,每个仿真计算结果对应仿真计算处理的过程中,多个时刻分别输出的多个粒子发生流体粒子运动的运动结果。该运动结果指的是该多个粒子在流体粒子运动模型的仿真计算过程中的位置信息。
电子设备在使用流体粒子运动模型仿真计算多个粒子响应于第一操作发生流体粒子的过程中,周期性输出仿真计算结果(即多个粒子的位置信息)。电子设备根据仿真计算结果生成图像,然后根据仿真计算过程中多个时刻输出的多个仿真计算结果生成多帧图像。最后,电子设备根据多帧图像生成UI动画。因此,流体粒子运动模型在仿真计算处理的过程中输出仿真计算结果(多个粒子的位置信息)的输出周期与动画的帧率相关。一种可能的实现方式中,UI动画的帧率是仿真计算处理的过程中输出所述仿真计算结果的周期的倒数。
关于响应于第一操作,对流体粒子运动模型进行仿真计算处理得到仿真计算结果的具体方式,请参阅图5和对应的实施例,此处不作赘述。
405、根据仿真计算结果生成多帧图像,然后根据多帧图像生成动画,其中,该动画在显示界面播放。多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到。在播放多帧图像时,多帧图像中多个像素点的像素值的变化形成响应于第一操作的流体粒子运动。
需要说明的是,本申请实施例中的像素值包括但不限于:颜色值、亮度值,或者灰度值等。
本实施例中,当电子设备得到仿真计算结果后,电子设备获取第二映射关系,第二映射关系指示所述仿真计算结果包括所述多个粒子与所述显示界面包括的像素点的映射关系。
具体的,流体粒子运动模型在仿真计算处理的过程中,模拟多个粒子响应于第一操作发生流体粒子运动。因此在仿真计算处理的过程中输出的多个仿真计算结果中,多个粒子的位置信息可能发生变化。
以处理一个粒子为例,电子设备根据仿真计算结果中该粒子的位置信息,找到与该粒子位于同一位置的像素点(该像素点是显示界面的像素点),建立仿真计算结果的粒子与显示界面的像素点之间的映射关系(称为第二映射关系)。电子设备根据第二映射关系以及仿真计算结果中粒子的像素值,确定显示界面中各个像素点的像素值。通过上述方法,使得显示界面显示仿真计算结果对应的图像,在仿真计算处理的过程中输出多个仿真计算结果,最终使得显示界面播放多帧图像(即播放包括该多帧图像的UI动画)。显示界面在播放所述多帧图像(即播放UI动画)时,所述多帧图像中多个像素点的像素值的变化形成响应于所述第一操作的流体粒子运动。在用户直观看来,所述显示界面显示的多个像素点发生流体粒子运动。
为了便于理解,请参阅表1和表2,以像素点的像素值包括颜色值为例进行说明。其中,表1指示在初始化阶段,流体粒子运动模型模拟的多个粒子与显示界面的像素点之间的映射关系(即第一映射关系),表2指示仿真计算结果中的多个粒子与显示界面的像素点之间的映射关系(即第二映射关系)。
表1
表2
/>
示例性的,以显示界面包括P1~P4像素点为例,首先确定第一映射关系,如表1示意的。流体粒子运动模型模拟的G1~G4粒子的颜色值为对应的P1~P4像素点的颜色值。响应于第一操作,使用流体粒子运动模型仿真计算处理多个粒子发生流体粒子运动得到仿真计算结果。仿真计算结果中,G1~G4粒子的位置发生变化。电子设备根据仿真计算结果中粒子的位置信息确定在显示界面中与该粒子相对应的像素点。具体的,与仿真计算结果中G1~G4粒子相同位置的像素点为P5~P8。电子设备确定P5~P8像素点的颜色值为仿真计算结果中对应粒子的颜色值。电子设备根据仿真计算结果反向映射至显示界面,使得显示界面播放UI动画。
在另一种可能的实现方式中,电子设备生成UI动画之后,还包括:输出目标视频文件,所述目标视频文件包括所述UI动画。具体的,电子设备响应于第一操作生成UI动画之后,将UI动画以视频文件的形式保存并输出,增加了方案的实现灵活性。
在另一种可能的实现方式中,本申请实施例提出的图形界面处理方法可应用于云终端场景,具体如下,云终端场景,包括:服务器和云终端。具体处理流程如下:服务器通过电子设备获取第一操作。服务器响应于第一操作,生成UI动画。服务器向云终端发送UI动画,该云终端的虚拟桌面用于播放该UI动画。一种可能的示例中,云终端的虚拟桌面通过电子设备的显示屏向用户展示。通过上述方法,本方案还可以应用在云终端场景下,有效提升方案的实现灵活性。提升云终端场景下,用户的使用体验。
本申请实施例中,电子设备获取第一操作后,响应于第一操作生成UI动画,UI动画在显示界面播放。UI动画包括多帧图像,多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到,在播放多帧图像时,多帧图像中多个像素点的像素值的变化形成响应于第一操作的流体粒子运动。电子设备获取第一操作,实时生成UI动画,无需提前制作动画素材,降低了工作量。由于流体粒子运动的动画是一种响应于用户操作的实时动画,因此可提升用户的交互操作体验。该UI动画包括的多帧图像中多个像素点的像素值的变化为响应于第一操作的流体粒子运动,因此该UI动画的具有效果华丽的特点,显著增加动画的趣味性,提升使用该方法的UI产品的用户粘性。
结合前述实施例,下面进一步介绍使用流体粒子运动模型模拟多个粒子进行流体粒子运动的具体方法。请参阅图5,图5为本申请实施例中图形界面处理方法的又一种实施例示意图。本申请实施例提出的图形界面处理方法,具体包括:
501、响应于第一操作,确定第一区域。
本实施例中,第一区域为第一操作对应于电子设备的显示界面的区域。示例性的,以第一操作是用户手指在电子设备的显示屏上进行触摸操作为例进行说明。用户手指在显示屏上触摸的区域,本申请实施例称为第一区域。为了便于理解,请参阅图15,图15为本申请实施例中第一操作的一种示意图。手指在显示屏上触控的区域称为第一区域。
502、根据第一区域,确定第一像素点集合。
本实施例中,当电子设备确定第一区域后,电子设备确定第一区域中包括的多个像素点。这些像素点的集合称为第一像素点集合。
503、根据第一像素点集合,从流体粒子运动模型模拟的多个粒子中确定第一集合,第一集合包括至少一个粒子,第一集合包括的粒子响应于第一操作发生运动。
本实施例中,根据第一像素点集合和第一对应关系,从流体粒子运动模型中确定与第一像素点集合对应的一个或多个粒子。这些粒子的集合称为第一集合。为了便于理解,请参阅图15,图15中与第一像素点集合对应的粒子称为第一集合。
在又一种可能的实现方式中,第一集合包括的粒子,除了第一像素点集合对应的粒子外,还可以包括流体粒子运动模型模拟的多个粒子中其他响应于第一操作发生运动的粒子。例如,第一集合包括流体粒子运动模型模拟的多个粒子中的所有粒子。流体粒子运动模型模拟第一像素点集合对应的粒子响应于第一操作发生运动,流体粒子运动模型模拟的其他粒子受到上述运动的粒子的影响也发生运动,例如碰撞。因此第一集合可以包括流体粒子运动模型模拟的多个粒子中的所有粒子。
504、响应于第一操作,确定第一集合中粒子的受力情况。
本实施例中,响应于第一操作,确定第一集合中粒子的受力情况。具体的,所述第一集合中任意两个粒子的距离小于第一阈值时相互吸引,所述第一集合中任意两个粒子的距离大于所述第一阈值时相互排斥。示例性的,请参阅图20,图20为本申请实施例中一种粒子的受力情况的示意图。令第一阈值为r0,第一集合中任意两个粒子的距离为r。r大于r0时,两个粒子之间相互吸引,两个粒子受到的力为吸引力;r小于r0时,两个粒子之间相互排斥,两个粒子受到的力为排斥力。当r等于r0时,两个粒子之间受力平衡。
可选的,当粒子的属性还包括粒子的阻尼系数时,除了上述的吸引力和排斥力外,确定粒子的受力情况还需要考虑粒子受到的摩擦力。
505、根据粒子的受力情况和粒子的质量,计算粒子的加速度。
506、根据粒子的加速度和粒子的初始速度,计算粒子的运动速度。
本实施例中,粒子的初始速度可以是流体粒子运动模型在模型初始化后粒子的速度,粒子的初始速度也可以与第一操作的移动速度相关。具体如下:粒子的初始速度等于第一操作的移动速度与流体粒子运动模型初始化后粒子的速度的加和。例如:第一操作为用户手指的触摸操作。用户手指在显示屏上的滑动速度为第一操作的移动速度。为了便于理解,请参阅图16a-图16b,图16a-图16b为本申请实施例中粒子的运动速度的示意图。图16a-图16b中,虚线框的粒子为第一集合,第一集合中粒子的运动速度等于手指的滑动速度。
然后,电子设备根据粒子的加速度和粒子的初始速度,计算粒子的运动速度。
进一步的,由于触摸操作包括点击操作和/或滑动操作。当第一操作包括滑动操作时,粒子的初始速度与滑动操作的移动速度具有关联关系;当第一操作包括点击操作时,粒子的初始速度与点击操作的点击时长具有关联关系。例如:点击时长越长,则粒子的初始速度越大;点击时长越短,则粒子的初始速度越小。
507、根据粒子的运动时间和粒子的运动速度,使用流体粒子运动模型仿真计算处理多个粒子发生流体粒子运动,并更新粒子的位置信息,得到仿真计算结果。
本实施例中,粒子的运动时间可以与第一操作的持续时间一致,例如图6a~图6c示意。从图6a示意的①时刻,至图6c示意的是③时刻,手指从屏幕左下方滑动至屏幕右上方。从①时刻起开始更新流体粒子运动模型生成仿真计算结果,并在显示界面中播放UI动画。到③时刻为止,手指离开显示屏(即第一操作结束),则流体粒子运动模型停止更新,显示界面中停止播放UI动画。
在另一种可能的实现方式中,粒子的运动时间可以大于第一操作的持续时间,例如图6a~图6e示意。当图6c示意的③时刻,手指离开显示屏后,流体粒子运动模型继续对多个粒子进行仿真计算处理并输出仿真计算结果,显示界面继续播放UI动画。电子设备在③时刻之后,根据流体粒子运动模型中粒子的受力情况以及运动速度,继续仿真计算粒子的运动,并更新粒子的位置信息。如图6d和图6e示意的,显示界面中继续播放UI动画,响应于第一操作,多帧图像中多个像素点的像素值的变化继续形成流体粒子运动。直到流体粒子运动模型仿真计算处理的多个粒子停止运动后,或者仿真计算处理的时间到达预设时间后,流体粒子运动模型停止输出仿真计算结果。显示界面停止播放UI动画。
本申请实施例中,电子设备通过流体粒子运动模型仿真计算多个粒子的流体粒子运动,得到仿真计算结果。然后根据仿真计算结果生成UI动画。采用流体粒子运动模型可以实时生成响应于用户操作的UI动画,该UI动画包括的多帧图像中的像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到。提升UI动画的显示效果。
结合前述实施例,下面介绍本申请实施例的一种应用场景。请参阅图17、图18和图19,图17为本申请实施例中一种应用场景的示意图,图18为本申请实施例中一种应用场景的示意图,图19为本申请实施例中一种动画的示意图。在①时刻,用户的手指滑动显示屏。电子设备确定①时刻显示屏包括的显示界面(例如屏幕保护界面的壁纸),然后电子设备建立显示界面与流体粒子运动模型仿真计算处理的多个粒子之间的映射关系。响应于手指的滑动操作,使用流体粒子运动模型仿真计算处理多个粒子的流体粒子运动,输出仿真计算结果。在②时刻,手指从屏幕左下角滑动至屏幕的右上角。①时刻~②时刻的过程中,显示界面(即显示屏)播放UI动画,该动画指示显示界面(例如屏幕保护界面的壁纸)的像素点响应于手指的滑动操作。多帧图像中多个像素点的像素值的变化形成流体粒子运动。①时刻~②时刻具体动画的效果,如图19的示意。
前述对本申请提供的图像处理方法的流程进行了详细介绍,下面结合前述的方法流程,对执行该方法流程的装置进行介绍。
首先,参阅图21,本申请提供的一种图形处理装置的结构示意图,该图形处理装置可以包括:
收发模块2101,用于获取第一操作,所述第一操作为针对电子设备的显示屏的操作;
处理模块2102,用于响应于所述第一操作,生成用户接口UI动画,所述UI动画包括多帧图像。所述多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到,所述流体粒子运动模型包括模拟流体的粒子运动的物理模型。
在一种可能的实施方式中,显示模块2103,用于在显示界面中播放所述UI动画,其中,在播放所述多帧图像时,所述多帧图像中多个像素点的像素值的变化形成响应于所述第一操作的流体粒子运动。
在一种可能的实施方式中,所述流体粒子运动模型用于模拟多个粒子响应于所述第一操作发生流体粒子运动,所述多个粒子与所述多帧图像中的像素点具有关联关系。
在一种可能的实施方式中,所述处理模块2102,具体用于响应于所述第一操作,对所述流体粒子运动模型进行仿真计算处理,输出仿真计算结果,所述仿真计算结果包括所述多个粒子的位置信息,所述仿真计算结果指示所述流体粒子运动模型模拟所述多个粒子响应于所述第一操作发生流体粒子运动的运动结果;
所述处理模块2102,具体用于根据所述仿真计算结果,生成所述UI动画。
在一种可能的实施方式中,所述处理模块2102,具体用于根据所述仿真计算结果,生成所述多帧图像,其中,所述多帧图像分别对应所述仿真计算处理的过程中多个时刻输出的所述仿真计算结果;
所述处理模块2102,具体用于根据所述多帧图像,生成所述UI动画,其中,所述UI动画的帧率与所述仿真计算处理的过程中输出所述仿真计算结果的周期具有关联关系。
在一种可能的实施方式中,所述处理模块2102,具体用于响应于所述第一操作,从所述流体粒子运动模型模拟的多个粒子中确定第一集合,所述第一集合包括的至少一个粒子,所述流体粒子运动模型模拟所述第一集合包括的粒子响应于所述第一操作发生运动;
所述处理模块2102,具体用于响应于所述第一操作,确定所述第一集合中粒子的受力情况和运动速度;
所述处理模块2102,具体用于根据所述第一集合中所述粒子的受力情况和运动速度,更新所述流体粒子运动模型模拟的所述多个粒子的位置信息,输出所述仿真计算结果。
在一种可能的实施方式中,所述处理模块2102,具体用于根据所述第一操作,确定第一区域,所述第一区域为所述第一操作对应于所述电子设备的所述显示界面的区域;
所述处理模块2102,具体用于根据所述第一区域,确定第一像素点集合,所述第一像素点集合包括的像素点为所述第一区域中的像素点;
所述处理模块2102,具体用于根据所述第一像素点集合,从所述流体粒子运动模型模拟的所述多个粒子中确定所述第一集合,所述第一集合包括的粒子与所述第一像素点集合包括的像素点具有对应关系。
在一种可能的实施方式中,所述处理模块2102,还用于初始化所述多个粒子中每个粒子的属性,所述粒子的属性包括以下一项或多项信息:
所述粒子的位置信息、所述粒子的质量、所述粒子的速度、所述粒子的加速度、所述粒子的阻尼系数,所述粒子的亮度值,所述粒子的灰度值,或者所述粒子的颜色值。
在一种可能的实施方式中,所述处理模块2102,还用于选取所述显示界面;
所述处理模块2102,还用于获取所述显示界面中像素点的像素值;
所述处理模块2102,还用于获取第一映射关系,所述第一映射关系为所述流体粒子运动模型模拟的所述多个粒子与所述显示界面包括的像素点之间的映射关系;
所述处理模块2102,还用于根据所述第一映射关系,确定所述多个粒子中粒子的像素值,其中,所述粒子的像素值与所述粒子对应的像素点的像素值相关。
在一种可能的实施方式中,所述处理模块2102,还用于根据第二映射关系,将所述仿真计算结果指示的所述多个粒子的像素值映射至所述显示界面,使得所述显示界面播放所述UI动画,其中,所述第二映射关系指示所述仿真计算结果包括所述多个粒子与所述显示界面包括的像素点的映射关系。
在一种可能的实施方式中,电子设备的所述显示界面包括以下任意一项或多项:
所述电子设备的桌面,所述电子设备的屏幕保护界面,所述电子设备的图片编辑界面,所述电子设备的视频编辑界面,或者,所述电子设备的菜单界面。
在一种可能的实施方式中,所述第一操作为针对所述电子设备的显示屏的触摸操作;
所述触摸操作包括以下一项或多项:点击操作,或者,滑动操作。
在一种可能的实施方式中,所述收发模块2101,还用于姿态变化信息;
所述处理模块2102,还用于根据所述姿态变化信息,确定所述第一操作;
其中,所述姿态变化信息,包括用户的姿态变化信息,和/或所述电子设备的姿态变化信息;
所述用户的姿态变化信息,包括以下任意一项或多项:
手势运动信息,眼球运动信息,躯干运动信息,或者,腿部运动信息。
在一种可能的实施方式中,所述收发模块2101,用于向云终端发送所述UI动画,所述云终端用于在虚拟桌面中播放所述UI动画。
请参阅图22,本申请提供的另一种图形处理装置的结构示意图,如下所述。
该图形处理装置可以包括处理器2201和存储器2202。该处理器2201和存储器2202通过线路互联。其中,存储器2202中存储有程序指令和数据。
存储器2202中存储了前述图4-图5中的步骤对应的程序指令以及数据。
处理器2201用于执行前述图4图5中任一实施例所示的方法步骤。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有程序,当其在计算机上行驶时,使得计算机执行如前述图4-图5所示实施例描述的方法中的步骤。
可选地,前述的图22中所示的图形处理装置为芯片。
本申请实施例还提供了一种图形处理装置,该图形处理装置也可以称为数字处理芯片或者芯片,芯片包括处理单元和通信接口,处理单元通过通信接口获取程序指令,程序指令被处理单元执行,处理单元用于执行前述图4-图5中任一实施例所示的图的方法步骤。
本申请实施例还提供一种数字处理芯片。该数字处理芯片中集成了用于实现上述处理器2201,或者处理器2201的功能的电路和一个或者多个接口。当该数字处理芯片中集成了存储器时,该数字处理芯片可以完成前述实施例中的任一个或多个实施例的方法步骤。当该数字处理芯片中未集成存储器时,可以通过通信接口与外置的存储器连接。该数字处理芯片根据外置的存储器中存储的程序代码来实现上述实施例中电子设备执行的动作。
本申请实施例中还提供一种包括计算机程序产品,当其在计算机上行驶时,使得计算机执行如前述图4-图5所示实施例描述的方法中电子设备所执行的步骤。
本申请实施例提供的电子设备可以为芯片,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使服务器内的芯片执行上述图4图5所示实施例描述的图形界面处理方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述无线接入设备端内的位于所述芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。
具体地,前述的处理单元或者处理器可以是中央处理器(central processingunit,CPU)、网络处理器(neural-network processing unit,NPU)、图像处理器(graphicsprocessing unit,GPU)、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)或现场可编程逻辑门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者也可以是任何常规的处理器等。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
最后应说明的是:以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (35)
1.一种图形界面处理方法,其特征在于,包括:
获取第一操作,所述第一操作为针对电子设备的显示屏的操作;
响应于所述第一操作,生成用户接口UI动画,所述UI动画包括多帧图像;
所述多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到,所述流体粒子运动模型包括模拟流体的粒子运动的物理模型。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在显示界面中播放所述UI动画,其中,在播放所述多帧图像时,所述多帧图像中多个像素点的像素值的变化形成响应于所述第一操作的流体粒子运动。
3.根据权利要求1或2所述的方法,其特征在于,所述流体粒子运动模型用于模拟多个粒子响应于所述第一操作发生流体粒子运动,所述多个粒子与所述多帧图像中的像素点具有关联关系。
4.根据权利要求3所述的方法,其特征在于,响应于所述第一操作,生成所述UI动画,包括:
响应于所述第一操作,对所述流体粒子运动模型进行仿真计算处理,输出仿真计算结果,所述仿真计算结果包括所述多个粒子的位置信息,所述仿真计算结果指示所述流体粒子运动模型模拟所述多个粒子响应于所述第一操作发生流体粒子运动的运动结果;
根据所述仿真计算结果,生成所述UI动画。
5.根据权利要求4所述的方法,其特征在于,根据所述仿真计算结果,生成所述UI动画,包括:
根据所述仿真计算结果,生成所述多帧图像,其中,所述多帧图像分别对应所述仿真计算处理的过程中多个时刻输出的所述仿真计算结果;
根据所述多帧图像,生成所述UI动画,其中,所述UI动画的帧率与所述仿真计算处理的过程中输出所述仿真计算结果的周期具有关联关系。
6.根据权利要求4或5所述的方法,其特征在于,响应于所述第一操作,对所述流体粒子运动模型进行所述仿真计算处理,输出所述仿真计算结果,包括:
响应于所述第一操作,从所述流体粒子运动模型模拟的多个粒子中确定第一集合,所述第一集合包括的至少一个粒子,所述流体粒子运动模型模拟所述第一集合包括的粒子响应于所述第一操作发生运动;
响应于所述第一操作,确定所述第一集合中粒子的受力情况和运动速度;
根据所述第一集合中所述粒子的受力情况和运动速度,更新所述流体粒子运动模型模拟的所述多个粒子的位置信息,输出所述仿真计算结果。
7.根据权利要求6所述的方法,其特征在于,响应于所述第一操作,从所述流体粒子运动模型模拟的所述多个粒子中确定所述第一集合,包括:
根据所述第一操作,确定第一区域,所述第一区域为所述第一操作对应于所述电子设备的所述显示界面的区域;
根据所述第一区域,确定第一像素点集合,所述第一像素点集合包括的像素点为所述第一区域中的像素点;
根据所述第一像素点集合,从所述流体粒子运动模型模拟的所述多个粒子中确定所述第一集合,所述第一集合包括的粒子与所述第一像素点集合包括的像素点具有对应关系。
8.根据权利要求3-7中任一项所述的方法,其特征在于,所述方法还包括:
初始化所述多个粒子中每个粒子的属性,所述粒子的属性包括以下一项或多项信息:
所述粒子的位置信息、所述粒子的质量、所述粒子的速度、所述粒子的加速度、所述粒子的阻尼系数,所述粒子的亮度值,所述粒子的灰度值,或者所述粒子的颜色值。
9.根据权利要求3-8中任一项所述的方法,其特征在于,所述方法还包括:
选取所述显示界面;
获取所述显示界面中像素点的像素值;
获取第一映射关系,所述第一映射关系为所述流体粒子运动模型模拟的所述多个粒子与所述显示界面包括的像素点之间的映射关系;
根据所述第一映射关系,确定所述多个粒子中粒子的像素值,其中,所述粒子的像素值与所述粒子对应的像素点的像素值相关。
10.根据权利要求9所述的方法,其特征在于,在所述显示界面中播放所述UI动画,包括:
根据第二映射关系,将所述仿真计算结果指示的所述多个粒子的像素值映射至所述显示界面,使得所述显示界面播放所述UI动画,其中,所述第二映射关系指示所述仿真计算结果包括所述多个粒子与所述显示界面包括的像素点的映射关系。
11.根据权利要求1-10中任一项所述的方法,其特征在于,所述电子设备的所述显示界面包括以下任意一项或多项:
所述电子设备的桌面,所述电子设备的屏幕保护界面,所述电子设备的图片编辑界面,所述电子设备的视频编辑界面,或者,所述电子设备的菜单界面。
12.根据权利要求1-11中任一项所述的方法,其特征在于,所述第一操作为针对所述电子设备的显示屏的触摸操作;
所述触摸操作包括以下一项或多项:点击操作,或者,滑动操作。
13.根据权利要求1-12中任一项所述的方法,其特征在于,获取所述第一操作,包括:
获取姿态变化信息;
根据所述姿态变化信息,确定所述第一操作;
其中,所述姿态变化信息,包括用户的姿态变化信息,和/或所述电子设备的姿态变化信息;
所述用户的姿态变化信息,包括以下任意一项或多项:
手势运动信息,眼球运动信息,躯干运动信息,或者,腿部运动信息。
14.根据权利要求1-13中任一项所述的方法,其特征在于,所述方法还包括:
向云终端发送所述UI动画,所述云终端用于在虚拟桌面中播放所述UI动画。
15.一种图形处理装置,其特征在于,包括:
收发模块,用于获取第一操作,所述第一操作为针对电子设备的显示屏的操作;
处理模块,用于响应于所述第一操作,生成用户接口UI动画,所述UI动画包括多帧图像;所述多帧图像中像素点的像素值为根据所述第一操作和流体粒子运动模型计算得到,所述流体粒子运动模型包括模拟流体的粒子运动的物理模型。
16.根据权利要求15所述的图形处理装置,其特征在于,
显示模块,用于在显示界面中播放所述UI动画,其中,在播放所述多帧图像时,所述多帧图像中多个像素点的像素值的变化形成响应于所述第一操作的流体粒子运动。
17.根据权利要求15或16所述的图形处理装置,其特征在于,所述流体粒子运动模型用于模拟多个粒子响应于所述第一操作发生流体粒子运动,所述多个粒子与所述多帧图像中的像素点具有关联关系。
18.根据权利要求17所述的图形处理装置,其特征在于,
所述处理模块,具体用于响应于所述第一操作,对所述流体粒子运动模型进行仿真计算处理,输出仿真计算结果,所述仿真计算结果包括所述多个粒子的位置信息,所述仿真计算结果指示所述流体粒子运动模型模拟所述多个粒子响应于所述第一操作发生流体粒子运动的运动结果;
所述处理模块,具体用于根据所述仿真计算结果,生成所述UI动画。
19.根据权利要求18所述的图形处理装置,其特征在于,
所述处理模块,具体用于根据所述仿真计算结果,生成所述多帧图像,其中,所述多帧图像分别对应所述仿真计算处理的过程中多个时刻输出的所述仿真计算结果;
所述处理模块,具体用于根据所述多帧图像,生成所述UI动画,其中,所述UI动画的帧率与所述仿真计算处理的过程中输出所述仿真计算结果的周期具有关联关系。
20.根据权利要求18或19所述的图形处理装置,其特征在于,
所述处理模块,具体用于响应于所述第一操作,从所述流体粒子运动模型模拟的多个粒子中确定第一集合,所述第一集合包括的至少一个粒子,所述流体粒子运动模型模拟所述第一集合包括的粒子响应于所述第一操作发生运动;
所述处理模块,具体用于响应于所述第一操作,确定所述第一集合中粒子的受力情况和运动速度;
所述处理模块,具体用于根据所述第一集合中所述粒子的受力情况和运动速度,更新所述流体粒子运动模型模拟的所述多个粒子的位置信息,输出所述仿真计算结果。
21.根据权利要求20所述的图形处理装置,其特征在于,
所述处理模块,具体用于根据所述第一操作,确定第一区域,所述第一区域为所述第一操作对应于所述电子设备的所述显示界面的区域;
所述处理模块,具体用于根据所述第一区域,确定第一像素点集合,所述第一像素点集合包括的像素点为所述第一区域中的像素点;
所述处理模块,具体用于根据所述第一像素点集合,从所述流体粒子运动模型模拟的所述多个粒子中确定所述第一集合,所述第一集合包括的粒子与所述第一像素点集合包括的像素点具有对应关系。
22.根据权利要求17-21中任一项所述的图形处理装置,其特征在于,
所述处理模块,还用于初始化所述多个粒子中每个粒子的属性,所述粒子的属性包括以下一项或多项信息:
所述粒子的位置信息、所述粒子的质量、所述粒子的速度、所述粒子的加速度、所述粒子的阻尼系数,所述粒子的亮度值,所述粒子的灰度值,或者所述粒子的颜色值。
23.根据权利要求17-22中任一项所述的图形处理装置,其特征在于,
所述处理模块,还用于选取所述显示界面;
所述处理模块,还用于获取所述显示界面中像素点的像素值;
所述处理模块,还用于获取第一映射关系,所述第一映射关系为所述流体粒子运动模型模拟的所述多个粒子与所述显示界面包括的像素点之间的映射关系;
所述处理模块,还用于根据所述第一映射关系,确定所述多个粒子中粒子的像素值,其中,所述粒子的像素值与所述粒子对应的像素点的像素值相关。
24.根据权利要求23所述的图形处理装置,其特征在于,
所述处理模块,还用于根据第二映射关系,将所述仿真计算结果指示的所述多个粒子的像素值映射至所述显示界面,使得所述显示界面播放所述UI动画,其中,所述第二映射关系指示所述仿真计算结果包括所述多个粒子与所述显示界面包括的像素点的映射关系。
25.根据权利要求16-24中任一项所述的图形处理装置,其特征在于,所述电子设备的所述显示界面包括以下任意一项或多项:
所述电子设备的桌面,所述电子设备的屏幕保护界面,所述电子设备的图片编辑界面,所述电子设备的视频编辑界面,或者,所述电子设备的菜单界面。
26.根据权利要求16-25中任一项所述的图形处理装置,其特征在于,
所述第一操作为针对所述电子设备的显示屏的触摸操作;
所述触摸操作包括以下一项或多项:点击操作,或者,滑动操作。
27.根据权利要求16-26中任一项所述的图形处理装置,其特征在于,
所述收发模块,还用于姿态变化信息;
所述处理模块,还用于根据所述姿态变化信息,确定所述第一操作;
其中,所述姿态变化信息,包括用户的姿态变化信息,和/或所述电子设备的姿态变化信息;
所述用户的姿态变化信息,包括以下任意一项或多项:
手势运动信息,眼球运动信息,躯干运动信息,或者,腿部运动信息。
28.根据权利要求16-27中任一项所述的图形处理装置,其特征在于,
所述收发模块,用于向云终端发送所述UI动画,所述云终端用于在虚拟桌面中播放所述UI动画。
29.一种图形处理装置,其特征在于,包括一个或多个处理器,所述一个或多个处理器和存储器耦合,所述存储器存储有程序,当所述存储器存储的程序指令被所述一个或多个处理器执行时实现权利要求1至14中任一项所述的方法的步骤。
30.一种计算机可读存储介质,其特征在于,包括程序,当其被处理单元所执行时,执行如权利要求1至14中任一项所述的方法。
31.一种芯片,其特征在于,所述芯片包括处理单元和通信接口,所述处理单元通过所述通信接口获取程序指令,程序指令被所述处理单元执行,所述处理单元用于执行如权利要求1至14中任一项所述方法的步骤。
32.一种电子设备,其特征在于,所述电子设备用于执行如权利要求1至14中任一项所述方法的步骤。
33.根据权利要求32所述的电子设备,其特征在于,所述电子设备包括手机、眼镜、电视、车载设备、手表或者手环中的至少一种。
34.一种服务器,其特征在于,所述服务器用于执行权利要求1至14中任一项所述方法的步骤。
35.一种计算机程序产品,其特征在于,包括指令,当所述指令在计算机上运行时,使得计算机执行权利要求1-14中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211415388.2A CN118071893A (zh) | 2022-11-11 | 2022-11-11 | 一种图形界面处理方法以及装置 |
PCT/CN2023/128999 WO2024099206A1 (zh) | 2022-11-11 | 2023-11-01 | 一种图形界面处理方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211415388.2A CN118071893A (zh) | 2022-11-11 | 2022-11-11 | 一种图形界面处理方法以及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118071893A true CN118071893A (zh) | 2024-05-24 |
Family
ID=91031962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211415388.2A Pending CN118071893A (zh) | 2022-11-11 | 2022-11-11 | 一种图形界面处理方法以及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN118071893A (zh) |
WO (1) | WO2024099206A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105006009B (zh) * | 2015-07-02 | 2020-03-24 | 广东小天才科技有限公司 | 一种2d水体模拟方法 |
US10710579B2 (en) * | 2017-06-01 | 2020-07-14 | Waymo Llc | Collision prediction system |
CN109241465B (zh) * | 2018-07-19 | 2021-02-09 | 华为技术有限公司 | 界面显示方法、装置、终端及存储介质 |
CN110717269B (zh) * | 2019-10-10 | 2023-07-25 | 北方工业大学 | 一种基于网格和粒子耦合的流体表面细节保护方法 |
CN110930487A (zh) * | 2019-11-29 | 2020-03-27 | 珠海豹趣科技有限公司 | 一种动画实现方法及装置 |
CN112270732B (zh) * | 2020-11-17 | 2024-06-25 | Oppo广东移动通信有限公司 | 粒子动画的生成方法、处理装置、电子设备和存储介质 |
-
2022
- 2022-11-11 CN CN202211415388.2A patent/CN118071893A/zh active Pending
-
2023
- 2023-11-01 WO PCT/CN2023/128999 patent/WO2024099206A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024099206A1 (zh) | 2024-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021027747A1 (zh) | 一种界面显示方法及设备 | |
WO2020244492A1 (zh) | 一种投屏显示方法及电子设备 | |
WO2021057830A1 (zh) | 一种信息处理方法及电子设备 | |
CN115473957B (zh) | 一种图像处理方法和电子设备 | |
WO2020221063A1 (zh) | 切换父页面和子页面的方法、相关装置 | |
US11762529B2 (en) | Method for displaying application icon and electronic device | |
CN113254120B (zh) | 数据处理方法和相关装置 | |
CN115623115B (zh) | 一种跨设备创建应用快捷方式的方法、设备、系统及存储介质 | |
CN112527174B (zh) | 一种信息处理方法及电子设备 | |
WO2021000841A1 (zh) | 一种生成用户头像的方法及电子设备 | |
WO2023030099A1 (zh) | 跨设备交互的方法、装置、投屏系统及终端 | |
CN113986002B (zh) | 帧处理方法、装置及存储介质 | |
WO2020155875A1 (zh) | 电子设备的显示方法、图形用户界面及电子设备 | |
WO2022161119A1 (zh) | 一种显示方法及电子设备 | |
WO2023066395A1 (zh) | 一种应用运行方法以及相关设备 | |
CN113961157A (zh) | 显示交互系统、显示方法及设备 | |
CN112383664A (zh) | 一种设备控制方法、第一终端设备及第二终端设备 | |
CN116048933A (zh) | 一种流畅度检测方法 | |
WO2021254113A1 (zh) | 一种三维界面的控制方法和终端 | |
CN115016697A (zh) | 投屏方法、计算机设备、可读存储介质和程序产品 | |
WO2022078116A1 (zh) | 笔刷效果图生成方法、图像编辑方法、设备和存储介质 | |
CN118071893A (zh) | 一种图形界面处理方法以及装置 | |
CN114690975B (zh) | 一种动效处理方法及相关装置 | |
WO2023202445A1 (zh) | 演示系统、方法、图形界面及相关装置 | |
CN118276716A (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 |