一个恶心的需求

问题描述:

  沿一条折线,按照等间距分幅查询沿线的面状建筑物分布,生成水平的分布图。

问题分析:

  折线段(档)和分幅中心线的关系有如下四种,第一档除外。

解决思路:

  首先通过缓冲区查询线路所有的建筑物,计算总共有多少个分幅,构造分幅对象数组。然后分块构造多边形进行相机检测,将该分幅内建筑物数据存储在对应索引的分幅对象数组。

  根据折线转折点构建循环,判断本档所在分幅数和前一档所在分幅数是否相同,分别记为m和n

  m=n相同,将本档数据全部存在索引n处,构建多边形,相交检测,同时将所有几何对象仿射变换,变成水平,存储在分幅对象中。

  m<>n不同,分三部分处理{

    本档向前所占据的分幅,构建多边形,相交检测,同时将所有几何对象围绕中心线仿射变换,变成水平,存储在分幅对象中。

    本档最后所占据的分幅,构建多边形,相交检测,同时将所有几何对象仿射变换,变成水平,存储在分幅对象中。

    本档分幅(整个分幅都在档内的分幅),构建多边形,相交检测,同时将所有几何对象仿射变换,变成水平,存储在分幅对象中。}

posted @   太一吾鱼水  阅读(338)  评论(2编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
历史上的今天:
2012-03-08 ArcEngine编辑功能(三)
点击右上角即可分享
微信分享提示