一种在地图中绘制动态海洋的方法及装置的制作方法

文档序号:6378011阅读:251来源:国知局

专利名称::一种在地图中绘制动态海洋的方法及装置的制作方法
技术领域
:本发明涉及计算机
技术领域
,尤其涉及一种在地图中绘制动态海洋的方法及装置。
背景技术
:FlashPlayer播放相应的视频流,同一画面中既有陆地也有海洋时,海洋部分并非静止不动,而是展现出波光起伏的动态效果,这种海陆同屏的动态场景可用于网页游戏开发或网站开发。众多网页游戏均运行于FlashPlayer之上,如果一款基于FlashPlayer的网页游戏需要在同一画面中既展现陆地也展现海洋,一般来说会采取静态渲染的方法,即把陆地和海面当成一个整体来渲染,缺点是海面将静止不动,相对于静态渲染,同屏海陆的动态渲染需要消耗更多计算机性能,因此显示效果和损耗性能上取得平衡是需要解决的问题。现有技术中,还没有实现基于FlashPlayer在同一画面中既出现陆地也出现动态海洋,且显示效果和损耗性能上取得平衡的技术。
发明内容本发明实施例提供了一种在地图中绘制动态海洋的方法及装置,用以在地图中绘制动态海洋,同时实现显示效果好,性能损耗低,加载文件体积小的。本发明实施例提供的在地图中绘制动态海洋的方法,包括根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片;将所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,所述基本单位地片的像素小于所述目标地片的像素;通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。本发明实施例提供的在地图中绘制动态海洋的装置,包括设置单元,用于根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片;拼贴单元,用于将所述设置单元设置的所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,所述基本单位地片的像素小于所述目标地片的像素;处理单元,用于通过遮罩操作将所述拼贴单元拼贴的所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。从以上技术方案可以看出,本发明实施例具有以下优点按照接收到的绘图指令,将绘制的地图的图层设置为上下两层,其中,将标识动态海洋的基本单位地片设置为上层图层,以在地图中显示动态海洋效果,该基本单位地片的体积较小,因此地图文件总体体积小,在系统中运行更顺畅,将标识海洋和陆地的完整地片设置为下层图层,将分辨率该标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,实现无接缝连续动态海洋效果,且适应不同大小陆地地表的处理,通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,以在所述绘制的地图中的海洋区域正确显示动态海洋,这样,在地图中显示动态海洋时,同时实现显示效果好,性能损耗低,加载文件体积小。为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为本发明实施例中在地图中绘制动态海洋的方法的一个实施例示意图;图2为本发明实施例中在地图中绘制动态海洋的方法的另一个实施例示意图;·图3为本发明实施例中在地图中绘制动态海洋的装置的一个实施例示意图;图4为本发明实施例中在地图中绘制动态海洋的装置的另一个实施例示意图。具体实施例方式下面结合附图和具体实施例进一步说明本发明实施例的技术方案,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例提供了一种在地图中绘制动态海洋的方法和装置,用于在显示效果好,性能损耗低,加载文件体积小的基础上,实现在地图中绘制动态海洋。请参见图1,本发明实施例中的在地图中绘制动态海洋的方法的一个实施例包括101、根据接收的绘制地图的指令,将绘制的地图设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片;绘图装置根据接收的绘制地图的指令,将绘制的地图设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片。进一步地,每一张地图都需要一个面积与整个地图相同的动态海洋的动画,播放大体积的动画文件将会严重消耗计算机性能,且在网络中传输数据的速度较慢,影响玩家体验,因此在绘制装置中预先设置标识动态海洋的基本单位地片,具体设置的基本单位地片的像素大小与系统实际应用过程相关,此处不作具体限定。102、将所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,所述基本单位地片的像素小于所述目标地片的像素;标识动态海洋的目标地片由标识动态海洋的基本单位地片拼贴而成,基本单位地片的像素小于目标地片的像素,一般地,目标地片像素为基本单位地片像素在行和列方向都成整倍数关系。需要说明的是,预先设置的基本单位地片的具体像素,既要方便拼贴目标地片,又要满足地图清晰度的要求,具体与实际应用过程相关,此处不再赘述。103、通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。为最终绘制完成的地图中的海洋区域中正确显示动态海洋效果,让海浪动画效果出现在海洋区域,而不是出现在岸上等非海洋区域,需要通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中。遮罩是指图片至少包含两个图层,以两个图层为例,上层为遮罩层,遮罩层用于遮盖与遮罩层相链接的图形中的对象,下层的为被遮罩层,在遮罩层和被遮罩层重叠的部分才显示被遮罩层的对象。即,在遮罩层中有颜色的部分是透明的,可以看到被遮罩层中相对应位置的对象,而没有颜色的地方是不透明的,看不到被遮罩层中相对应位置的对象,那么,可通过控制遮罩层某一区域有颜色或没有颜色,控制被遮罩层某一区域的对象可见或不可见。通过遮罩操作将标识动态海洋的目标地片显示在所述绘制的地图中,使得在该绘制的地图中的海洋区域正确显示动态海洋。输出绘制完毕的地图的数据,该绘制的地图中可显示动态海洋。需要说明的是,本发明实施例中的在地图中模拟动态海洋的方法,最佳应用场景是在FlashPlayer中制作网页时模拟动态海洋,也可以应用于其他有类似功能的设备中制作类似的动态网页,此处不作具体限定。本发明实施例中,按照绘图指令将绘制的地图的图层设置为上下两层,其中,将标识动态海洋的基本单位地片设置为上层图层,以在地图中显示动态海洋效果,该基本单位地片的体积较小,因此地图文件总体体积小,在系统中运行更顺畅,将标识海洋和陆地的完整地片设置为下层图层,将分辨率该标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,实现无接缝连续动态海洋效果,且适应不同大小陆地地表的处理,通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,以在所述绘制的地图中的海洋区域正确显示动态海洋,这样,在地图中显示动态海洋时,同时实现显示效果好,性能损耗低,加载文件体积小。为便于理解,下面以另一实施例详细说明本发明实施例中的在地图中绘制动态海洋的方法,请参阅图2,本发明实施例中的在地图中绘制动态海洋的方法的另一个实施例包括201、根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片,所述标识动态海洋的基本单位地片的格式为PNG格式,所述完整地片为JPG格式的图片;JPG(JointPhotographicExpertsGROUP)格式的图片的优势是压缩率高,极大的减少加载地图文件体积,但JPG格式的图片不支持半透明格式,不能放在地图的上层,所以为了不影响显示动态海洋效果,则将标识动态海洋的基本单位地片放在绘制的地图上层。通常表示动态效果的SWF(ShockWaveFlash)格式的文件体积较大,本实施例中,将地层的上层标识动态海洋的基本单位地片设置为流式网络图形格式(PNG,PortableNetworkGraphicFormat),减少加载地图文件体积。另一方面,标识海洋和陆地的完整地片的格式为JPG格式,此格式的优势是压缩率高,极大的减少加载地图文件体积,但JPG格式的图片不支持半透明格式,不能放在地图的上层,所以为了不影响显示动态海洋效果,则将标识动态海洋的基本单位地片放在绘制的地图上层。进一步地,每一张地图都需要一个面积与整个地图相同的动态海洋的动画,播放大体积的动画文件将会严重消耗计算机性能,且在网络中传输数据的速度较慢,影响玩家体验,因此在绘制装置中预先设置标识动态海洋的基本单位地片,具体设置的基本单位地片的像素大小与系统实际应用过程相关,此处不作具体限定。根据接收的绘制地图的指令,绘图装置将绘制的地图设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片,所述标识海洋和陆地的地片为JPG格式的图片。202、根据所述基本单位地片的像素与所述目标地片的像素差,确定拼贴方式;基本单位地片的像素是一个基本拼贴单位,基本单位地片的像素小于目标地片的像素,需要说明的是,预先设置的基本单位地片的具体像素,既要方便拼贴目标地片,又要满足地图清晰度的要求,具体与实际应用过程相关,此处不再赘述。一般地,目标地片像素为基本单位地片像素在行和列方向都成整倍数关系,根据所述基本单位地片的像素与所述目标地片的像素差,确定拼贴方式,例如,标识动态海洋的基本单位地片的像素为500X500,当目标地片的像素为1000X1000时,需要将基本单位地片填满目标地片,则将基本单位地片横向平铺I次,再纵向平铺I次;当当目标地片的像素为5000X3000时,则将基本单位地片横向平铺10次,再纵向平铺6次,那么,不论填满目标地片尺寸大小,只需要预先设置基本单位地片,便可确定以何种方式将该基本单位地片的像素拼贴为该目标地片,极大地减少文件加载体积。203、通过执行CopyPixels函数将无缝化处理后的所述基本单位地片,无缝拼贴为所述目标地片;基本单位地片预先通过无缝化拼接方法进行处理,使得基本单位地片的上边界均可其下边界无缝衔接,基本单位地片的左边界均可与右边界无缝衔接,这样,无缝化处理后的基本单位地片可无缝拼贴为目标地片,该目标地片的格式也为PNG图片格式。基本单位地片拼贴为目标地片的方式有多种,例如可以直接将基本单位地片复制多份再拼贴在一起,但是为了优化系统处理性能,通过执行FlashPlayer应用程序编程接口(API,ApplicationProgrammingInterface)中的copyPixels函数进行拼贴,它为没有拉伸、旋转或色彩效果的图像之间的像素处理提供一个快速例程,最适合大面积的像素平铺,有助于减少计算机系统的性能损失。204、通过混合模式的擦除叠加操作将所述标识动态海洋目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。为最终绘制完成的地图中的海洋区域中正确显示动态海洋效果,让海浪动画效果出现在海洋区域,而不是出现在岸上等非海洋区域,需要通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,从而将动态海洋对应铺在地图中陆地地表正确区域显示呈现。遮罩是指图片至少包含两个图层,以两个图层为例,上层为遮罩层,遮罩层用于遮盖与遮罩层相链接的图形中的对象,下层的为被遮罩层,在遮罩层和被遮罩层重叠的部分才显示被遮罩层的对象。即,在遮罩层中有颜色的部分是透明的,可以看到被遮罩层中相对应位置的对象,而没有颜色的地方是不透明的,看不到被遮罩层中相对应位置的对象,那么,可通过控制遮罩层某一区域有颜色或没有颜色,控制被遮罩层某一区域的对象可见或不可见。在FlashPlayer中实现遮罩的方法有很多,但要实现地图尺寸的巨型遮罩,通过FlashPlayer中的混合模式BlendMode的擦除叠加实现遮罩效果,可避免计算机性能损耗过大。进一步地,在本实施例中标识动态海洋的基本单位地片是被遮罩层,其上层需要一个遮罩层,对该遮罩层的要求很简单,要有透明的像素,也要有不透明的像素,而不透明的像素的颜色并不重要,重要是它不透明。因此,依然采用支持半透明格式的PNG格式文件做遮罩层,满足有透明的像素,也要有不透明的像素的需求,同时,减少文件体积。通过混合模式的擦除叠加操作将所述标识动态海洋目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋,并输出绘制完毕的地图的数据,该绘制的地图中显示动态海洋。本发明实施中,将标识动态海洋的基本单位地片设置为上层图层,基本单位地片的格式为PNG图片格式,并且其遮罩层也是PNG格式,可进一步减小文件体积,通过执行CopyPixels函数将无缝化处理后的该基本单位地片,无缝拼贴为目标地片,使得目标地片显示效果更好,同时优化系统处理性能,通过混合模式的擦除叠加操作将该标识动态海洋目标地片显示在绘制的地图中,使得动态海洋对应铺在绘制的地图中陆地地表正确区域显示呈现,这样,在地图中显示动态海洋时,同时实现显示效果好,性能损耗低,加载文件体积小。下面介绍本发明实施例中的在地图中绘制动态海洋的装置,请参阅图3,本实施例中的在地图中绘制动态海洋的装置的一个实施例包括设置单元301,用于根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片;拼贴单元302,用于将设置单元301设置的所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,所述基本单位地片的像素小于所述目标地片的像素;处理单元303,用于通过遮罩操作将拼贴单元302拼贴的所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。本发明实施例中的在地图中绘制动态海洋的装置中各单元实现自身功能的具体过程,请参见前述图I所示实施例中的描述,此处不再赘述。本发明实施例中,设置单元301根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片,由于该基本单位地片的体积较小,因此地图文件总体体积小,在系统中运行更顺畅,拼贴单元302将所述标识动态海洋的基本单位地片拼贴为标识动态海洋的目标地片,实现无接缝连续动态海洋效果,且适应不同大小陆地地表的处理,处理单元303通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋,这样,在地图中显示动态海洋时,同时实现显示效果好,性能损耗低,加载文件体积小。下面详细描述本发明实施例中的在地图中绘制动态海洋的装置,请参阅图4,本实施例中的在地图中绘制动态海洋的装置的另一个实施例包括设置单元401,用于根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片;拼贴单元402,用于将设置单元401设置的所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,所述基本单位地片的像素小于所述目标地片的像素;处理单元403,用于通过遮罩操作将拼贴单元402拼贴的所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。进一步地,拼贴单元402可以进一步包括确定单元4021,用于根据所述基本单位地片的像素与所述目标地片的像素差,确定拼贴方式;无缝拼贴单元4022,用于通过CopyPixels函数将无缝化处理后的所述基本单位地片,无缝拼贴为所述目标地片。进一步地,处理单元403,具体用于通过混合模式的擦除叠加操作将所述标识动态海洋目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。其中,所述设置单元401设置的所述标识动态海洋的基本单位地片的格式为PNG格式,所述设置单元401设置的所述完整地片为JPG格式的图片。需要说明的是,本发明实施例中的在地图中绘制动态海洋的装置还可以进一步包括输出单元404,用于输出所述绘制的地图的数据,所述绘制的地图中显示动态海洋。本发明实施例中的在地图中绘制动态海洋的装置中各单元实现自身功能的具体过程,请参见前述图I和图2所示实施例中的描述,此处不再赘述。本发明实施例中,设置单元401根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片,所述标识动态海洋的基本单位地片的格式为PNG格式,所述标识海洋和陆地的完整地片为JPG格式的图片,拼贴单元402将所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,具体地,确定单元4021根据所述基本单位地片的像素与所述目标地片的像素差,确定拼贴方式,无缝拼贴单元4022通过CopyPixels函数将无缝化处理后的所述基本单位地片,无缝拼贴为所述目标地片,无缝拼贴为目标地片,使得目标地片显示效果更好,处理单元403通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,具体通过混合模式的擦除叠加操作将所述标识动态海洋目标地片显示在所述绘制的地图中,使得动态海洋对应铺在绘制的地图中陆地地表正确区域显示呈现,输出单元404输出所述绘制的地图的数据,所述绘制的地图中显示动态海洋,基本单位地片的格式为PNG图片格式,并且其遮罩层也是PNG格式,可进一步减小文件体积,这样,在地图中显示动态海洋时,同时实现显示效果好,性能损耗低,加载文件体积小。本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上对本发明所提供的一种在地图中绘制动态海洋的方法及装置进行了详细介绍,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。权利要求1.一种在地图中绘制动态海洋的方法,其特征在于,包括根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片;将所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,所述基本单位地片的像素小于所述目标地片的像素;通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。2.根据权利要求I所述的方法,其特征在于,所述将所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片包括根据所述基本单位地片的像素与所述目标地片的像素差,确定拼贴方式;通过执行CopyPixels函数将无缝化处理后的所述基本单位地片,无缝拼贴为所述目标地片。3.根据权利要求I或2所述的方法,其特征在于,所述通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋包括通过混合模式的擦除叠加操作将所述标识动态海洋目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。4.根据权利要求3所述的方法,其特征在于,所述标识动态海洋的基本单位地片的格式为PNG格式;所述完整地片为JPG格式的图片。5.根据权利要求I所述的方法,其特征在于,所述通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋之后包括输出所述绘制的地图的数据,所述绘制的地图中显示动态海洋。6.一种在地图中绘制动态海洋的装置,其特征在于,包括设置单元,用于根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片;拼贴单元,用于将所述设置单元设置的所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,所述基本单位地片的像素小于所述目标地片的像素;处理单元,用于通过遮罩操作将所述拼贴单元拼贴的所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。7.根据权利要求6所述的装置,其特征在于,所述拼贴单元包括确定单元,用于根据所述设置单元设置的所述基本单位地片的像素与所述目标地片的像素差,确定拼贴方式;无缝拼贴单元,用于通过CopyPixels函数将无缝化处理后的所述基本单位地片,无缝拼贴为所述目标地片。8.根据权利要求6或7所述的装置,其特征在于,所述处理单元,具体用于通过混合模式的擦除叠加操作将所述标识动态海洋目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。9.根据权利要求8所述的装置,其特征在于,所述设置单元设置的所述标识动态海洋的基本单位地片的格式为PNG格式;所述设置单元设置的所述完整地片为JPG格式的图片。10.根据权利要求9所述的装置,其特征在于,所述装置还包括输出单元,用于输出所述绘制的地图的数据,所述绘制的地图中显示动态海洋。全文摘要本发明实施例公开了一种在地图中绘制动态海洋的方法及装置,用于在显示效果好,性能损耗低,加载文件体积小的基础上,实现在地图中绘制动态海洋。本发明实施例方法包括根据接收的绘制地图的指令,将绘制的地图的图层设置为上下两层,其中,上层图层设置为标识动态海洋的基本单位地片,下层图层设置为标识海洋和陆地的完整地片,将所述标识动态海洋的基本单位地片,拼贴为标识动态海洋的目标地片,通过遮罩操作将所述标识动态海洋的目标地片显示在所述绘制的地图中,使得在所述绘制的地图中的海洋区域显示动态海洋。文档编号G06T13/60GK102881037SQ20121037040公开日2013年1月16日申请日期2012年9月28日优先权日2012年9月28日发明者徐文君,李剑锋,龙春燕申请人:深圳第七大道网络技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1