一种二维场景中实现坐标转换的方法和装置的制作方法

文档序号:6598857阅读:145来源:国知局
专利名称:一种二维场景中实现坐标转换的方法和装置的制作方法
技术领域
该发明涉及二维可视技术领域,更具体地,发明涉及二维场景中坐标转换技术。
背景技术
目前,数字场景技术被广泛应用于各种数字地图制作、虚拟场景制作和电脑游戏 场景制作等领域中。在二维数字场景中,不仅需要包含场景本身如地图、地表等表式地 理位置的信息数据,还会包括各种依附于该场景的各种二维可视对象,如地图中的建筑、汽 车或者游戏场景的人物角色等;在二维数字场景中,对场景中地点的定位和对象的摆放位 置都是通过坐标系统来完成的。当场景中对象的位置需要发生变化时,特别的当此种变化 不能直接由改变对象的二维坐标来实现,比如在二维场景中某个对象需要进行高度值的变 化;或者是观察者从另外一个角度观察场景等,需要将整个场景进行缩小,此种情况下需将 场景中的所有对象的坐标进行转换;这都涉及到二维场景中对象的坐标转换技术。根据二维场景的传统渲染方法,要实现场景的放大或者缩小操作只能通过使用计 算机处理器对场景坐标系统和可视对象坐标做大量计算来完成。传统方法需要计算机处理 器不断的根据改变参数计算出场景对象和其他对象之间的缩放比及每个对象所处位置的 坐标值,再通过计算机显示设备反复输出结果来实现。这样的实现方法有两个缺点,一是造 成计算机处理器的运算量大,二是如果二维场景中上的物品很多,在缩放的同时也要保证 他们之间的关系(如,大小比例,相对距离等)保持不变,这种传统实现方法在实际操作中 非常复杂,而其很容易造成场景中对象资源的扭曲或者变形等。如果二维对象和场景对象 不是相互独立,则在场景实时转换过程中,这一问题将会更加突出,对象坐标的任何改变都 将会使计算机处理器重新计算所有的坐标值并强制刷新所有的场景,这将造成计算机硬件 资源的极大浪费。

发明内容
为了解决以上及其他相关问题,本发明使用了在二维场景中引入多个图层对象来 进行坐标转换的方法。本发明可以有效的解决现有技术中存在的问题。本发明所提供的坐 标转换方法包含以下步骤1. 二维场景或者二维场景中的二维可视对象通过计算机输入设备或者其他输入 终端或者通过某一网络服务器发送的消息等方式获取到进行坐标转换的指令;二维场景中 的相关装置通过对指令的分析将该指令转换为二维场景可识别的坐标转换参数;2.指令分析得到的参数作用于对场景中对象坐标的转换之前,需要对该坐标参数 数据进行检测,以判断该坐标转换参数是否具有合理性。3.根据坐标转移参数,为二维场景创建一个新的图层;新图层的坐标系统与原场 景中的坐标系统相同或者有映射关系,并且该图层可以用于表示场景的状态;4.对二维场景或者该场景中的二维可视对象执行转换操作,将二维可视对象从旧 图层之中移除,并根据图层与场景之间的坐标映射关系计算出新图层中对应的坐标值,将 该对象添加到所述图层的该坐标值位置之上中;
5.根据坐标转换的指令,将新创建的图层激活为显示设备的焦点显示视图,更新 二维场景、图层及二维场景和图层中的所有二维可视对象的坐标和状态,并通过显示进行 设备输出。其中所述步骤1中的二维场景应当包含一个或者多个二维可视对象,该二维可视 对象独立于二维场景或者图层存在,并且每个二维可视对象都包含一个对象标识;其坐标 转换指令可以作用二维场景本身也可以作用域任一二维可视对象;其中所述步骤5中,对图层及对象的更新通过以下方式完成将所有进行坐标转 换的所述二维可视对象的标识列入一个待更新对象列表中,所述图层根据该待更新对象列 表对所述二维对象进行统一刷新。对应于上述方法,本发明还提供了一种用于实施该坐标转换方法的装置,该装置 包括指令获取单元,用于获取坐标转换的指令,该指令可来自计算机输入设备,如鼠标 的点击、移动或者键盘按键的响应等,也可能来自于计算机内部产生的信号或者是来自网 络接收到的指令信号;指令分析判断单元,用于分析由指令获取单元获取的指令,使该指令成为二维场 景中可以识别的坐标转换的参数数据;同时对该参数数据进行判断,以检查该坐标转移参 数对该场景是否具有合理性,如二维可视对象所移动的范围是否为二维场景的坐标范围之 内等;场景存储单元,用于存储相关的场景数据、图层数据信息及二维可视对象数据等; 其中包括的场景数据和图层数据包括场景与图层的坐标数据、场景与图层对象之间的映射 关系数据;其中的二维可视对象数据包括该二维对象在场景或者图层中的位置坐标数据及 二维对象的对象标识;管理控制单元,用于实现对二维场景中坐标系统的进行管理和坐标切换操作;该 单元根据指令分析控制单元获得坐标转移数据对二维场景、图层和二维可视对象进行控 制,执行删除二维对象、添加对象和激活新图层等操作;显示单元,用于显示二维场景、二维可视对象和图层对象;该单元将场景存储单元 中处于激活状态的图层数据作为焦点视图进行输出显示,其余所述图层对象以及二维场景 可以作为辅助视图进行显示输出。根据本发明提供的方法与装置,通过引入创建图层进行坐标转换的方法,能够对 二维场景中的二维可视对象进行各种坐标转换操作,改变对象和场景之间的依赖关系,使 二维可视对象在场景的不同状态之间无需通过繁琐的过程就可以进行自由的转换;采用本 发明所提供的方法,操作简单,降低了对计算机硬件系统性能的依赖。


