一种用于降低矢量多边形空间数据精度的方法及装置的制造方法_4

文档序号:9472186阅读:来源:国知局
得到偏移后的点坐标;
[0130]输出模块208,用于对矢量多边形空间数据中每个多边形的所有点数据进行偏移后,输出降低精度后的矢量多边形空间数据。
[0131]通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0132]本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0133]以上对本发明所提供的一种用于降低矢量多边形空间数据精度的方法及装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
【主权项】
1.一种用于降低矢量多边形空间数据精度的方法,其特征在于,包括: 打开矢量多边形空间数据文件,获取矢量多边形空间数据; 对所述矢量多边形空间数据进行有损压缩,得到只包含特征点的多边形压缩数据,对所述压缩数据中的每个多边形,分别获取所述多边形中的每一点的原始坐标; 根据所述原始点坐标生成伪随机种子,对所述伪随机种子与预设数据进行模运算,将得到的运算结果作为所述原始点的偏移方向; 利用伪随机种子生成随机数,且伪随机种子值相同的点坐标生成的随机数相同,根据预设精度对所述随机数进行缩放,将缩放后的随机数作为所述原始点的偏移距离; 根据所述偏移距离以及所述偏移方向对所述原始点坐标进行偏移,得到偏移后的点坐标; 对矢量多边形空间数据中每个多边形的所有点数据进行偏移后,输出降低精度后的矢量多边形空间数据。2.如权利要求1所述的方法,其特征在于,所述对所述矢量多边形空间数据进行有损压缩,得到只包含特征点的多边形压缩数据,具体包括: 对所述矢量多边形空间数据中每一条曲线,获取该曲线的起点和终点,计算该曲线起点和终点之间各个点分别到所述起点和所述终点连线的距离,并从中获取最大距离值;当所述最大距离值不小于预设距离限差时,将所述最大距离值对应的点作为特征点,并以该特征点为界,把该曲线分割为第一曲线和第二曲线,对所述第一曲线和所述第二曲线分别进行压缩,重复上述过程,依次获取每条曲线上的所有特征点,将其作为压缩后的数据。3.如权利要求1所述的方法,其特征在于,所述根据所述原始点坐标生成伪随机种子,具体包括: 将所述原始点坐标转换成第一数据类型的坐标; 根据预设精度对所述第一数据类型的坐标进行缩小范围处理,得到缩小范围后的点坐标; 将所述缩小范围后的点坐标中的X坐标与Y坐标合成为一个第二数据类型的数据; 判断所述第二数据类型的数据是否溢出; 如果所述第二数据类型的数据溢出,用所述缩小范围后的点坐标中的X坐标与Y坐标分别对预设大素数做求模运算,将得到的运算结果合成为一个第二数据类型的数据,作为伪随机种子; 如果所述第二数据类型的数据没有溢出,将所述第二数据类型的数据直接作为伪随机种子。4.如权利要求3所述的方法,其特征在于,所述根据预设精度对所述第一数据类型的坐标进行缩小范围处理,得到缩小范围后的点坐标,具体包括: 将所述第一数据类型的坐标中的X坐标与Y坐标分别对预设精度做除法运算,将运算结果的整数部分作为缩小范围后的点坐标。5.如权利要求3所述的方法,其特征在于,所述利用伪随机种子生成随机数,且伪随机种子值相同的点坐标生成的随机数相同,根据预设精度对所述随机数进行缩放,将缩放后的随机数作为所述原始点的偏移距离,具体包括: 根据伪随机种子调用随机数生成函数生成随机数; 判断所述随机数与预设精度数量级的大小关系; 如果所述随机数的数量级小于预设精度的数量级,将所述随机数与预设精度做乘法运算,得到的结果作为所述原始点的偏移距离; 如果所述随机数的数量级大于预设精度的数量级,将所述随机数与预设精度做除法运算,得到的结果作为所述原始点的偏移距离; 如果所述随机数的数量级等于预设精度的数量级,将所述随机数直接作为所述原始点的偏移距离。6.一种用于降低矢量多边形空间数据精度的装置,其特征在于,包括: 打开文件模块,用于打开矢量多边形空间数据文件,获取矢量多边形空间数据; 有损压缩模块,用于对所述矢量多边形空间数据进行有损压缩,得到只包含特征点的多边形压缩数据; 获取模块,用于对所述压缩数据中的每个多边形,分别获取所述多边形中的每一点的原始坐标; 生成种子模块,用于根据所述原始点坐标生成伪随机种子; 生成偏移方向模块,用于对所述伪随机种子与预设数据进行模运算,将得到的运算结果作为原始点的偏移方向; 生成偏移距离模块,用于利用伪随机种子生成随机数,且伪随机种子值相同的点坐标生成的随机数相同,根据预设精度对所述随机数进行缩放,将缩放后的随机数作为所述原始点的偏移距离; 偏移模块,用于根据所述偏移距离以及所述偏移方向对所述原始坐标进行偏移,得到偏移后的点坐标; 输出模块,用于对矢量多边形空间数据中每个多边形的所有点数据进行偏移后,输出降低精度后的矢量多边形空间数据。7.如权利要求6所述的装置,其特征在于,所述有损压缩模块,具体包括: 获取最大距离值子模块,用于对所述矢量多边形空间数据中每一条曲线,获取该曲线的起点和终点,计算该曲线起点和终点之间各个点分别到所述起点和所述终点连线的距尚,并从中获取最大距尚值; 曲线分割子模块,用于当所述最大距离值不小于预设距离限差时,将所述最大距离值对应的点作为特征点,并以该特征点为界,把该曲线分割为第一曲线和第二曲线,对所述第一曲线和所述第二曲线分别进行压缩,重复上述过程,依次获取每条曲线上的所有特征点,将其作为压缩后的数据。8.如权利要求6所述的装置,其特征在于,所述生成种子模块,具体包括: 类型转换子模块,用于将所述原始点坐标转换成第一数据类型的坐标; 缩小范围子模块,用于根据预设精度对所述第一数据类型的坐标进行缩小范围处理,得到缩小范围后的点坐标; 合成子模块,用于将所述缩小范围后的点坐标中的X坐标与Y坐标合成为一个第二数据类型的数据; 溢出判断子模块,用于判断所述第二数据类型的数据是否溢出; 溢出处理子模块,用于在所述第二数据类型的数据溢出时,用所述缩小范围后的点坐标中的X坐标与Y坐标分别对预设大素数做求模运算,将得到的运算结果合成为一个第二数据类型的数据,作为伪随机种子; 未溢出处理子模块,用于将所述第二数据类型的数据直接作为伪随机种子。9.如权利要求8所述的装置,其特征在于,所述缩小范围子模块,具体用于将所述第一数据类型的坐标中的X坐标与Y坐标分别对预设精度做除法运算,将运算结果的整数部分作为缩小范围后的点坐标。10.如权利要求8所述的装置,其特征在于,所述生成偏移距离模块,具体包括: 生成随机数子模块,用于根据伪随机种子调用随机数生成函数生成随机数; 精度判断子模块,用于判断所述随机数与预设精度数量级的大小关系; 数量级较小处理子模块,用于在所述随机数的数量级小于预设精度的数量级时,将所述随机数与预设精度做乘法运算,得到的结果作为所述原始点的偏移距离; 数量级较大处理子模块,用于在所述随机数的数量级大于预设精度的数量级时,将所述随机数与预设精度做除法运算,得到的结果作为所述原始点的偏移距离; 数量级相等处理子模块,用于在所述随机数的数量级等于预设精度的数量级时,将所述随机数直接作为所述原始点的偏移距离。
【专利摘要】本发明公开了一种用于降低矢量多边形空间数据精度的方法,首先对矢量多边形空间数据进行有损压缩,得到只包含特征点的多边形压缩数据,获取该多边形中的每一点的原始坐标;根据该原始点坐标生成伪随机种子,并通过将伪随机种子进行运算得到该原始点的偏移方向;利用伪随机种子生成随机数,并将该随机数缩放到预设的精度范围内;根据偏移距离以及偏移方向对该原始点坐标进行偏移,得到偏移后的点坐标;对矢量多边形空间数据中每个多边形的所有点数据进行偏移后,输出降低精度后的矢量多边形空间数据。
【IPC分类】G06T3/00
【公开号】CN105225200
【申请号】CN201510627741
【发明人】王勇, 廖洪艳, 刘珍伶
【申请人】中国地质大学(武汉)
【公开日】2016年1月6日
【申请日】2015年9月28日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1