4 releases

0.1.3 Feb 17, 2020
0.1.2 Feb 15, 2020
0.1.1 Feb 15, 2020
0.1.0 Feb 15, 2020

#23 in #mean

Download history 37/week @ 2024-04-09 55/week @ 2024-04-16 35/week @ 2024-04-23 13/week @ 2024-04-30 12/week @ 2024-05-07 11/week @ 2024-05-14 13/week @ 2024-05-21 36/week @ 2024-05-28 39/week @ 2024-06-04 31/week @ 2024-06-11 53/week @ 2024-06-18 200/week @ 2024-06-25 90/week @ 2024-07-02 47/week @ 2024-07-09 69/week @ 2024-07-16 113/week @ 2024-07-23

363 downloads per month
Used in tletools

MIT/Apache

12KB
249 lines

TLE Parser

tle-parser at crates.io Actions Status MIT License

TLE (Two-line elements) parser.

Example

extern crate tle_parser;

use tle_parser::parse;

fn main() {
    let raw_tle = "ISS (ZARYA)
1 25544U 98067A   20045.18587073  .00000950  00000-0  25302-4 0  9990
2 25544  51.6443 242.0161 0004885 264.6060 207.3845 15.49165514212791";

    let tle = parse(raw_tle);

    match tle {
        Ok(t) => println!("{:?}", t),
        Err(_) => println!("Error Parsing TLE"),
    }

}

Output

TLE {
    name: "ISS (ZARYA)",
    satellite_number: 25544,
    classification: 'U',
    international_designator: "98067A",
    epoch: "20045.18587073",
    first_derivative_mean_motion: 0.0000095,
    second_derivative_mean_motion: 0.0,
    drag_term: 0.000025302,
    ephemeris_type: 0,
    element_number: 999,
    inclination: 51.6443,
    right_ascension: 242.0161,
    eccentricity: 0.0004885,
    argument_of_perigee: 264.606,
    mean_anomaly: 207.3845,
    mean_motion: 15.49165514,
    revolution_number: 21279,
}

You can run this example with the following command:

cargo run --example parse_iss_tle

Dependencies

~1.4–2.3MB
~48K SLoC