图1为本发明实施例的技术方案示意图;
图2为本发明实施例的流程图;图3为本发明实施例中图层创建的流程图;图4为本发明实施例中二维可视对象转换的流程图;图5为本发明实施例的装置图;具体实施方案为使本发明的目标、技术方案和优点更加清楚,下面将结合附图对本发明作进一 步的详细描述。图1展示了本发明的实施例示意图;图1中,对象101代表二维场景,对象102为 该场景中处于位置A的二维可视对象,现根据指令需将对象102转移至位置B处,其中位置 B与位置A不在一个水平位置;根据本发明所提供的方法,为了能够实现对象102的转移,在位置B处创建一个新 的图层对象103 ;对象103和原对象101之间具有坐标映射关系,通过该映射关系计算出对 象101转移后的位置应该为对象103中的位置B处;将对象102从对象101中移除,添加到对象103的位置B处,完成对象102的坐标 切换过程;同时,在图1所示的实施例中,可以通过对象101和对象103来定义为该实施例中 场景的状态。通过对象101和对象103之间的视图切换可以来完成场景状态的改变;以上示意图是本发明提供的坐标转换方法中的一种方法实施示意图,对对象的数 量、转换坐标的位置以及如何创建图层、图层与场景之间是何种坐标映射关系等均不做限 定,只需满足本发明思想和基本实施方法即可。图2为本发明实施的流程图,更具体的描述了这一方法实施的步骤步骤201 通过输入设备输入坐标转换指令,其中输入设备可以为鼠标、键盘也可 以为网络终端等;而输入坐标转换指令可以通过对鼠标的点击、鼠标的移动、键盘的按键或 者是网络终端通过网络发送的输入指令等方式完成;步骤202 获取坐标转换指令,通过对步骤201中所述的鼠标点击和鼠标移动的捕 捉或者键盘按键的响应分析及对网络传输指令数据的接收等方式获取坐标转换指令;步骤203 对坐标转换指令进行分析以获取坐标转换参数;由于输入设备发送的 指令只能直接被计算机所识别,却无法让场景信息或者可视对象所识别,因此需要对该坐 标转换指令进行分析,提取出坐标转换参数,如要操作的二维可视对象的对象标识或者该 二维可视对象所要转移的位置坐标信息等;步骤204 判断坐标转换参数是否合理;输入设备输入的坐标转换参数有可能会 超出二维场景或者图层所能包含的坐标域,如坐标转换指令要求将某一二维可视对象移 动到二维场景的坐标域范围之外;该步骤所执行的判断完成后,根据判断结果进行分别执 行不同的步骤,如果输入参数合理则执行步骤205 ;否则执行步骤206 ;步骤205 坐标转换失败,由于输入设备输入的坐标转换参数的不合理性导致本 次坐标转换过程失败;步骤206 为二维场景创建新的图层并建立二维场景与该图层之间的坐标映射关 系,创建的图层与原场景坐标系相同或者具有映射关系,该图层还可以包含其他信息用于 表示该二维场景的状态。通过该映射关系,可以计算出对象要转换到所述新图层中的坐标 位置;步骤207 将相应二维对象从二维场景中转移至新图层中,即将对象从所述二维 场景中移除,在新图层所对应的坐标位置上添加该二维可视对象;
步骤208 更新显示图层对象,将所有进行坐标转换的所述二维可视对象的标识 列入一个待更新对象列表中,所述图层根据该待更新对象列表对所述二维对象进行统一刷 新;步骤209:结束转换流程。其中步骤204中,判断输入坐标转换参数是否合理可以根据二维场景的具体信息 进行定义;判定为不合理的条件可以包括如下类似情况二维场景中的对象所要转换的位 置超过了二维场景所拥有的区域范围,如某一二维场景的尺寸为1200*800,其X轴坐标 范围为0至1200,Y轴坐标范围为0至800,但在某一时刻接收到的指令要求将该二维场 景中的某一个二维可视对象转换至该二维场景中的坐标点(1300,900)位置,由于坐标点 (1300,900)不在二维场景的坐标系范围之内,因此则可判定该坐标转换指令为不合理指 令;又如,二维场景中而为对象所要转换的位置点包含了其他对象如建筑物、障碍物等而不 能再放置其他对象,因此无法实现将该对象移动到该位置的操作,这种情况下也可以判定 为该指令为不合理指令;其余的情况可以根据用户的需求或者场景的要求进行定义,不局 限于所列范围之内。更具体的,步骤206中图层创建操作的具体步骤如图3所示步骤301 确定二维场景以及二维场景所需要的状态;步骤302 根据场景所需状态创建相应的图层;步骤303 为新的图层确立坐标系;步骤304 在场景和图层之间确立坐标映射关系;其中步骤301中,二维场景所需要的状态代表的含义是指二维场景根据指令指定 的另外一种表现形式,这种表现形式通过场景的各种参数,如二维场景的观察者处于的观 察角度、场景的尺寸、场景的时间状态等进行定义。该实施例中我们通过观察者视角定义二 维场景状态假设所述场景最初的状态是观察者所处的观察高度接近该场景具有的高度, 并且观察者以向下斜视45度的角度进行观察的状态,我们将该状态定义为场景的近景观 察状态;根据输出设备发出的指令,现在需要将观察者所处于的位置提升一定的高度,且观 察角度保持不变,我们该状态定义为场景的远景观察状态;通过对指令的分析可以确定该 场景需要添加一个新的远景观察状态的图层;确立需要添加的图层状态信息后,将该图层 信息输出为图层创建设备所能够接收的参数数据,该参数数据将包含图层的尺寸、像素值、 图层中所含有的对象等图层创建所需要的全部信息;其中步骤302将根据参数数据创建出图层对象;图层的具体参数信息由步骤301 提供;其中步骤303中,为新建的图层建立坐标系;坐标系不仅用于确定图层的位置,还 用于确定与二维场景坐标系之间的坐标映射关系;图层坐标系的建立可以采用下面的方式 进行该坐标系可以与图层的像素值一致,即一像素代表坐标的一个单位;假设图层的像 素尺寸为800*600,则图层的坐标系则可以从某一顶点开始,比如左上顶点为起始点坐标 (0,0),而右下顶点为结束坐标(800,600),其余顶点根据图层的像素在图层中均勻分布;其中步骤304中,建立坐标映射关系可采用下面的方式进行假设场景的坐标系 的长度和宽度值为和Ws,新创建的图层长度和宽度范围分别为!^和Wa。则新建图层 坐标0(新,¥新)与原场景图层的坐标(Xa,Ya)之间的坐标映射关系为X 新=(L 新/L场)*X 场;
7
Y新=(W新/W场)轉场;通过映射关系的公式,可以方便的计算得到原处于二维场景中对象的位置坐标其 所对应的在新图层位置的坐标值;更具体的,步骤207中,对二维可视对象进行转换操作的步骤可以按照如图4所示 的流程图完成步骤401 根据二维可视对象的标识在场景信息中查找目标二维可视对象;步骤402 将目标二维可视对象保存至缓冲区,并读取该二维可视对象在二维场 景中的坐标值;步骤403 根据新建图层和二维场景的坐标映射关系计算目标二维可视对象在新 图层中的坐标值;步骤404 在二维场景信息中删除目标二维可视对象信息并在新图层中添加该二 维可视对象;步骤405 向显示模块发送消息,显示模块收到消息后,将对图层及二维可视对象 进行更新,并将相应的图层作为显示设备的主视图;对应于上述的实施例,为配合本发明所 提供的坐标转移的方法,本发明还提供了一种坐标转换的装置。图5展示了本发明实施例的装置图指令获取单元501,用于获取坐标转换的指令,该指令可来自与计算机输入设备, 如鼠标的点击、移动、拖动或者键盘按键的响应等,也可能来自于计算机内部产生的信号或 者是通过网络接收到的指令信号;指令分析判断单元502,用于分析由指令获取的单元获取的指令,使之成为可作用 于场景坐标转换的数据,并对该数据进行判断,以检查是否符合坐标变换的合理指令数据, 如二维对象所转换的范围是否超出场景的坐标范围等;管理控制单元503,用于对场景存储单元进行管理,根据指令分析控制单元获得坐 标转移数据对新图层和二维可视对象进行控制,执行删除二维对象、添加对象和激活新图 层等操作;场景存储单元504,用于存储相关的二维场景数据信息、图层数据信息及二维可视 对象信息;在场景存储单元中,可以为每个场景信息、图层数据信息或者二维可视对象信息 分配一个唯一的标示符,方便查找;显示单元505,用于显示二维场景和图层数据,并且负责对图层对象的激活及二维 可视对象的刷新显示;远景图层506,用于表示二维场景中远景观察状态;近景图层507,用于表示二维场景中近景观察状态;在该实施例装置图中,装置506与装置507分别用于表示二维场景不同状态,该图 层单元由场景装置504负责存储,并由管理控制单元进行管理,每个图层单元均含有一个 数字标识用于识别该单元。指令获取单元装置501中,更具体的,可针对不同的输入设备划分为多个监控单 元,用于监控相应设备发出的指令;如鼠标监控单元、键盘监控单元及网络接口监控单元 等;各单元可以相互独立但有使用相同的接口,以方便后续设备监控单元的添加或者删除 操作;
指令分析判断单元502中,也可以根据指令获取单元装置所划分的多个监控单元 提供相应的多个指令分析单元,用于解析来自不同装置输入的指令数据;各单元之间相互 独立,但解析后的数据则拥有相同的数据格式;管理控制单元503中,更具体的可以包含一个操作记录单元,用于保存管理控制 单元所执行操作的记录,便于完成查找操作、回滚操作和数据恢复操作等近一步的二维场 景及其场景对象控制任务;由本发明实施例可以看出,通过为二维场景添加图层及坐标映射关系的方式,实 现了一种在二维场景中坐标转换的方法,能够对二维场景中的二维可视对象进行各种坐标 转换操作,改变对象和场景之间的依赖关系,使二维可视对象在场景的不同状态之间无需 通过繁琐的过程就可以进行自由的转换;这种方法可广泛用于电子数字地图、虚拟场景创 建及二维游戏场景中,尤其可实现在二维游戏场景中,人物角色进行飞行、高度方向的移动 等领域;以上实施例的说明只是用于帮助理解本发明的方法及核心思想;同时,对于本领 域的一般技术人员,依据本发明的思想,在具体实施方式
及用用范围内会有改变之处。综上 所述,本说明书内容不应理解为对发明的限制。
权利要求
一种二维场景中实现坐标转换的方法,其特征在于,该方法是通过以下步骤实现的获取坐标转换的指令,将该指令转换为二维场景中可识别的坐标转换参数;根据所述坐标转移参数,为所述二维场景创建新的图层,并将该图层与所述二维场景之间建立坐标映射关系;对所述二维场景中的二维可视对象在所述图层和所述二维场景之间进行坐标转换操作,该坐标转换操作将所述二维可视对象添加到所述图层之中,并将所述二维可视对象从所述二维场景中移除;将所述图层激活为显示设备的当前显示视图,并且更新该图层中的所述二维可视对象的坐标和状态。
2.根据权利要求1所述的实现坐标转换的方法,其特征在于,所述二维场景中,能够包 含至少一个所述图层,并且该图层可以用于确定所述二维场景的状态。
3.根据权力要求1或者权利要求2中所述的实现坐标转换的方法,其特征在于,所述二 维场景中或所述图层中能够包含一个或者多个二维可视对象。
4.根据权利要求1所述的实现坐标转换的方法,其特征在于,所述二维可视对象与所 述图层及所述二维可视对象与所述二维场景在结构上相互独立且具有唯一的对象标识,并 且该二维可视对象可以在该图层和该二维场景之间、该图层和该二维场景中其他图层之间 进行坐标转换。
5.根据权利要求1所述的实现坐标转换的方法,其特征在于,还包括,在获取到所述坐 标转换参数后,将对该坐标转换参数进行检查,以判断该坐标转移参数是否超出坐标转换 的可操作范围。
6.根据权利要求1所述的坐标转换的方法,其特征在于,还包括,在对所述二维可视对 象在所述二维场景和所述图层之间进行坐标转换时,将根据该二维场景和图层之间的所述 坐标映射关系将该二维可视对象由该二维场景中的坐标点转移到所述图层中的对应坐标点上。
7.根据权利要求1中所述的实现坐标转换的方法,其特征在于,所述二维场景中的激 活是通过对所述图层的视图焦点切换完成。
8.根据权利要求1中所述的实现坐标转换的方法,其特征在于,在更新图层中的所述 二维可视对象的坐标和状态时,同时可以更新多个二维可视对象的坐标和状态。
9.根据权利要求1或者权力要求4或者权利要求8所述的坐标转换的方法,其特征在 于,还包括,对所述图层中的所述二维可视对象的坐标和状态进行更新是通过以下方式完 成的,将所有进行坐标转换的所述二维可视对象的对象标识列入一个待更新对象列表中, 所述图层根据该待更新对象列表对所述二维可视对象进行统一刷新。
10.一种在二维场景中实现坐标转换的装置,其特征在于,包括一个场景存储单元、管 理控制单元、指令获取单元、指令分析判断单元、场景显示单元;所述场景存储单元用于存储二维场景数据和图层数据及二维可视对象数据; 所述管理控制单元根据指令获取单元获得的所述指令信息对二维场景中坐标系统的 进行管理和坐标切换操作;所述指令获取单元用于获取坐标转换的指令信息;所述指令分析判断单元用于对所述指令进行分析并获取坐标转换数据参数,并对该数据参数的合理性进行检测;所述显示单元用于输出所述二维场景、所述图层及所述二维可视对象的可视化显示。
11.根据权利要求10所述的实现坐标转换的装置,其特征在于,所述二维场景数据和所述图层数据包含有坐标数据及所述二维场景与所述图层对象之间的映射关系数据;所述 二维可视对象数据包含该对象在所述场景或者所述图层中的位置坐标数据。
12.根据权利要求10所述的实现坐标转换的装置,其特征在于,所述二维场景单元存储的所述场景数据和图层数据可以用于定义所述二维场景的状态。
13.根据权利要求10所述的实现坐标转换的装置,其特征在于,所述显示单元将其中一个所述图层数据作为焦点视图进行显示输出,其余所述图层对象以及二维场景可以作为 辅助视图进行显示输出。
全文摘要
本发明提供了一种在二维场景中实现坐标转换的方法,该方法包括获取坐标转换的指令,将该指令转换为二维场景中可识别的坐标转换参数,根据所述坐标转移参数,为所述二维场景创建新的图层,并将该图层与所述二维场景之间建立坐标映射关系;对所述二维场景中的二维可视对象在所述新图层和所述二维场景之间进行坐标转换操作,并将所述二维可视对象从所述二维场景中移除,添加到所述新图层之中;将所述新图层激活为显示设备的当前图层,更新所述图层中的所述二维可视对象的坐标和状态。对应于该方法本发明还提供了一种转换坐标的装置,该装置包括场景存储单元、管理控制单元、指令获取单元、场景显示单元。
文档编号G06T3/00GK101799913SQ20101011936
公开日2010年8月11日 申请日期2010年3月8日 优先权日2010年3月8日
发明者温珍鹏 申请人:北京完美时空软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1