gpt4 book ai didi

algorithm - 不规则形状内的点

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:25:11 26 4
gpt4 key购买 nike

我绝不是专业程序员,所以请不要指望这里有复杂的方法或语言。但是,我将感谢您提出的建议和建议,以实现一种算法,在稍后阶段,我可以通过编程方式将其添加到我的项目中……问题在于:

想象空间中的任意点(点 X)具有以下属性:

  • 有坐标
  • 位于二维平面上
  • 是静止的
  • 在任何给定时间都属于一个区域(其边界坐标也是已知的)。即,它是其“父”元素的唯一“子”。同样,如果它不位于一个区域,它肯定位于另一个区域!

区域不是简单的正方形、四边形或圆形,而是不规则形状。

现在,我的问题是:我如何确定:(i) 如果点 X 位于该特定区域内而不是相邻区域;(ii) 该点属于哪个特定区域(在一组区域 A、B 或 C 中)?!?查看链接图像以更好地可视化问题:

PS:我仔细研究了处理 Point in Polygon 的可能性问题(特别是,“光线转换算法”听起来很聪明!)但它似乎不是解决方案,因为(i)区域可能彼此相邻; (ii) 我需要确定一个点所属的区域,而不是它位于其内部/外部。

非常感谢您!!!

最佳答案

程序员会这样做:

  1. 一个函数将一个区域数组和一个点作为参数。

  2. 制作一个循环 - 检查您的所有区域并检查每个区域

    通过光线转换算法检查点是否属于那里。

    如果没有,继续循环,

    如果是,则完成返回当前区域编号的函数。

  3. 如果你在区域之外,返回-1。

当然,你可以改进算法,考虑到共同的边界,而不是为它们重复计算角度,但这样的算法显然已经超出了你的可能性。即使是优秀的程序员也会从一些简单但有效的事情开始

关于algorithm - 不规则形状内的点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12332489/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com