1 个不稳定版本
0.1.0 | 2023 年 3 月 31 日 |
---|
#162 在 地理空间
63KB
1.5K SLoC
location2gpx
从综合来源生成 GPX 文件。
可视化 或 操作您的轨迹,使用从 mongodb 集合或 CSV 中的原始数据生成的 .gpx
文件。
location2gpx 的工作原理
- 连接到您的源并检索提供的范围内的所有记录
- 按设备和路线对您的位置进行分组
- 每个设备和路线将成为一个 GPX 轨迹
- 轨迹位置将根据最大时间值分割成 GPX 轨迹段
- 在段中,您有所有具有海拔、速度和时间的点
- 如果需要,可以使用 Visvalingam-Whyatt 算法简化每个轨迹段
- 您的 GPX 文件已准备好
如何使用
使用 mongodb
cargo run -- mongo "mongodb://127.0.0.1:27017/yourdb" yourcollection "2020-01-01T00:00:00.000+00:00" "2020-12-31T00:00:00.000+00:00" /tmp/my-tracks-2020.gpx
使用 CSV 文件
cargo run -- csv yourfile.csv "2020-01-01T00:00:00.000+00:00" "2020-12-31T00:00:00.000+00:00" /tmp/my-tracks-2020.gpx
输出将如下所示 示例。
如何配置字段
要配置,您需要设置一个 yaml 文件并使用 --config
参数。您也可以将配置放在您的 $HOME 中,使用 ~/.loc2gpx.yaml
。
配置示例
fields:
device_id: dev_id
time: dev_time
coordinates: coords
# route:
# elevation:
# speed:
segments:
vw_simplify: 0.000001 # Tolerance for Visvalingam-Whyatt simplification algorithm
max_segment_time: 300 # Max segment time(in seconds) allowed
帮助信息
通用
CLI of location2gpx - Convert your raw GPS data into a GPX file
USAGE:
location2gpx <SUBCOMMAND>
OPTIONS:
-h, --help Print help information
SUBCOMMANDS:
csv Generate a GPX from a CSV file source
help Print this message or the help of the given subcommand(s)
mongo Generate a GPX from a mongodb collection source
Mongodb 命令
Generate a GPX from a mongodb collection source
USAGE:
location2gpx mongo [OPTIONS] <CONNECTION> <COLLECTION> <START> <END> <DESTINATION>
ARGS:
<CONNECTION> Mongo connection string source
<COLLECTION> Mongo collection name
<START> Start time, RFC3339 format
<END> End time, RFC3339 format
<DESTINATION> GPX path file destination
OPTIONS:
--config <CONFIG> Fields and segments configuration. Default: .loc2gpx.yaml, ~/.loc2gpx.yaml
-h, --help Print help information
CSV 命令
Generate a GPX from a CSV file source
USAGE:
location2gpx csv [OPTIONS] <CSV_PATH> <START> <END> <DESTINATION>
ARGS:
<CSV_PATH> CSV file source
<START> Start time, RFC3339 format
<END> End time, RFC3339 format
<DESTINATION> GPX path file destination
OPTIONS:
--config <CONFIG> Fields and segments configuration. Default: .loc2gpx.yaml, ~/.loc2gpx.yaml
-h, --help Print help information
目标
- 从集合生成 gpx 文件中的轨迹
- 对轨迹段应用简化算法
- 支持设备和路线区分
- 支持 mongodb 源
- 支持 CSV 源
- 支持 firebird 源
依赖项
~10–25MB
~365K SLoC