pgLatLon

view create_test_db.data.sql @ 28:2c963e07c9b7

Added tag v0.6 for changeset a7ba8335e541
author jbe
date Thu Sep 22 23:37:45 2016 +0200 (2016-09-22)
parents 684a78d2f9f0
children 3cbce515387f
line source
2 CREATE OR REPLACE FUNCTION tmp_three_points()
3 RETURNS epoint[]
4 LANGUAGE plpgsql VOLATILE AS $$
5 DECLARE
6 p1 epoint;
7 p2 epoint;
8 p3 epoint;
9 BEGIN
10 p1 := epoint((asin(2*random()-1) / pi()) * 180, (2*random()-1) * 180);
11 p2 := epoint(latitude(p1) + (2*random()-1), longitude(p1) + cos(latitude(p1)/180*pi()) * (2*random()-1));
12 p3 := epoint(latitude(p1) + (2*random()-1), longitude(p1) + cos(latitude(p1)/180*pi()) * (2*random()-1));
13 RETURN ARRAY[p1, p2, p3];
14 END;
15 $$;
17 INSERT INTO "test" ("location", "surrounding", "multipoint", "triangle") SELECT
18 epoint((asin(2*random()-1) / pi()) * 180, (2*random()-1) * 180),
19 ecircle((asin(2*random()-1) / pi()) * 180, (2*random()-1) * 180, -ln(1-random()) * 1000),
20 ecluster_create_multipoint(tmp_three_points()),
21 ecluster_create_polygon(tmp_three_points())
22 FROM generate_series(1, 10000);
24 DROP FUNCTION tmp_three_points();

Impressum / About Us