首页 > 其他 > 详细

基于ArcObject河流渐变效果实现

时间:2015-07-28 15:58:28      阅读:233      评论:0      收藏:0      [点我收藏+]

河流渐变效果效果,可以用ArcMap的制图表达功能实现河流渐变效果。

河流渐变实现需要河流要素包含起始宽度字段属性,和终止宽度字段属性。如下图所示

技术分享

本文主要是计算河流起始宽度值和终止宽度值小节。

原理:

技术分享

第一步:构建最短路径树即:所有边到选择边的河源口最短距离,,选择主干河流,即:所有边里面最长的距离。对于上图,边HG距离河源口最长,选为主干河流,遍历主干河流GH->HC->CB->BA。这里可应用树的最短路径,广度优先算法计算每条边距离河口源距离。

第二步:计算河流要素起始宽度值和终止宽度值,需要设置end:0.5;start:0.1;主干河流GH->HC->CB->BA总长LenghtMain; GH河流要素起点宽度为0.1;终止宽度:(BH的长度/LenghtMain)X(end - start) + start;CH的起点宽度为GH的终止宽度,GH的终止宽度同理可计算。

对于支流比如:BE河流同理计算。

第三步运用ArcMap制图表达功能制图,效果如下:

技术分享技术分享

主要注意的是:由于制图表达功能制图效果跟河流要素数字化方向有关,所以需要判断河流要素的起点,是否是河流源头方向,进行起始宽度和终止宽度的计算,即:对换!


版权声明:本文为博主原创文章,未经博主允许不得转载。

基于ArcObject河流渐变效果实现

原文:http://blog.csdn.net/wordtopzerg/article/details/47106219

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!