recommit from postgresql repo
This commit is contained in:
parent
132f4bbda9
commit
5f339a01f7
3
.brackets.json
Normal file
3
.brackets.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"sbruchmann.staticpreview.basepath": "/home/carto/Projects/crankshaft/"
|
||||
}
|
35
doc/14_densify.md
Normal file
35
doc/14_densify.md
Normal file
@ -0,0 +1,35 @@
|
||||
## Densify function
|
||||
|
||||
Iterative densification of a set of scattered points using Delaunay triangulation. The new points are located at the centroids of the grid cells and have as assigned value the barycentric average value of the cell's vertex.
|
||||
|
||||
### CDB_Densify(geomin geometry[], colin numeric[], iterations integer)
|
||||
|
||||
#### Arguments
|
||||
|
||||
| Name | Type | Description |
|
||||
|------|------|-------------|
|
||||
| geomin | geometry[] | Array of points geometries |
|
||||
| colin | numeric[] | Array of points' values |
|
||||
| iterations | integer | Number of iterations |
|
||||
|
||||
### Returns
|
||||
|
||||
Returns a table object
|
||||
|
||||
| Name | Type | Description |
|
||||
|------|------|-------------|
|
||||
| geomout | geometry | Geometries of new dataset of points|
|
||||
| colout | numeric | Values of points|
|
||||
|
||||
#### Example Usage
|
||||
|
||||
```sql
|
||||
with data as (
|
||||
select
|
||||
ARRAY[7.0,8.0,1.0,2.0,3.0,5.0,6.0,4.0] as colin,
|
||||
ARRAY[ST_GeomFromText('POINT(2.1744 41.4036)'),ST_GeomFromText('POINT(2.1228 41.3809)'),ST_GeomFromText('POINT(2.1511 41.3742)'),ST_GeomFromText('POINT(2.1528 41.4136)'),ST_GeomFromText('POINT(2.165 41.3917)'),ST_GeomFromText('POINT(2.1498 41.3713)'),ST_GeomFromText('POINT(2.1533 41.3683)'),ST_GeomFromText('POINT(2.131386 41.413998)')] as geomin
|
||||
)
|
||||
select CDB_Densify(geomin, colin, 2) from data;
|
||||
```
|
||||
|
||||
|
36
doc/15_tinmap.md
Normal file
36
doc/15_tinmap.md
Normal file
@ -0,0 +1,36 @@
|
||||
## TINMAP function
|
||||
|
||||
Generates a fake contour map, in the form of a TIN map, from a set of scattered points.Depends on **CDB_Densify**.
|
||||
|
||||
Its iterative nature let's the user smooth the final result as much as desired, but with a exponential time cost increase
|
||||
|
||||
### CDB_TINmap(geomin geometry[], colin numeric[], iterations integer)
|
||||
|
||||
#### Arguments
|
||||
|
||||
| Name | Type | Description |
|
||||
|------|------|-------------|
|
||||
| geomin | geometry[] | Array of points geometries |
|
||||
| colin | numeric[] | Array of points' values |
|
||||
| iterations | integer | Number of iterations |
|
||||
|
||||
### Returns
|
||||
|
||||
Returns a table object
|
||||
|
||||
| Name | Type | Description |
|
||||
|------|------|-------------|
|
||||
| geomout | geometry | Geometries of new dataset of polygons|
|
||||
| colout | numeric | Values of each cell|
|
||||
|
||||
#### Example Usage
|
||||
|
||||
```sql
|
||||
with data as (
|
||||
select
|
||||
ARRAY[7.0,8.0,1.0,2.0,3.0,5.0,6.0,4.0] as colin,
|
||||
ARRAY[ST_GeomFromText('POINT(2.1744 41.4036)'),ST_GeomFromText('POINT(2.1228 41.3809)'),ST_GeomFromText('POINT(2.1511 41.3742)'),ST_GeomFromText('POINT(2.1528 41.4136)'),ST_GeomFromText('POINT(2.165 41.3917)'),ST_GeomFromText('POINT(2.1498 41.3713)'),ST_GeomFromText('POINT(2.1533 41.3683)'),ST_GeomFromText('POINT(2.131386 41.413998)')] as geomin
|
||||
)
|
||||
select CDB_TINmap(geomin, colin, 2) from data;
|
||||
```
|
||||
|
67
src/pg/sql/14_densify.sql
Normal file
67
src/pg/sql/14_densify.sql
Normal file
@ -0,0 +1,67 @@
|
||||
--
|
||||
-- Iterative densification of a set of points using Delaunay triangulation
|
||||
-- the new points have as assigned value the average value of the 3 vertex (centroid)
|
||||
--
|
||||
-- @param geomin - array of geometries (points)
|
||||
--
|
||||
-- @param colin - array of numeric values in that points
|
||||
--
|
||||
-- @param iterations - integer, number of iterations
|
||||
--
|
||||
--
|
||||
-- Returns: TABLE(geomout geometry, colout numeric)
|
||||
--
|
||||
--
|
||||
CREATE OR REPLACE FUNCTION CDB_Densify(
|
||||
IN geomin geometry[],
|
||||
IN colin numeric[],
|
||||
IN iterations integer
|
||||
)
|
||||
RETURNS TABLE(geomout geometry, colout numeric) AS $$
|
||||
DECLARE
|
||||
geotemp geometry[];
|
||||
coltemp numeric[];
|
||||
i integer;
|
||||
gs geometry[];
|
||||
g geometry;
|
||||
vertex geometry[];
|
||||
va numeric;
|
||||
vb numeric;
|
||||
vc numeric;
|
||||
center geometry;
|
||||
centerval numeric;
|
||||
tmp integer;
|
||||
BEGIN
|
||||
geotemp := geomin;
|
||||
coltemp := colin;
|
||||
FOR i IN 1..iterations
|
||||
LOOP
|
||||
-- generate TIN
|
||||
WITH a as (SELECT unnest(geotemp) AS e),
|
||||
b as (SELECT ST_DelaunayTriangles(ST_Collect(a.e),0.001, 0) AS t FROM a),
|
||||
c as (SELECT (ST_Dump(t)).geom AS v FROM b)
|
||||
SELECT array_agg(v) INTO gs FROM c;
|
||||
-- loop cells
|
||||
FOREACH g IN ARRAY gs
|
||||
LOOP
|
||||
-- append centroid
|
||||
SELECT ST_Centroid(g) INTO center;
|
||||
geotemp := array_append(geotemp, center);
|
||||
-- retrieve the value of each vertex
|
||||
WITH a AS (SELECT (ST_DumpPoints(g)).geom AS v)
|
||||
SELECT array_agg(v) INTO vertex FROM a;
|
||||
WITH a AS(SELECT unnest(geotemp) as geo, unnest(coltemp) as c)
|
||||
SELECT c INTO va FROM a WHERE ST_Equals(geo, vertex[1]);
|
||||
WITH a AS(SELECT unnest(geotemp) as geo, unnest(coltemp) as c)
|
||||
SELECT c INTO vb FROM a WHERE ST_Equals(geo, vertex[2]);
|
||||
WITH a AS(SELECT unnest(geotemp) as geo, unnest(coltemp) as c)
|
||||
SELECT c INTO vc FROM a WHERE ST_Equals(geo, vertex[3]);
|
||||
-- calc the value at the center
|
||||
centerval := (va + vb + vc) / 3;
|
||||
-- append the value
|
||||
coltemp := array_append(coltemp, centerval);
|
||||
END LOOP;
|
||||
END LOOP;
|
||||
RETURN QUERY SELECT unnest(geotemp ) as geomout, unnest(coltemp ) as colout;
|
||||
END;
|
||||
$$ language plpgsql IMMUTABLE;
|
43
src/pg/sql/15_tinmap.sql
Normal file
43
src/pg/sql/15_tinmap.sql
Normal file
@ -0,0 +1,43 @@
|
||||
CREATE OR REPLACE FUNCTION CDB_TINmap(
|
||||
IN geomin geometry[],
|
||||
IN colin numeric[],
|
||||
IN iterations integer
|
||||
)
|
||||
RETURNS TABLE(geomout geometry, colout numeric) AS $$
|
||||
DECLARE
|
||||
p geometry[];
|
||||
vals numeric[];
|
||||
gs geometry[];
|
||||
g geometry;
|
||||
vertex geometry[];
|
||||
centerval numeric;
|
||||
va numeric;
|
||||
vb numeric;
|
||||
vc numeric;
|
||||
coltemp numeric[];
|
||||
BEGIN
|
||||
SELECT array_agg(dens.geomout), array_agg(dens.colout) INTO p, vals FROM CDB_Densify(geomin, colin, iterations) dens;
|
||||
WITH a as (SELECT unnest(p) AS e),
|
||||
b as (SELECT ST_DelaunayTriangles(ST_Collect(a.e),0.001, 0) AS t FROM a),
|
||||
c as (SELECT (ST_Dump(t)).geom AS v FROM b)
|
||||
SELECT array_agg(v) INTO gs FROM c;
|
||||
FOREACH g IN ARRAY gs
|
||||
LOOP
|
||||
-- retrieve the vertex of each triangle
|
||||
WITH a AS (SELECT (ST_DumpPoints(g)).geom AS v)
|
||||
SELECT array_agg(v) INTO vertex FROM a;
|
||||
-- retrieve the value of each vertex
|
||||
WITH a AS(SELECT unnest(p) as geo, unnest(vals) as c)
|
||||
SELECT c INTO va FROM a WHERE ST_Equals(geo, vertex[1]);
|
||||
WITH a AS(SELECT unnest(p) as geo, unnest(vals) as c)
|
||||
SELECT c INTO vb FROM a WHERE ST_Equals(geo, vertex[2]);
|
||||
WITH a AS(SELECT unnest(p) as geo, unnest(vals) as c)
|
||||
SELECT c INTO vc FROM a WHERE ST_Equals(geo, vertex[3]);
|
||||
-- calc the value at the center
|
||||
centerval := (va + vb + vc) / 3;
|
||||
-- append the value
|
||||
coltemp := array_append(coltemp, centerval);
|
||||
END LOOP;
|
||||
RETURN QUERY SELECT unnest(gs) as geomout, unnest(coltemp ) as colout;
|
||||
END;
|
||||
$$ language plpgsql IMMUTABLE;
|
47
src/pg/test/expected/14_densify_test.out
Normal file
47
src/pg/test/expected/14_densify_test.out
Normal file
@ -0,0 +1,47 @@
|
||||
cdb_densify
|
||||
-----------------------------------------------------------------
|
||||
(01010000001361C3D32B6501403255302AA9B34440,7.0)
|
||||
(01010000002497FF907EFB0040F085C954C1B04440,8.0)
|
||||
(0101000000A167B3EA73350140E4141DC9E5AF4440,1.0)
|
||||
(010100000062A1D634EF38014014D044D8F0B44440,2.0)
|
||||
(010100000052B81E85EB510140EEEBC03923B24440,3.0)
|
||||
(0101000000C286A757CA3201409D8026C286AF4440,5.0)
|
||||
(01010000007DD0B359F5390140F38E537424AF4440,6.0)
|
||||
(0101000000D237691A140D0140014EEFE2FDB44440,4.0)
|
||||
(01010000003312B4DCAC14014047F8F1AAE1B14440,4.3333333333333333)
|
||||
(010100000048C0FBBD27290140A9BBC5D646B34440,2.3333333333333333)
|
||||
(01010000001DEBE2361A400140F79A0B4953B24440,2.0000000000000000)
|
||||
(010100000098933D2F02500140115B676994B34440,4.0000000000000000)
|
||||
(01010000004BA3DC90595001405C456C9DA5B14440,5.3333333333333333)
|
||||
(0101000000D1FA8198714001404285107D64B04440,3.3333333333333333)
|
||||
(01010000004AEA043411360140D2B687AA85AF4440,4.0000000000000000)
|
||||
(0101000000CCA4736BBF2201402B8716D9CEAF4440,6.3333333333333333)
|
||||
(0101000000832C1EF13E2101402609AF4A0FB04440,4.6666666666666667)
|
||||
(010100000063A009D8BF090140BEEE38F68AB24440,5.4444444444444444)
|
||||
(010100000019AE5D3CF8180140A5008D2162B34440,3.5555555555555555)
|
||||
(01010000007E88BE590E250140EB9DA83067B44440,2.7777777777777778)
|
||||
(0101000000C05105B65D3B014044A2D0B2EEB34440,2.7777777777777778)
|
||||
(010100000005329D125F4F01401C8049790FB44440,4.3333333333333333)
|
||||
(010100000054E45F2DB3570140BBDE724420B34440,4.6666666666666667)
|
||||
(0101000000E53EEA4DD05701407FD7C9557BB24440,5.1111111111111111)
|
||||
(01010000004A9CC694D34F01402B63A5BE7BB14440,6.1111111111111111)
|
||||
(0101000000DD24068195430140317345DA64B04440,4.8888888888888889)
|
||||
(010100000033E768B7D23A014002994E89AFAF4440,4.4444444444444444)
|
||||
(010100000083C0CAA145360140CAEC55A065AF4440,5.0000000000000000)
|
||||
(010100000004549A09D52F01403E3230057EAF4440,5.7777777777777778)
|
||||
(010100000024040D72661D0140B0DEBBE0E6AF4440,6.7777777777777778)
|
||||
(01010000007CCD85A42915014017B22F2835B04440,6.3333333333333333)
|
||||
(0101000000F5F145CA781001401F2DCE18E6B04440,5.6666666666666667)
|
||||
(0101000000F10DE756572701402134E4146CB14440,3.6666666666666667)
|
||||
(01010000008894DB45FA290140F8C4EB987EB24440,2.8888888888888889)
|
||||
(0101000000AABF5E61C13D0140E6E512830FB34440,2.7777777777777778)
|
||||
(0101000000581215F9574B0140FDF5BB4EAEB24440,3.0000000000000000)
|
||||
(0101000000EA6C9F19754B0140C0EE126009B24440,3.4444444444444444)
|
||||
(01010000001383C0CAA145014088CC827674B14440,3.5555555555555555)
|
||||
(0101000000D0B02B40EE350140C90D9905EDB04440,3.3333333333333333)
|
||||
(010100000051DA1B7C613201406F36F4DA1DB04440,3.0000000000000000)
|
||||
(0101000000EA6E133D52390140FD1AE7FAEFAF4440,2.7777777777777778)
|
||||
(01010000003A487527C5340140C76EEE11A6AF4440,3.3333333333333333)
|
||||
(0101000000BADB448F542E01403AB4C876BEAF4440,4.1111111111111111)
|
||||
(0101000000FB12176D7B280140BDE1A0F9EBAF4440,4.0000000000000000)
|
||||
(44 rows)
|
80
src/pg/test/expected/15_tinmap_test.out
Normal file
80
src/pg/test/expected/15_tinmap_test.out
Normal file
@ -0,0 +1,80 @@
|
||||
cdb_tinmap
|
||||
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
(01030000000100000004000000D237691A140D0140014EEFE2FDB444402497FF907EFB0040F085C954C1B0444063A009D8BF090140BEEE38F68AB24440D237691A140D0140014EEFE2FDB44440,5.8148148148148148)
|
||||
(01030000000100000004000000D237691A140D0140014EEFE2FDB4444063A009D8BF090140BEEE38F68AB2444019AE5D3CF8180140A5008D2162B34440D237691A140D0140014EEFE2FDB44440,4.3333333333333333)
|
||||
(01030000000100000004000000D237691A140D0140014EEFE2FDB4444019AE5D3CF8180140A5008D2162B344407E88BE590E250140EB9DA83067B44440D237691A140D0140014EEFE2FDB44440,3.4444444444444444)
|
||||
(01030000000100000004000000D237691A140D0140014EEFE2FDB444407E88BE590E250140EB9DA83067B4444062A1D634EF38014014D044D8F0B44440D237691A140D0140014EEFE2FDB44440,2.9259259259259259)
|
||||
(0103000000010000000400000062A1D634EF38014014D044D8F0B444407E88BE590E250140EB9DA83067B44440C05105B65D3B014044A2D0B2EEB3444062A1D634EF38014014D044D8F0B44440,2.5185185185185185)
|
||||
(0103000000010000000400000062A1D634EF38014014D044D8F0B44440C05105B65D3B014044A2D0B2EEB3444005329D125F4F01401C8049790FB4444062A1D634EF38014014D044D8F0B44440,3.0370370370370370)
|
||||
(0103000000010000000400000062A1D634EF38014014D044D8F0B4444005329D125F4F01401C8049790FB444401361C3D32B6501403255302AA9B3444062A1D634EF38014014D044D8F0B44440,4.4444444444444444)
|
||||
(010300000001000000040000001361C3D32B6501403255302AA9B3444005329D125F4F01401C8049790FB4444098933D2F02500140115B676994B344401361C3D32B6501403255302AA9B34440,5.1111111111111111)
|
||||
(010300000001000000040000001361C3D32B6501403255302AA9B3444098933D2F02500140115B676994B3444054E45F2DB3570140BBDE724420B344401361C3D32B6501403255302AA9B34440,5.2222222222222222)
|
||||
(010300000001000000040000001361C3D32B6501403255302AA9B3444054E45F2DB3570140BBDE724420B34440E53EEA4DD05701407FD7C9557BB244401361C3D32B6501403255302AA9B34440,5.5925925925925926)
|
||||
(010300000001000000040000001361C3D32B6501403255302AA9B34440E53EEA4DD05701407FD7C9557BB244404A9CC694D34F01402B63A5BE7BB144401361C3D32B6501403255302AA9B34440,6.0740740740740741)
|
||||
(010300000001000000040000007DD0B359F5390140F38E537424AF44404A9CC694D34F01402B63A5BE7BB14440DD24068195430140317345DA64B044407DD0B359F5390140F38E537424AF4440,5.6666666666666667)
|
||||
(010300000001000000040000007DD0B359F5390140F38E537424AF4440DD24068195430140317345DA64B0444033E768B7D23A014002994E89AFAF44407DD0B359F5390140F38E537424AF4440,5.1111111111111111)
|
||||
(010300000001000000040000007DD0B359F5390140F38E537424AF444033E768B7D23A014002994E89AFAF44404AEA043411360140D2B687AA85AF44407DD0B359F5390140F38E537424AF4440,4.8148148148148148)
|
||||
(010300000001000000040000007DD0B359F5390140F38E537424AF44404AEA043411360140D2B687AA85AF4440C286A757CA3201409D8026C286AF44407DD0B359F5390140F38E537424AF4440,5.0000000000000000)
|
||||
(010300000001000000040000007DD0B359F5390140F38E537424AF4440C286A757CA3201409D8026C286AF444004549A09D52F01403E3230057EAF44407DD0B359F5390140F38E537424AF4440,5.5925925925925926)
|
||||
(010300000001000000040000007DD0B359F5390140F38E537424AF444004549A09D52F01403E3230057EAF4440CCA4736BBF2201402B8716D9CEAF44407DD0B359F5390140F38E537424AF4440,6.0370370370370370)
|
||||
(010300000001000000040000007DD0B359F5390140F38E537424AF4440CCA4736BBF2201402B8716D9CEAF444024040D72661D0140B0DEBBE0E6AF44407DD0B359F5390140F38E537424AF4440,6.3703703703703704)
|
||||
(0103000000010000000400000024040D72661D0140B0DEBBE0E6AF4440CCA4736BBF2201402B8716D9CEAF4440832C1EF13E2101402609AF4A0FB0444024040D72661D0140B0DEBBE0E6AF4440,5.9259259259259259)
|
||||
(0103000000010000000400000024040D72661D0140B0DEBBE0E6AF4440832C1EF13E2101402609AF4A0FB044407CCD85A42915014017B22F2835B0444024040D72661D0140B0DEBBE0E6AF4440,5.9259259259259259)
|
||||
(0103000000010000000400000024040D72661D0140B0DEBBE0E6AF44407CCD85A42915014017B22F2835B044402497FF907EFB0040F085C954C1B0444024040D72661D0140B0DEBBE0E6AF4440,7.0370370370370370)
|
||||
(010300000001000000040000002497FF907EFB0040F085C954C1B044407CCD85A42915014017B22F2835B04440F5F145CA781001401F2DCE18E6B044402497FF907EFB0040F085C954C1B04440,6.6666666666666667)
|
||||
(010300000001000000040000002497FF907EFB0040F085C954C1B04440F5F145CA781001401F2DCE18E6B0444063A009D8BF090140BEEE38F68AB244402497FF907EFB0040F085C954C1B04440,6.3703703703703704)
|
||||
(0103000000010000000400000063A009D8BF090140BEEE38F68AB24440F5F145CA781001401F2DCE18E6B044403312B4DCAC14014047F8F1AAE1B1444063A009D8BF090140BEEE38F68AB24440,5.1481481481481481)
|
||||
(0103000000010000000400000063A009D8BF090140BEEE38F68AB244403312B4DCAC14014047F8F1AAE1B1444019AE5D3CF8180140A5008D2162B3444063A009D8BF090140BEEE38F68AB24440,4.4444444444444444)
|
||||
(0103000000010000000400000019AE5D3CF8180140A5008D2162B344403312B4DCAC14014047F8F1AAE1B144408894DB45FA290140F8C4EB987EB2444019AE5D3CF8180140A5008D2162B34440,3.5925925925925926)
|
||||
(0103000000010000000400000019AE5D3CF8180140A5008D2162B344408894DB45FA290140F8C4EB987EB2444048C0FBBD27290140A9BBC5D646B3444019AE5D3CF8180140A5008D2162B34440,2.9259259259259259)
|
||||
(0103000000010000000400000019AE5D3CF8180140A5008D2162B3444048C0FBBD27290140A9BBC5D646B344407E88BE590E250140EB9DA83067B4444019AE5D3CF8180140A5008D2162B34440,2.8888888888888889)
|
||||
(010300000001000000040000007E88BE590E250140EB9DA83067B4444048C0FBBD27290140A9BBC5D646B34440C05105B65D3B014044A2D0B2EEB344407E88BE590E250140EB9DA83067B44440,2.6296296296296296)
|
||||
(01030000000100000004000000C05105B65D3B014044A2D0B2EEB3444048C0FBBD27290140A9BBC5D646B34440AABF5E61C13D0140E6E512830FB34440C05105B65D3B014044A2D0B2EEB34440,2.6296296296296296)
|
||||
(01030000000100000004000000C05105B65D3B014044A2D0B2EEB34440AABF5E61C13D0140E6E512830FB3444098933D2F02500140115B676994B34440C05105B65D3B014044A2D0B2EEB34440,3.1851851851851852)
|
||||
(01030000000100000004000000C05105B65D3B014044A2D0B2EEB3444098933D2F02500140115B676994B3444005329D125F4F01401C8049790FB44440C05105B65D3B014044A2D0B2EEB34440,3.7037037037037037)
|
||||
(0103000000010000000400000098933D2F02500140115B676994B34440AABF5E61C13D0140E6E512830FB34440581215F9574B0140FDF5BB4EAEB2444098933D2F02500140115B676994B34440,3.2592592592592593)
|
||||
(0103000000010000000400000098933D2F02500140115B676994B34440581215F9574B0140FDF5BB4EAEB2444054E45F2DB3570140BBDE724420B3444098933D2F02500140115B676994B34440,3.8888888888888889)
|
||||
(0103000000010000000400000054E45F2DB3570140BBDE724420B34440581215F9574B0140FDF5BB4EAEB24440E53EEA4DD05701407FD7C9557BB2444054E45F2DB3570140BBDE724420B34440,4.2592592592592593)
|
||||
(01030000000100000004000000E53EEA4DD05701407FD7C9557BB24440581215F9574B0140FDF5BB4EAEB2444052B81E85EB510140EEEBC03923B24440E53EEA4DD05701407FD7C9557BB24440,3.7037037037037037)
|
||||
(01030000000100000004000000E53EEA4DD05701407FD7C9557BB2444052B81E85EB510140EEEBC03923B244404BA3DC90595001405C456C9DA5B14440E53EEA4DD05701407FD7C9557BB24440,4.4814814814814815)
|
||||
(01030000000100000004000000E53EEA4DD05701407FD7C9557BB244404BA3DC90595001405C456C9DA5B144404A9CC694D34F01402B63A5BE7BB14440E53EEA4DD05701407FD7C9557BB24440,5.5185185185185185)
|
||||
(010300000001000000040000004A9CC694D34F01402B63A5BE7BB144404BA3DC90595001405C456C9DA5B144401383C0CAA145014088CC827674B144404A9CC694D34F01402B63A5BE7BB14440,5.0000000000000000)
|
||||
(010300000001000000040000004A9CC694D34F01402B63A5BE7BB144401383C0CAA145014088CC827674B14440DD24068195430140317345DA64B044404A9CC694D34F01402B63A5BE7BB14440,4.8518518518518518)
|
||||
(01030000000100000004000000DD24068195430140317345DA64B044401383C0CAA145014088CC827674B14440D1FA8198714001404285107D64B04440DD24068195430140317345DA64B04440,3.9259259259259259)
|
||||
(01030000000100000004000000DD24068195430140317345DA64B04440D1FA8198714001404285107D64B0444033E768B7D23A014002994E89AFAF4440DD24068195430140317345DA64B04440,4.2222222222222222)
|
||||
(0103000000010000000400000033E768B7D23A014002994E89AFAF4440D1FA8198714001404285107D64B04440EA6E133D52390140FD1AE7FAEFAF444033E768B7D23A014002994E89AFAF4440,3.5185185185185185)
|
||||
(0103000000010000000400000033E768B7D23A014002994E89AFAF4440EA6E133D52390140FD1AE7FAEFAF4440A167B3EA73350140E4141DC9E5AF444033E768B7D23A014002994E89AFAF4440,2.7407407407407407)
|
||||
(0103000000010000000400000033E768B7D23A014002994E89AFAF4440A167B3EA73350140E4141DC9E5AF44403A487527C5340140C76EEE11A6AF444033E768B7D23A014002994E89AFAF4440,2.9259259259259259)
|
||||
(0103000000010000000400000033E768B7D23A014002994E89AFAF44403A487527C5340140C76EEE11A6AF44404AEA043411360140D2B687AA85AF444033E768B7D23A014002994E89AFAF4440,3.9259259259259259)
|
||||
(010300000001000000040000004AEA043411360140D2B687AA85AF44403A487527C5340140C76EEE11A6AF4440C286A757CA3201409D8026C286AF44404AEA043411360140D2B687AA85AF4440,4.1111111111111111)
|
||||
(01030000000100000004000000C286A757CA3201409D8026C286AF44403A487527C5340140C76EEE11A6AF4440BADB448F542E01403AB4C876BEAF4440C286A757CA3201409D8026C286AF4440,4.1481481481481481)
|
||||
(01030000000100000004000000C286A757CA3201409D8026C286AF4440BADB448F542E01403AB4C876BEAF444004549A09D52F01403E3230057EAF4440C286A757CA3201409D8026C286AF4440,4.9629629629629630)
|
||||
(0103000000010000000400000004549A09D52F01403E3230057EAF4440BADB448F542E01403AB4C876BEAF4440FB12176D7B280140BDE1A0F9EBAF444004549A09D52F01403E3230057EAF4440,4.6296296296296296)
|
||||
(0103000000010000000400000004549A09D52F01403E3230057EAF4440FB12176D7B280140BDE1A0F9EBAF4440CCA4736BBF2201402B8716D9CEAF444004549A09D52F01403E3230057EAF4440,5.3703703703703704)
|
||||
(01030000000100000004000000CCA4736BBF2201402B8716D9CEAF4440FB12176D7B280140BDE1A0F9EBAF4440832C1EF13E2101402609AF4A0FB04440CCA4736BBF2201402B8716D9CEAF4440,5.0000000000000000)
|
||||
(01030000000100000004000000832C1EF13E2101402609AF4A0FB04440FB12176D7B280140BDE1A0F9EBAF4440F10DE756572701402134E4146CB14440832C1EF13E2101402609AF4A0FB04440,4.1111111111111111)
|
||||
(01030000000100000004000000832C1EF13E2101402609AF4A0FB04440F10DE756572701402134E4146CB14440F5F145CA781001401F2DCE18E6B04440832C1EF13E2101402609AF4A0FB04440,4.6666666666666667)
|
||||
(01030000000100000004000000832C1EF13E2101402609AF4A0FB04440F5F145CA781001401F2DCE18E6B044407CCD85A42915014017B22F2835B04440832C1EF13E2101402609AF4A0FB04440,5.5555555555555556)
|
||||
(01030000000100000004000000F5F145CA781001401F2DCE18E6B04440F10DE756572701402134E4146CB144403312B4DCAC14014047F8F1AAE1B14440F5F145CA781001401F2DCE18E6B04440,4.5555555555555556)
|
||||
(010300000001000000040000003312B4DCAC14014047F8F1AAE1B14440F10DE756572701402134E4146CB144408894DB45FA290140F8C4EB987EB244403312B4DCAC14014047F8F1AAE1B14440,3.6296296296296296)
|
||||
(010300000001000000040000008894DB45FA290140F8C4EB987EB24440F10DE756572701402134E4146CB144401DEBE2361A400140F79A0B4953B244408894DB45FA290140F8C4EB987EB24440,2.8518518518518519)
|
||||
(010300000001000000040000008894DB45FA290140F8C4EB987EB244401DEBE2361A400140F79A0B4953B24440AABF5E61C13D0140E6E512830FB344408894DB45FA290140F8C4EB987EB24440,2.5555555555555556)
|
||||
(010300000001000000040000008894DB45FA290140F8C4EB987EB24440AABF5E61C13D0140E6E512830FB3444048C0FBBD27290140A9BBC5D646B344408894DB45FA290140F8C4EB987EB24440,2.6666666666666667)
|
||||
(01030000000100000004000000AABF5E61C13D0140E6E512830FB344401DEBE2361A400140F79A0B4953B24440581215F9574B0140FDF5BB4EAEB24440AABF5E61C13D0140E6E512830FB34440,2.5925925925925926)
|
||||
(01030000000100000004000000581215F9574B0140FDF5BB4EAEB244401DEBE2361A400140F79A0B4953B24440EA6C9F19754B0140C0EE126009B24440581215F9574B0140FDF5BB4EAEB24440,2.8148148148148148)
|
||||
(01030000000100000004000000581215F9574B0140FDF5BB4EAEB24440EA6C9F19754B0140C0EE126009B2444052B81E85EB510140EEEBC03923B24440581215F9574B0140FDF5BB4EAEB24440,3.1481481481481481)
|
||||
(0103000000010000000400000052B81E85EB510140EEEBC03923B24440EA6C9F19754B0140C0EE126009B244404BA3DC90595001405C456C9DA5B1444052B81E85EB510140EEEBC03923B24440,3.9259259259259259)
|
||||
(010300000001000000040000004BA3DC90595001405C456C9DA5B14440EA6C9F19754B0140C0EE126009B244401383C0CAA145014088CC827674B144404BA3DC90595001405C456C9DA5B14440,4.1111111111111111)
|
||||
(010300000001000000040000001383C0CAA145014088CC827674B14440EA6C9F19754B0140C0EE126009B244401DEBE2361A400140F79A0B4953B244401383C0CAA145014088CC827674B14440,3.0000000000000000)
|
||||
(010300000001000000040000001383C0CAA145014088CC827674B144401DEBE2361A400140F79A0B4953B24440D0B02B40EE350140C90D9905EDB044401383C0CAA145014088CC827674B14440,2.9629629629629629)
|
||||
(010300000001000000040000001383C0CAA145014088CC827674B14440D0B02B40EE350140C90D9905EDB04440D1FA8198714001404285107D64B044401383C0CAA145014088CC827674B14440,3.4074074074074074)
|
||||
(01030000000100000004000000D1FA8198714001404285107D64B04440D0B02B40EE350140C90D9905EDB0444051DA1B7C613201406F36F4DA1DB04440D1FA8198714001404285107D64B04440,3.2222222222222222)
|
||||
(01030000000100000004000000D1FA8198714001404285107D64B0444051DA1B7C613201406F36F4DA1DB04440EA6E133D52390140FD1AE7FAEFAF4440D1FA8198714001404285107D64B04440,3.0370370370370370)
|
||||
(01030000000100000004000000EA6E133D52390140FD1AE7FAEFAF444051DA1B7C613201406F36F4DA1DB04440A167B3EA73350140E4141DC9E5AF4440EA6E133D52390140FD1AE7FAEFAF4440,2.2592592592592593)
|
||||
(01030000000100000004000000A167B3EA73350140E4141DC9E5AF444051DA1B7C613201406F36F4DA1DB04440BADB448F542E01403AB4C876BEAF4440A167B3EA73350140E4141DC9E5AF4440,2.7037037037037037)
|
||||
(01030000000100000004000000A167B3EA73350140E4141DC9E5AF4440BADB448F542E01403AB4C876BEAF44403A487527C5340140C76EEE11A6AF4440A167B3EA73350140E4141DC9E5AF4440,2.8148148148148148)
|
||||
(01030000000100000004000000BADB448F542E01403AB4C876BEAF444051DA1B7C613201406F36F4DA1DB04440FB12176D7B280140BDE1A0F9EBAF4440BADB448F542E01403AB4C876BEAF4440,3.7037037037037037)
|
||||
(01030000000100000004000000FB12176D7B280140BDE1A0F9EBAF444051DA1B7C613201406F36F4DA1DB04440F10DE756572701402134E4146CB14440FB12176D7B280140BDE1A0F9EBAF4440,3.5555555555555556)
|
||||
(01030000000100000004000000F10DE756572701402134E4146CB1444051DA1B7C613201406F36F4DA1DB04440D0B02B40EE350140C90D9905EDB04440F10DE756572701402134E4146CB14440,3.3333333333333333)
|
||||
(01030000000100000004000000F10DE756572701402134E4146CB14440D0B02B40EE350140C90D9905EDB044401DEBE2361A400140F79A0B4953B24440F10DE756572701402134E4146CB14440,3.0000000000000000)
|
||||
(77 rows)
|
6
src/pg/test/sql/14_densify_test.sql
Normal file
6
src/pg/test/sql/14_densify_test.sql
Normal file
@ -0,0 +1,6 @@
|
||||
with data as (
|
||||
select
|
||||
ARRAY[7.0,8.0,1.0,2.0,3.0,5.0,6.0,4.0] as colin,
|
||||
ARRAY[ST_GeomFromText('POINT(2.1744 41.4036)'),ST_GeomFromText('POINT(2.1228 41.3809)'),ST_GeomFromText('POINT(2.1511 41.3742)'),ST_GeomFromText('POINT(2.1528 41.4136)'),ST_GeomFromText('POINT(2.165 41.3917)'),ST_GeomFromText('POINT(2.1498 41.3713)'),ST_GeomFromText('POINT(2.1533 41.3683)'),ST_GeomFromText('POINT(2.131386 41.413998)')] as geomin
|
||||
)
|
||||
select CDB_Densify(geomin, colin, 2) from data;
|
6
src/pg/test/sql/15_tinmap_test.sql
Normal file
6
src/pg/test/sql/15_tinmap_test.sql
Normal file
@ -0,0 +1,6 @@
|
||||
with data as (
|
||||
select
|
||||
ARRAY[7.0,8.0,1.0,2.0,3.0,5.0,6.0,4.0] as colin,
|
||||
ARRAY[ST_GeomFromText('POINT(2.1744 41.4036)'),ST_GeomFromText('POINT(2.1228 41.3809)'),ST_GeomFromText('POINT(2.1511 41.3742)'),ST_GeomFromText('POINT(2.1528 41.4136)'),ST_GeomFromText('POINT(2.165 41.3917)'),ST_GeomFromText('POINT(2.1498 41.3713)'),ST_GeomFromText('POINT(2.1533 41.3683)'),ST_GeomFromText('POINT(2.131386 41.413998)')] as geomin
|
||||
)
|
||||
select CDB_TINmap(geomin, colin, 2) from data;
|
Loading…
Reference in New Issue
Block a user