From 2755f63e2b76ec18a9e5265a4f708c7952b31b32 Mon Sep 17 00:00:00 2001 From: murraybryant Date: Wed, 29 Jan 2025 14:26:19 +0800 Subject: [PATCH 1/2] Update postgis.ex --- lib/ash_geo/postgis.ex | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/ash_geo/postgis.ex b/lib/ash_geo/postgis.ex index ce0356f..530a58b 100644 --- a/lib/ash_geo/postgis.ex +++ b/lib/ash_geo/postgis.ex @@ -274,6 +274,18 @@ defmodule AshGeo.Postgis do quote do: expr(fragment("ST_Point(?,?)", unquote(x), unquote(y))) end + defmacro st_point(x, y, srid \\ -1) do + quote do: expr(fragment("ST_Point(?,?,?)", unquote(x), unquote(y), unquote(srid))) + end + + defmacro st_pointz(x, y, z) do + quote do: expr(fragment("ST_Point(?,?,?)", unquote(x), unquote(y), unquote(z))) + end + + defmacro st_pointz(x, y, z, srid \\ -1) do + quote do: expr(fragment("ST_Point(?,?,?,?)", unquote(x), unquote(y), unquote(z), unquote(srid))) + end + defmacro st_exterior_ring(geometry) do quote do: expr(fragment("ST_ExteriorRing(?)", unquote(geometry))) end From 3f5383fb470bc2e4fb970c5247345a4f5369c91f Mon Sep 17 00:00:00 2001 From: murraybryant Date: Wed, 29 Jan 2025 14:32:19 +0800 Subject: [PATCH 2/2] Update postgis.ex Fix ST_PointZ --- lib/ash_geo/postgis.ex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ash_geo/postgis.ex b/lib/ash_geo/postgis.ex index 530a58b..fb33d05 100644 --- a/lib/ash_geo/postgis.ex +++ b/lib/ash_geo/postgis.ex @@ -279,11 +279,11 @@ defmodule AshGeo.Postgis do end defmacro st_pointz(x, y, z) do - quote do: expr(fragment("ST_Point(?,?,?)", unquote(x), unquote(y), unquote(z))) + quote do: expr(fragment("ST_PointZ(?,?,?)", unquote(x), unquote(y), unquote(z))) end defmacro st_pointz(x, y, z, srid \\ -1) do - quote do: expr(fragment("ST_Point(?,?,?,?)", unquote(x), unquote(y), unquote(z), unquote(srid))) + quote do: expr(fragment("ST_PointZ(?,?,?,?)", unquote(x), unquote(y), unquote(z), unquote(srid))) end defmacro st_exterior_ring(geometry) do