簡體   English   中英

遞歸構建十六進制網格

[英]Recursively building a hex grid

對於一個有趣的側面項目,我一直在嘗試構建一個生成“色調latus”的工具,它基本上是一個像這樣的十六進制網格:

只是為了添加娛樂,我想遞歸地生成這個網格。 所以基本上Node會有6個子節點存儲在一個數組中(第0個索引是左邊或最西邊的子節點然后順時針方向)。

我遇到的問題是遞歸函數,發現子項是否已作為另一個節點創建的一部分存在,如果是,則將現有節點添加到子數組而不是創建新節點作為子節點。

我試過給每個節點一個假的“xy”id並傳遞一個數組作為遞歸的一部分來查看是否存在大部分但不能擴展的東西,我覺得有一個聰明的產生這種我失蹤的方式。 有沒有人遇到這樣的問題?

您可以構建這樣的坐標系。

在此輸入圖像描述

所以每個網格(x,y)連接到(x-1,y),(x-1,y + 1),(x,y + 1),(x + 1,y + 1),(x + 1,y),(x + 1,y-1)和(x,y-1)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM