#2d-grid #grid #2d #matrix #geometry

tapestry

通用的二维网格数据结构和工具

1个不稳定版本

0.1.0 2021年4月10日

数据结构中排名第1957

MIT许可证

34KB
808

这是一个库,它实现了许多通用的二维矩阵操作。它是在实现了多个基于网格的游戏项目中的相同洪水填充、邻居选择和其他操作之后出现的。

这个库的核心是 Grid<T> 类型及其选择和洪水迭代器。

洪水迭代器接受一个起始坐标和一个谓词,并执行洪水填充以返回所有满足谓词的递归相邻坐标(例如,在绘画程序中具有相同的颜色)。

选择迭代器接受一组坐标,并返回每个单元格的值。洪水迭代器的返回值以及存在的各种“模式”(例如线、矩形、邻居)可以插入到此,以便访问和修改网格单元格的集合。

洪水填充示例(扫雷)

Flood fill example (Minesweeper)

线模式示例

Line pattern example

矩形二分空间划分示例(地牢房间)

Rect BSP example

依赖关系

~305KB