coordsparser

package module
v0.0.0-...-61a7ff6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 11, 2025 License: MIT Imports: 3 Imported by: 47

README

PkgGoDev Go Report Card License MIT

go-coordsparser

A library for parsing (geographic) coordinates in go (golang)

What?

go-coordsparser allows you to parse lat/lng coordinates from strings in various popular formats. Currently supported formats are:

  • D (decimal degrees), e.g. 40.76, -73.984
  • HD (hemisphere prefix, decimal degrees), e.g. N 40.76 W 73.984
  • HDM (hemisphere prefix, integral degrees, decimal minutes), e.g. N 40 45.600 W 73 59.040
  • HDMS (hemisphere prefix, integral degrees, integral minutes, decimal seconds), e.g. N 40 45 36.0 W 73 59 02.4

How?

Installing

Installing the library is as easy as

$ go get github.com/flopp/go-coordsparser

The package can then be used through an

import "github.com/flopp/go-coordsparser"
Using

go-coordsparser provides several functions for parsing coordinate strings: a general parsing function coordsparser.Parse, which accepts all supported formats, as well as specialized functions coordsparser.ParseD, coordsparser.ParseHD, coordsparser.ParseHDM, coordsparser.ParseHDMS for the corresponding coordinate formats.

Each function takes a single string as a parameter and returns an idiomatic lat, lng, error triple, where lat and lng are decimal degrees (float64) with -90 ≤ lat ≤ 90 and -180 ≤ lng ≤ 180.

// parse any format
s1 := "..."
lat1, lng1, err := coordsparser.Parse(s1)
if err != nil {
    fmt.Errorf("Cannot parse coordinates string:", s1)
}

// parse specific format, e.g. HDM
s2 := "..."
lat2, lng2, err = coordsparser.ParseHDM(s2)
if err != nil {
    fmt.Errorf("Cannot parse coordinates string:", s2)
}

License

Copyright 2016 Florian Pigorsch. All rights reserved.

Use of this source code is governed by a MIT-style license that can be found in the LICENSE file.

Documentation

Overview

Package coordsparser is a library for parsing (geographic) coordinates in various string formats

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Parse

func Parse(s string) (float64, float64, error)

Parse parses a coordinate string and returns a lat/lng pair or an error

func ParseD

func ParseD(s string) (float64, float64, error)

ParseD parses a coordinate string of the form "D.DDDD D.DDDD" and returns a lat/lng pair or an error

func ParseHD

func ParseHD(s string) (float64, float64, error)

ParseHD parses a coordinate string of the form "H D.DDDD H D.DDDD" and returns a lat/lng pair or an error

func ParseHDM

func ParseHDM(s string) (float64, float64, error)

ParseHDM parses a coordinate string of the form "H D M.MMM H D M.MMM" and returns a lat/lng pair or an error

func ParseHDMS

func ParseHDMS(s string) (float64, float64, error)

ParseHDMS parses a coordinate string of the form "H D M S.SSS H D M S.SSS" and returns a lat/lng pair or an error

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL