编辑: wtshxd | 2019-07-11 |
1 6] , 本文以方向变 化一致的视为同一s t r o k e , 即相邻两条线段的偏 斜角( 图2 ) 是否超过某一阈值, 若超过则分段;
不 超过, 则视为同一s t r o k e .本文主要采用8方位 示意化方法( 图3 ) , 即将s t r o k e投影映射到水平、 垂直、 对角线方位上.通过计算其方位角α 与{0°,45°,90°,135°,180°,225°,270°,315°}中任意角度α i 比较, 求最小值 m i n (α- α i ) (
1 ) 满足最小值时的α i 即为该 s t r o k e的方向. 由式(
1 ) 可知, 当两线段的偏斜角大于2 2.
5 ° 时, 归 为不同方向.因而本文将2 2.
5 ° 视为s t r o k e自动 划分阈值. 在示意化算法实现过程中, 笔者发现若遇到 道路交叉点这一特殊要素时, 往往情况复杂, 易引 起道路拓扑变化, 进而影响交叉点相连的数条线 段.因而, 本文对于交叉点, 将其视为 s t r o k e构 造划分的重要依据. 2.
2 s t r o k e移位投影、 拓扑检查 构造完成的stroke需进行移位处理. 由式(
1 ) 求得的新方位角α i, 根据式( 2) 采用投影的 方式对其进行方位判断后实现移位 α i=
0 ° 或1
8 0 ° 保持不变
4 5 ° 或3
1 5 ° 旋转4
5 ° ;
投影到水平位置, x 不便, y 为起始点y 值, 反旋转4
5 °
9 0 ° 或2
7 0 ° x 为起始点x 值, y 不变
1 3
5 ° 或2
2 5 ° 旋转到水平位置;
投影到水平位置, x 不变, y 为起始点y 值;
反旋转 ì ? í ? ? ? ? ? ? (
2 ) 以下以4
5 ° 投影为例进行说明.如图4, 线段 a 的新方位角为4
5 ° , 对其进行投影移位: 首先, 将a正方向旋转4
5 ° 至线段b;
然后将线段b 投影到 水平位置, x 不变, y 为起始点y 值, 成为线段c;
最后将线段c 反旋转4
5 ° 至线段d.线段d 即为 线段a 的新移位位置. 是否将某一s t r o k e位移至新的位置, 还需通 过拓扑检查, 判断新位置是否与原图发生拓扑冲 突, 若发生拓扑冲突, 需计算新的位置.本文涉及 的拓扑检查主要见参考文献[
1 7] , 其详细介绍了 拓扑关系一致性检查和新点位的计算. 图1 拓扑问题 F i g .
1 T o p o l o g i c a l p r o b l e m 图2 偏斜角 Fi g .
2 D e f l e c t i o na n g l e 图3 8方位示意化 F i g .
3 8 G d i r e c t i o ns c h e m a t i c 图4
4 5 ° 投影位移图 F i g .
4 4
5 °p r o j e c t i o na n dd i s p l a c e m e n tm a ........