Packages
geo
3.3.7
4.1.0
4.0.1
4.0.0
3.6.0
3.5.1
3.5.0
3.4.3
3.4.2
3.4.1
3.4.0
3.3.8
3.3.7
3.3.5
3.3.4
3.3.3
3.3.2
3.3.1
3.3.0
3.2.0
3.1.0
3.0.0
2.1.0
2.0.0
1.5.0
1.4.1
1.4.0
1.3.1
1.3.0
1.2.1
1.2.0
1.1.2
1.1.1
1.1.0
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
0.18.0
0.17.0
0.16.1
0.16.0
0.15.2
0.15.1
0.15.0
0.14.0
0.13.0
0.12.0
0.11.2
0.11.1
0.11.0
0.10.1
0.10.0
0.9.3
0.9.2
0.9.1
0.9.0
0.8.0
0.7.2
0.7.1
0.6.1
0.5.1
Encodes and decodes WKB, WKT, and GeoJSON formats.
Current section
Files
Jump to
Current section
Files
lib/geo/wkt.ex
defmodule Geo.WKT do
@moduledoc """
Converts to and from WKT and EWKT
{:ok, point} = Geo.WKT.decode("POINT(30 -90)")
Geo.Point[coordinates: {30, -90}, srid: nil]
Geo.WKT.encode!(point)
"POINT(30 -90)"
point = Geo.WKT.decode!("SRID=4326;POINT(30 -90)")
Geo.Point[coordinates: {30, -90}, srid: 4326]
"""
alias Geo.WKT.{Encoder, Decoder}
@doc """
Takes a Geometry and returns a WKT string
"""
@spec encode(Geo.geometry()) :: {:ok, binary} | {:error, Exception.t()}
defdelegate encode(geom), to: Encoder
@doc """
Takes a Geometry and returns a WKT string
"""
@spec encode!(Geo.geometry()) :: binary
defdelegate encode!(geom), to: Encoder
@doc """
Takes a WKT string and returns a Geo.geometry struct or list of Geo.geometry
"""
@spec decode(binary) :: {:ok, Geo.geometry()} | {:error, Exception.t()}
defdelegate decode(wkt), to: Decoder
@doc """
Takes a WKT string and returns a Geo.geometry struct or list of Geo.geometry
"""
@spec decode!(binary) :: Geo.geometry() | no_return
defdelegate decode!(wkt), to: Decoder
end