3 个版本

0.4.7 2024 年 6 月 13 日
0.4.6 2024 年 4 月 17 日
0.4.5 2023 年 10 月 27 日
0.4.2 2023 年 9 月 14 日
0.1.1 2023 年 8 月 16 日

#60 in 地理空间

Download history 83/week @ 2024-04-27 15/week @ 2024-05-04 2/week @ 2024-05-18 120/week @ 2024-06-08 27/week @ 2024-06-15 1/week @ 2024-06-22 63/week @ 2024-07-06 1/week @ 2024-07-13

716 每月下载量

MIT 许可证

19KB
299

E57 至 LAS 转换

Crates.io No Unsafe Documentation License: MIT Dependencies

一个将 E57 点云文件转换为 LAS 格式的实用工具。它基于 E57 crateLAS crate

关于

e57-to-las 是一个开源工具,用于将 E57 格式的点云文件转换为 LAS 格式。转换保留了所有相关点数据和关联元数据,使用户能够在主要支持 LAS 的环境中更容易地处理点云数据。我们将其用于将 E57 文件转换为 LAS,以便在 Potree 中进行基于网络的点云可视化。

特点

  • 使用 rayon 进行并行处理,以实现更快的转换。
  • 错误处理以确保损坏或不支持的文件不会停止进程。
  • 可选的点云分割到不同的 LAS 文件中,并生成站点文件 (stations.json),其中包含站点点的空间坐标。这通过添加 --stations 标志激活,并且站点点基于点云的变换平移计算。

使用方法

e57_to_las [OPTIONS]

要将其用作您的项目中的 crate,请在您的 Cargo.toml 中添加以下内容

[dependencies]
e57-to-las = "0.4.7"

然后,您可以在代码中使用它如下所示

use e57_to_las::convert_file;

fn main() {
    let input_path = String::from("path/to/input.e57");
    let output_path = String::from("path/to/output/directory");
    let number_of_threads = 0; // 0 = max possible
    let as_stations = true;
    convert_file(input_path, output_path, number_of_threads, as_stations);
}

选项

  • -p, --path <path>:输入 E57 文件的路径。
  • -o, --output <output>:转换 LAS 文件的输出目录(默认:./)。
  • -T, --threads <threads>:并行处理的线程数(默认:0 = 最大可能值)。
  • -S, --stations <stations>:是否将e57文件转换为不同的站点(默认:false)

贡献

如果您想为这个工具的开发做出贡献,请在我们的GitHub仓库中创建一个问题或拉取请求。所有贡献都受欢迎!

依赖项

以下是一些主要使用的依赖项

  • rayon:并行性
  • clap:命令行参数解析
  • e57:E57文件格式读取器
  • las:LAS文件格式写入器
  • uuid:用于GUID处理
  • serde:用于数据的序列化和反序列化

许可证

开源MIT。有关详细信息,请参阅LICENSE

依赖项

~6.5MB
~116K SLoC