[发明专利]一种实现水波纹特效的方法和装置无效
申请号: | 201010159883.2 | 申请日: | 2010-04-28 |
公开(公告)号: | CN101814006A | 公开(公告)日: | 2010-08-25 |
发明(设计)人: | 曹会通 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F3/048 | 分类号: | G06F3/048;G06F3/14 |
代理公司: | 北京派特恩知识产权代理事务所(普通合伙) 11270 | 代理人: | 蒋雅洁;王黎延 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 水波 特效 方法 装置 | ||
技术领域
本发明涉及消费类电子产品的视觉特效技术,尤其涉及一种实现水波纹特效的方法和装置。
背景技术
进入第三代移动通信技术(3G)时代,消费类电子产品越来越注重用户的体验。那些能给用户带来好的视觉感受的产品,比如苹果公司的iphone手机,往往能占据很大的市场。然而,移动终端等小型消费类电子产品受制于价格、产品体积等因素,其硬件的运算和处理能力是不能与台式机、工作站相比的,这就导致不能使用较大型的图像处理软件来实现精巧的图像,很难给用户在视觉感受上带来较好的体验。
在当前市面上流行的各种移动终端等电子产品中,待机界面或图片浏览界面,基本上都是静态的,不能和用户产生交互,用户体验效果不佳。
发明内容
有鉴于此,本发明的主要目的在于提供一种实现水波纹特效的方法和装置,实现界面显示的图片具有水波纹的视觉效果,并能与用户产生交互。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供的一种实现水波纹特效的方法,该方法包括:
在界面设定水波纹特效的矩形区域,获取所述矩形区域内的图像作为原图像;设置原图像所有像素的初始水波高度值及石头的参数;
在移动终端的界面上有点击发生时,以被点击的像素位置作为投石点,周期性产生下一帧驱动消息,在每次下一帧驱动消息产生时,获得下一帧图像各像素的水波高度值并记录;
根据下一帧图像各像素的水波高度值,获取像素偏移量,将原图像各像素按照像素偏移量重新进行位置排列得到下一帧图像,并显示。
上述方案中,所述获取像素偏移量,将原图像各像素按照像素偏移量重新进行位置排列得到下一帧图像,具体为:将每个像素的左右两个像素的水波高度值的差值右移指定位,作为水平偏移量,上下两个像素的水波高度值的差值右移指定位,作为垂直偏移量,下一帧图像中,每个像素都由该像素的坐标加上相应的水平偏移量和垂直偏移量后,所对应的原图像上的像素填充。
上述方案中,所述获得下一帧图像各像素的水波高度值并记录具体为:在第一次下一帧驱动消息产生时,根据投石点及设置的石头的大小,在石头覆盖范围内的像素的水波高度值由初始水波高度值与根据石头重量产生的水波高度值相加得到,其他像素的水波高度值仍为初始水波高度值,记录各像素的水波高度值;
在第一次以后的每次下一帧驱动消息产生时,对于当前帧图像每个位置的像素,取其周围的多个像素的水波高度值的和,右移指定位后,减去前一帧图像所述位置的像素的水波高度值,将得到的结果作为下一帧图像相应位置像素的水波高度值,并记录下一帧图像各像素的水波高度值。
上述方案中,当水波纹正在进行的同时,又有投石点出现时,该方法进一步包括:将当前帧图像各像素的水波高度值作为初始水波高度值,重新从第一次下一帧驱动消息产生时进行处理。
上述方案中,该方法进一步包括:设置帧计数器和跳帧条件,根据帧计数器对下一帧驱动消息的计数值,在满足跳帧条件时,跳过此次的下一帧驱动消息。
上述方案中,该方法进一步包括:产生水波蔓延的衰减效果,具体为:对每次得到的水波高度值不为0的像素对应的水波高度值都乘以一个小于1的系数。
上述方案中,该方法进一步包括:产生水波在边沿处弹回的效果,具体为:在将原图像各像素按照像素偏移量重新进行位置排列时,将加上像素偏移量后,超出矩形区域的坐标映射到矩形区域内,下一帧图像的相应位置的像素由映射到矩形区域内的坐标所对应的原图像的像素填充。
本发明提供的一种实现水波纹特效的装置,该装置包括:初始设置模块、投石处理模块、驱动消息模块、显示模块、存储模块、投石点模块;其中,
初始设置模块,用于在界面设定水波纹特效的矩形区域,获取所述矩形区域内的图像作为原图像;设置原图像所有像素的初始水波高度值及石头的参数;
投石点模块,用于获取移动终端界面上被点击的像素位置作为投石点,通知投石处理模块和驱动消息模块;
投石处理模块,用于获得下一帧图像各像素的水波高度值,并通知存储模块;
驱动消息模块,用于周期性产生下一帧驱动消息给显示模块;
显示模块,用于通知投石处理模块,并根据投石处理模块获得的下一帧图像各像素的水波高度值,获取像素偏移量,将原图像各像素按照像素偏移量重新进行位置排列得到下一帧图像;将得到的下一帧图像显示到界面;
存储模块,用于记录投石处理模块得到的水波高度值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010159883.2/2.html,转载请声明来源钻瓜专利网。