#六边形 #游戏开发 #形状 #瓦片地图 #模块 #部分相等

hexagon_tiles

一个实用库,允许处理六边形形状和相关数学

3 个不稳定版本

0.2.1 2024年3月9日
0.2.0 2023年3月25日
0.1.0 2021年4月12日

#378 in 数学

Download history 7/week @ 2024-07-02

每月72次下载

自定义许可

26KB
677

六边形实用库

这是一个用 Rust 编写的实用库,简化了需要处理六边形形状和相关数学的开发模块。

该库主要基于 Red Blob Games 自动生成的 Rust 实现。其他实现看起来都很混乱和复杂。自动生成的代码实际上相当简单,但没有考虑到 Rust 习惯用法。

这种实现方式在以下方面有所不同

  • Both HexFractionalHex 实现了 PartialEq
    这意味着您可以使用 assert_eq!(hex1, hex2)hex1 == hex2
  • Point 还为 f64 提供了 PartialEq 实现,使用 float_eq
  • 我实现了一些函数作为 HexFractionalHex 的特质,这意味着您可以这样做 hex1.add(hex2)hex1.round()
  • 其他功能作为它们自己的对象中的静态函数实现 HexDirectionHexOffsetHexDoubled
  • 测试覆盖了所有内容,并以 Rust 方式实现。
  • 自动生成的代码拆分成了几个文件模块。

本软件包采用 zlib 许可证 发布。

请自由地使用 GitHub 改进和贡献。我真的希望有一天能看到一个瓦片地图管理器。

这个库的开发是为了作为 BEVY 游戏引擎插件的组成部分。然而,BEVY 实现不在此存储库的范围内。

依赖关系

~1.5MB
~40K SLoC