#black-box #parser #aerospace #dynon #sky-view

dynoxide

用于处理 Dynon SkyView 黑盒数据的 Rust 工具

1 个不稳定版本

0.0.1 2023 年 2 月 24 日

#black-box 中排名第 40

MIT 许可证

655KB
285 行(不包括注释)

Dynoxide

仍在开发中,我将来会破坏 API

Dynoxide 是一个读取 Dynon Skyview 黑盒数据文件的实用程序。

下面是从样本黑盒数据生成的 KML 图片

KML

使用方法

read_csv_data 接收一个黑盒文件的路径,并返回一个 BlackBoxTick 结构体的向量。这是库中最有用的部分。该 BlackBoxTick 结构体包含黑盒文件的单个标记的所有数据,但它有 102 个字段,所以在这里我不会列出它们所有。您可以在源代码中查看完整的列表。

我还添加了一个函数,可以从黑盒数据输出 KML。以下是如何使用库从黑盒文件生成 KML 的简单示例。输出将加载到 Google Earth 中,并为您提供一个漂亮的 3D 飞行视图。

use dynoxide::*;

fn main() {
    let mut data: Vec<BlackBoxTick> = Vec::new();
    let mut rdr = csv::Reader::from_path("flight_data/first_solo_black_box.csv").unwrap();
    for result in rdr.deserialize() {
        data.push(result.unwrap());
    }
    let output_file_name = "sample_out.kml".to_string();
    generate_kml_of_flight(&output_file_name, &data);
}
// Outputs flight path to sample_out.kml

依赖项

~6.5MB
~107K SLoC