3 个版本

新版本 0.0.3 2024 年 8 月 17 日
0.0.2 2024 年 8 月 14 日
0.0.1 2024 年 8 月 13 日

#657算法

Download history 210/week @ 2024-08-11

每月 210 次下载

MIT 许可证

17KB
304

Rust 中的 A* 寻路库

Rust 🦀 库,实现了 A* 寻路算法A* 用于高效地找到网格中的最短路径,主要用于游戏。

安装

将以下内容添加到您的 Cargo.toml 中的 [dependencies] 部分,以便在项目中使用

[dependencies]
stara = "0.0.2"

用法

以下是如何使用此库中的 A* 寻路算法的示例

use stara::prelude::*;

fn main() {
    let start = VectorU::new(0, 0);
    let goal = VectorU::new(5, 5);
    let size = VectorU::new(7, 7);

    let mut grid = Grid::new(size, 1);

    // Setting an obstacle
    grid.set_cost(VectorU::new(3, 3), IMPASSABLE);

    let maybe_path = AStar::search(start, goal, &grid);
    if let Some(path) = maybe_path {
        println!("Path found: {:?}", path);
    } else {
        println!("No path found.");
    }
}

许可证

本项目采用 MIT 许可证。有关更多详细信息,请参阅 LICENSE 文件。

依赖项

~17KB