Algorithm Marching-Squares算法的位移步长

Algorithm Marching-Squares算法的位移步长,algorithm,computational-geometry,Algorithm,Computational Geometry,我目前正在实施用于计算轮廓曲线的方法,我对此处提到的钻头移位的使用有疑问 在单元格的四个角组合4位以构建二进制索引:沿顺时针方向在单元格中漫游,将位附加到索引,使用按位或和左移,从左上角的最高有效位移动到左下角的最低有效位。生成的4位索引可以有16个可能值,范围为0–15 我将高度数据放置在每个顶点的角上指定的x,y处。然后,通过检查此高度数据是否大于或小于指定的等值线水平,将此高度数据转换为0和1。现在顶点不是0就是1。下一步的目的是什么,即通过顺时针方向遍历来计算4位索引?编写四位代码的目的

我目前正在实施用于计算轮廓曲线的方法,我对此处提到的钻头移位的使用有疑问

在单元格的四个角组合4位以构建二进制索引:沿顺时针方向在单元格中漫游,将位附加到索引,使用按位或和左移,从左上角的最高有效位移动到左下角的最低有效位。生成的4位索引可以有16个可能值,范围为0–15


我将高度数据放置在每个顶点的角上指定的x,y处。然后,通过检查此高度数据是否大于或小于指定的等值线水平,将此高度数据转换为0和1。现在顶点不是0就是1。下一步的目的是什么,即通过顺时针方向遍历来计算4位索引?

编写四位代码的目的只是识别配置,十六种情况中的一种


您完全可以使用四个嵌套的if/then/else语句。

您正在阅读的页面上的下一个要点告诉您该索引的用途。重点仍然是查找表包含答案,因此您需要一些可以作为该表索引的内容。E:虽然我认为第1步是不必要的冗长,并且包含了不相关的细节,但我们还是可以说连接位。@harold-好吧,我不明白。我在谷歌上搜索过,但我不清楚通过位移位计算二进制索引如何连接等高点。我有0和1,现在我正在稍微移动它们。它是如何让我找到相同高度的点的?那么你有一个数字。然后,该表在该数字的位置包含一个描述,说明在何处放置近似于等值线的线。@harold-为什么特别指定位移位?为什么不进行其他0和1的转换?用一个例子来说明这一点可能会有所帮助。