[{"name":"LatLng","comment":"\n\n\n# Location objects\n\nThis module provides a basic data structure to represent locations as a pair of latitude/longitude\nvariables.\n\n\n## Types\n\n@docs LatLng, Coord, Polyline, Path, Angle, Length\n\n\n## Creation\n\n@docs fromLatLng, fromLatLngDegrees\n\n\n## Parsing and rendering\n\n@docs parse, parsePair, parseCoord, toString, coordToString, googleMapsUrl\n\n\n## Properties and comparison\n\n@docs latitude, longitude, coord, distance, toAngle, toTupleDegrees\n\n\n## Moving points around\n\nWe can move points specifying variations in lat/lon Angles, Meters or in Coords\n\n\n### By angle\n\n@docs by, eastBy, westBy, northBy, southBy\n\n\n### By length\n\n@docs move, moveEast, moveWest, moveNorth, moveSouth\n\n\n### By coord\n\n@docs eastByCoords, westByCoords, northByCoords, southByCoords\n\n\n## Paths and Polylines\n\n@docs center, chain, pathFrom, pathFromCenter, pathFromStart\n\n\n## Encoding/Decoding\n\n@docs encoder, decoder, decodePair, decodePretty, decodeTuple\n\n","unions":[{"name":"LatLng","comment":" A Point with latitude/longitude coordinates\n","args":[],"cases":[]}],"aliases":[{"name":"Angle","comment":" Re-expose Angle from elm-units\n","args":[],"type":"Angle.Angle"},{"name":"Coord","comment":" Split coordinate component parts\nSign is either -1 or 1 and all other components are positive\n","args":[],"type":"{ sign : Basics.Int, deg : Basics.Int, min : Basics.Int, sec : Basics.Int, ms : Basics.Int }"},{"name":"Length","comment":" Re-expose Length from elm-units\n","args":[],"type":"Length.Length"},{"name":"Path","comment":" A list of (x, y) coordinates\n","args":[],"type":"List.List ( LatLng.Length, LatLng.Length )"},{"name":"Polyline","comment":" A list of LatLng points\n","args":[],"type":"List.List LatLng.LatLng"}],"values":[{"name":"by","comment":" Move location by given lat and lng angles\n","type":"LatLng.Angle -> LatLng.Angle -> LatLng.LatLng -> LatLng.LatLng"},{"name":"center","comment":" Computes the center point of the polyline\n","type":"LatLng.Polyline -> LatLng.LatLng"},{"name":"chain","comment":" Make a chain of transformations in the given point\n\nEach transformation is typically an operation like `moveNorth (meters 5)`\n\nReturn a list of partial applications.\n\nExample:\n\n    chain loc\n        [ move (meters 60) (meters 10)\n        , northByCoords 0 0 1 256\n        , westBy (Angle.degrees 180)\n        ]\n\n","type":"LatLng.LatLng -> List.List (LatLng.LatLng -> LatLng.LatLng) -> List.List LatLng.LatLng"},{"name":"coord","comment":" Extract coordinate parts from float\n","type":"LatLng.Angle -> LatLng.Coord"},{"name":"coordToString","comment":" Format a decimal latitude or longitude coordinate\n\n    coordToString -45.5 \"N\" \"S\" ==> \"45°30'00.00\\\"S\"\n\n","type":"LatLng.Angle -> String.String -> String.String -> String.String"},{"name":"decodePair","comment":" Decode location from a string with a pair of floats\n","type":"Json.Decode.Decoder LatLng.LatLng"},{"name":"decodePretty","comment":" Decode LatLng from a prettified representation in a JSON string\n","type":"Json.Decode.Decoder LatLng.LatLng"},{"name":"decodeTuple","comment":" Decode location from a string with a pair of floats\n","type":"Json.Decode.Decoder LatLng.LatLng"},{"name":"decoder","comment":" Decode LatLng from a known format\n","type":"Json.Decode.Decoder LatLng.LatLng"},{"name":"distance","comment":" Distance between two points, in meters.\n\nUses the great circle distance (<https://en.wikipedia.org/wiki/Great-circle_distance>)\n\nThis approximates the Earth by a sphere, which in most occasions is good enough.\n\n","type":"LatLng.LatLng -> LatLng.LatLng -> LatLng.Length"},{"name":"eastBy","comment":" Move point east by given longitude angle\n","type":"LatLng.Angle -> LatLng.LatLng -> LatLng.LatLng"},{"name":"eastByCoords","comment":" Move point east by given longitude cooordinates (in degrees, minutes, seconds, milliseconds)\n","type":"Basics.Int -> Basics.Int -> Basics.Int -> Basics.Int -> LatLng.LatLng -> LatLng.LatLng"},{"name":"encoder","comment":" Encode LatLng as a JSON string\n","type":"LatLng.LatLng -> Json.Encode.Value"},{"name":"fromLatLng","comment":" Create location from lat/lng values\n","type":"LatLng.Angle -> LatLng.Angle -> LatLng.LatLng"},{"name":"fromLatLngDegrees","comment":" Create location from lat/lng values\n","type":"Basics.Float -> Basics.Float -> LatLng.LatLng"},{"name":"googleMapsUrl","comment":" Google Maps URL associated with the given location\n","type":"LatLng.LatLng -> String.String"},{"name":"latitude","comment":" Return location\\`s latitude\n","type":"LatLng.LatLng -> LatLng.Angle"},{"name":"longitude","comment":" Return location\\`s longitude\n","type":"LatLng.LatLng -> LatLng.Angle"},{"name":"move","comment":" Move point by (x, y) distance\n","type":"LatLng.Length -> LatLng.Length -> LatLng.LatLng -> LatLng.LatLng"},{"name":"moveEast","comment":" Move point east by given distance\n","type":"LatLng.Length -> LatLng.LatLng -> LatLng.LatLng"},{"name":"moveNorth","comment":" Move point north by given distance\n","type":"LatLng.Length -> LatLng.LatLng -> LatLng.LatLng"},{"name":"moveSouth","comment":" Move point south by given distance\n","type":"LatLng.Length -> LatLng.LatLng -> LatLng.LatLng"},{"name":"moveWest","comment":" Move point west by given distance\n","type":"LatLng.Length -> LatLng.LatLng -> LatLng.LatLng"},{"name":"northBy","comment":" Move point north by given latitude angle\n","type":"LatLng.Angle -> LatLng.LatLng -> LatLng.LatLng"},{"name":"northByCoords","comment":" Move point south by given latitude cooordinates (in degrees, minutes, seconds, milliseconds)\n","type":"Basics.Int -> Basics.Int -> Basics.Int -> Basics.Int -> LatLng.LatLng -> LatLng.LatLng"},{"name":"parse","comment":" Parse a pretty string of Lat/Lon data\n","type":"String.String -> Maybe.Maybe LatLng.LatLng"},{"name":"parseCoord","comment":" Parse a single coordinate with the given pair of directions\n\nThis can be used to specify the N-S or E-W directions or localized\nversions of those symbols\n\nExample\nparseCoord (\"L\", \"O\") \"45°10'50.12L\"\n==> Coord 1 45 10 50 120\n\n","type":"( String.String, String.String ) -> String.String -> Maybe.Maybe LatLng.Coord"},{"name":"parsePair","comment":" Convert string with a pair of floats to a LatLng pair\n","type":"String.String -> Maybe.Maybe LatLng.LatLng"},{"name":"pathFrom","comment":" Create linear path starting at the given LatLng point\n\nThe conversion assumes the earth is locally flat, i.e., it gives\ngood results for nearby points and poor conversions if distances\nare comensuarable to Earth radius.\n\n","type":"LatLng.LatLng -> LatLng.Polyline -> LatLng.Path"},{"name":"pathFromCenter","comment":" Convert Polyline into path, taking the center point as the origin.\n","type":"LatLng.Polyline -> LatLng.Path"},{"name":"pathFromStart","comment":" Convert Polyline into path\n\nWorks like pathFrom, but uses the first element of list as the origin reference\n\n","type":"LatLng.Polyline -> LatLng.Path"},{"name":"southBy","comment":" Move point south by given latitude angle\n","type":"LatLng.Angle -> LatLng.LatLng -> LatLng.LatLng"},{"name":"southByCoords","comment":" Move point south by given latitude cooordinates (in degrees, minutes, seconds, milliseconds)\n","type":"Basics.Int -> Basics.Int -> Basics.Int -> Basics.Int -> LatLng.LatLng -> LatLng.LatLng"},{"name":"toAngle","comment":" Converts Coord to float\n","type":"LatLng.Coord -> LatLng.Angle"},{"name":"toString","comment":" Render lat/lng as a pretty printed string\n","type":"LatLng.LatLng -> String.String"},{"name":"toTupleDegrees","comment":" Convert LatLng to a tuple of floats\n","type":"LatLng.LatLng -> ( Basics.Float, Basics.Float )"},{"name":"westBy","comment":" Move point west by given longitude angle\n","type":"LatLng.Angle -> LatLng.LatLng -> LatLng.LatLng"},{"name":"westByCoords","comment":" Move point west by given longitude cooordinates (in degrees, minutes, seconds, milliseconds)\n","type":"Basics.Int -> Basics.Int -> Basics.Int -> Basics.Int -> LatLng.LatLng -> LatLng.LatLng"}],"binops":[]},{"name":"Places","comment":"\n\n\n# A database of places and their coordinates\n\nA non-comprehensive database of locations of real places.\n\n\n## Countries\n\n@docs Country, br\n\n\n## References\n\n@docs origin\n\n","unions":[],"aliases":[{"name":"Country","comment":" Some important points in a Country\n","args":[],"type":"{ center : LatLng.LatLng, north : LatLng.LatLng, south : LatLng.LatLng, east : LatLng.LatLng, west : LatLng.LatLng, capital : LatLng.LatLng }"}],"values":[{"name":"br","comment":" Brazil\n","type":"Places.Country"},{"name":"origin","comment":" Coordiante 0 0\n","type":"LatLng.LatLng"}],"binops":[]}]