GIS剖分数据模型研究

5 篇文章 1 订阅

论文作者 : 陈东

空间数据编码化计算


编码真实性计算

引入 JE(Code) 判断网格的真实性,1为假网格 0 为真网格
JE(Code)=ϵB1ϵL1ϵB2ϵL2ϵB3ϵL3
ϵB1=[(C11)(code_B23)]8;
ϵL1=[C1(code_L23)]>>8;
ϵB2=code_B928C2;
ϵL2=code_L928C2;
ϵB3=code_B1528C2;
ϵL3=code_L1528C2;
其中 C1=(10110100)2
   C2=(1111)2
  

逐个分析每个算子的作用:
ϵB1
     C1=(180)10code_B23     ,这里可以看出, 整个算法的思路是 如果纬向编码真实,即小于等于90°。则括号内的值小于 27=128 .继续右移八位后,结果为0,则网格为真。这里应当是利用了二进制减法中的补码原理1。 但就这一算法来讲,还存在问题,即没有考虑南北半球带来的符号位的问题。 应当增加一步消除符号位 更改过得算法如下
ϵB1=[(C11)(code_B124)]8;
ϵL1=[C1(code_L124)]8

以此类推 ϵB2ϵB3
对于分、秒 二者扩展规律相同。所以其判断规则应当类似。 这里发现,无效编码对应的为60,61,62,63 也就是二进制中的 111100 111101 111110 111111 。所以只需要筛选分、秒级编码 前四位为1111的 即为无效编码。 这里使用了异或运算符2进行判断(?)。所以在移位操作时,只需要先通过左移操作去除度级(分级)编码,再右移28位(要保留4位编码 32-4=28)。 其算法如上文所示。

针对异或运算 即保证了 如果二者相同 返回0 如果二者不同 返回1

以上就是对于 JE(Code) 的分析与修正

2. 位移运算

暂时思路为一次一个网格进行移动,每次移动后判断网格是否存在。若不存在,则继续移动,计数不变。若存在,计数加一。
可以看出位移运算较复杂,不适应当前计算需求。需要发展新的计算方法。

3.格网距离测算

定义算符 DisG
论文中给出的计算公式:
(ΔCB,ΔCL)=Dis1G(CodeACodeB)=(min_codeBcodeB=min_codeBϵB(codeB,min_codeLcodeL=min_codeLϵL(codeL)
应当是有问题的:
需要改为:
(ΔCB,ΔCL)=Dis1G(CodeACodeB)=(max_codeBcodeB=min_codeBϵB(codeB,max_codeLcodeL=min_codeLϵL(codeL)

其中 ϵ(code)=ϵ1ϵ2ϵ3

其思路是先统一得出所有横纵向格子 再进行筛选。
比较复杂。

其他解决思路

  • 能否通过加一个小余量进行判断?
    -能否通过重定义加减法的进制进行设计?

20160727
打卡


  1. 补码 第一步找原码,如果是负数,就在原码的基础上全部取反后加1
  2. 异或: 0 0 = 0, 1 0 = 1 0 1=1 1 1=0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值