回家,出发前夜,看完电影吃晚饭回到住处已近十一点,和同事扯了一会儿淡,正准备去睡觉,这哥们儿突然想起一个问题:

如何把相接的面搞出一个20cm的分隔带?因为两区划定项目数据质检要求不同的地块图斑间应有大于20cm的距离,而从其他数据转绘处理而来的地块图层面图斑是相接的,不同图斑种植年份不同所以不能进行合并。

他的打算线转面,然后找到图斑间的公共边,进行缓冲,然后对原图班进行擦除。

我反问他“如何确定图斑的公共边?”,一顿“批斗”。

他抛出这个问题的时候我便想到了找出图斑公共边的的方法以及整个流程的方案,大半夜的掏出电脑给这厮讲解了一下。

各位看官是否有好的解决方案,欢迎打脸。

step1 找出公共边

使用Intersect工具进行相交操作,out type输出类型选择line,相接图斑的公共边便会生成,如下图是“LQDK_Intersect”。

step2 生成缓冲区

对“LQDK_Intersect”进行缓冲操作,设定缓冲距离0.125m,双侧缓冲,终端类型是扁平矩形,缓冲区全部融合。生成“LQDK_Intersect_Buffer”。

step3 擦除

使用Erase工具用“LQDK_Intersect_Buffer”要素类擦除原“LQDK”要素类。得到“LQDK_Erase”要素类。

问题来了

由于缓冲形成的矩形端部相接处可能存在空隙,造成下图的情况。

restep 2换个方案 一侧缓冲

在left一侧缓冲0.25m,上图左侧问题基本改善(随机浏览未有发现问题)。

step4 再次使用Interset工具,辅助人工完善数据

使用Intersect工具对“LQDK_Erase”要素类如上图右侧可能存在的点接触问题进行相交操作,结果类型选“Point”。

根据结果逐个定位point进行人工编辑。

其实这个点很容易借助编程批量删掉。

ArcGis基础——相接面制造指定距离的分隔带的更多相关文章

  1. (转载)solr实现满足指定距离范围条件的搜索

    配置schema.xml <?xml version="1.0" encoding="UTF-8" ?> <schema name=" ...

  2. 一个ROS的服务,使机器人向前移动指定距离

    源代码有点长,放文末链接里了. 服务描述及代码现在的服务是:请求时携带要前进的距离,然后底盘前进相应距离.代码如下,改动很小: #!/usr/bin/env python import rospyfr ...

  3. Go基础系列:指定goroutine的执行顺序

    Go channel系列: channel入门 为select设置超时时间 nil channel用法示例 双层channel用法示例 指定goroutine的执行顺序 当关闭一个channel时,会 ...

  4. 算法基础:正整数指定规则排序问题(Golang实现)

    给定字符串内有非常多正整数,要求对这些正整数进行排序.然后返回排序后指定位置的正整数 排序要求:依照每一个正整数的后三位数字组成的整数进行从小到大排序 1)假设不足三位,则依照实际位数组成的整数进行比 ...

  5. jquery实现移动端页面加载后,向上滚动指定距离无效引起的探索

    效果如下,页面加载完后向上滚动一段距离 最近一同事询问用jquery为何无法实现上面效果,查看代码后发现代码并没写错,   也正确引入了zepto.js,也不是版本问题(因为是移动端项目,出于性能和需 ...

  6. ArcGis基础——动态显示面要素的面积值

    很基础,不赘述. 1.在catalog(目录)新建一个PersonalGeoDatabase(个人地理数据库),导入需要处理的Shapefile文件. 坐标系统,存储路径与命名根据自己需求设定 2.直 ...

  7. 原生js来写获取元素距离顶部距离,以及滚动条滚动指定距离和时间控制

    这是我在写vue项目里封装的一个公共js类 里面还有一些其他的方法,一并拿过来了 class Public { isDesktop(){ //判断是否为pc端 return (window.scree ...

  8. Python3基础 访问列表指定索引值的元素

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  9. Python3基础 count 返回指定元素在列表中的个数

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

随机推荐

  1. JS中的匿名函数、回调函数、匿名回调函数

    工欲善其事必先利其器 在学习JavaScript设计模式一书时,遇到了“匿名回调函数”这个概念,有点疑惑,查找了些资料重新看了下函数的相关知识点之后,对这个概念有了认识.九层之台,起于垒土.在熟悉这一 ...

  2. 测试微信小程序页面的生命周期

    前言:本人是一个初学者,也是第一次写博客,敲键盘的时候还不知道发布后是什么效果,希望内容给其他初学的同学一点帮助,同时加深自己的理解.这篇随笔讲的是Page页面的生命周期,在开发中是基础中的基础,很容 ...

  3. css文本内容大于内本显示框设置其显示方式

    1. <style type="text/css"> .text-ellipsis{ overflow: hidden;//隐藏滚动条 white-space: now ...

  4. shell将当前目录下所有的.txt文件更名

  5. Kotlin定义静态变量、静态方法

    Kotlin定义静态变量.静态方法kotlin定义静态变量.方法可以采用伴生对象companion object的方式. 经典例子,实例化Fragment. java写法: public class ...

  6. 【LeetCode】Recursion(共11题)

    链接:https://leetcode.com/tag/recursion/ 247 Strobogrammatic Number II (2019年2月22日,谷歌tag) 给了一个 n,给出长度为 ...

  7. Sass函数:Introspection 函数 -type-of()

    type-of() 函数主要用来判断一个值是属于什么类型: 返回值: number 为数值型. string 为字符串型. bool 为布尔型. color 为颜色型. >> type-o ...

  8. 为什么要用unittest

    '''为什么要使用单元测试框架?: 1.当用例很多的时候用来组织用例和执行用例 2.提供丰富的比较方法 3.提供丰富的日志''' import unittest import HTMLTestRunn ...

  9. phpstorm 开发php入门

    环境:ubuntu  phpstorm apache mysql 一.安装软件 安装apache服务器 https://i.cnblogs.com/EditPosts.aspx?postid=1113 ...

  10. markdown解析与着色

    markdown解析与着色 简介 最近在调整博客园博客样式,使用markdown发表的博客.这个不要太好用,有道云+markdown简直绝配,可以发在任何支持markdwon的博客网站,样式基本不会走 ...