Crate geoutils

source ·
Expand description

Geoutils is a evolving crate to provide several geological computations and utilities. Most computations are based off methods on the Location struct.

Find the full API reference at docs.rs.

Examples

extern crate geoutils;

use geoutils::Location;

let berlin = Location::new(52.518611, 13.408056);
let moscow = Location::new(55.751667, 37.617778);
let distance = berlin.distance_to(&moscow).unwrap();

println!("Distance = {}", distance);
extern crate geoutils;

use geoutils::Location;

let berlin = Location::new(52.518611, 13.408056);
let moscow = Location::new(55.751667, 37.617778);
let distance = berlin.haversine_distance_to(&moscow);

println!("Distance = {}", distance);
  • Get the center of a list of coordinates.
extern crate geoutils;

use geoutils::Location;

let berlin = Location::new(52.518611, 13.408056);
let moscow = Location::new(55.751667, 37.617778);
let center = Location::center(vec![&berlin, &moscow]);

println!("Center {}, {}", center.latitude(), center.longitude());
  • Check if a point falls in a certain radius of another point.
extern crate geoutils;

use geoutils::Location;

let berlin = Location::new(52.518611, 13.408056);
let moscow = Location::new(55.751667, 37.617778);
let is_in_radius = berlin.is_in_circle(&moscow, 2000);

println!("Is Berlin in 2000m of Moscow? {}", is_in_radius);

Structs

Location defines a point using it’s latitude and longitude.