我想实现一个三角形网格的数据结构,如下所示:
|---|---|---|
| / | / | / |
|---|---|---|
| / | / | / |
|---|---|---|
所以每个方格单元都分成两个三角形。问题是我需要为每个单元格的每个边缘存储信息。我想要制作一个Object矩阵,每个对象包含5个变量(4个边缘+中间边缘)。但这意味着存在冗余,因为所有边缘都与其他一些单元格相同。 或者我可以制作一个边缘矩阵,但这意味着第一行将有3列,第二行为7,依此类推。
有更好的方法吗?不需要特定的编程语言,我可以使用OOP。
答案 0 :(得分:0)
我会使用两种结构:
- 一种" net"边缘,每个边缘保持其数据并链接到其相邻边缘
- 以某种三角形id作为键的地图,以及指向网络中三角形的3条边的指针作为值。