Size: a a a

2021 May 19

А

Александр in PostGIS
Если искать центральную линию из полигона(медиану, там аппроксимация, в последней версии postgis есть), то это ещё одна функция, если просто по прямой то все не так сложно
источник

А

Александр in PostGIS
Ну и чем сложнее полигон, тем больше select, скорее всего проще функции свои дописывать
источник

А

Александр in PostGIS
Допустим получился multipoligon, снова разбивка или работа с массивами
источник

DP

Darafei Praliaskousk... in PostGIS
эту задачу решили ребята в pprepair
источник

DP

Darafei Praliaskousk... in PostGIS
веселее всего наложение семи полигонов
источник

А

Александр in PostGIS
Закину в копилку)
источник

Аa

Александр Петров aka... in PostGIS
Спасибо. Надо изучить.
источник

AB

Anton [az09@osm] Bel... in PostGIS
привет. поделись какие были успехи пожалуйста
источник

t

tamirlan in PostGIS
Привет.

Подскажите, пожалуйста, про обновление postgis.

Есть postgres12 c postgis2.5, в таблице колонка типа Point c GIST индексом. Я хочу обновиться до postgis3.1.

1) Насколько я понял, чтобы сделать SELECT postgis_extensions_upgrade(), нужно иметь обе версии postgis в системе, но я не могу их поставить из-за конфликтов (Fedora 31). Как можно обновиться по-другому?

2) Нужно ли после обновления пересоздавать индекс для колонки?

Спасибо.
источник

C

Che in PostGIS
Так это скорее объединение
источник

C

Che in PostGIS
Можно и ещё раз задачу, есть таблица с полигонами, нужно объединить те которые пересекаются между собой?
источник
2021 May 20

А

Александр in PostGIS
Выше ссылку скидывал, на основе запроса делается такой простой: select ST_Union(a.geom, b.geom) from t1 a, t1 b where ST_Intersects
   (a.geom,b.geom) AND a.id<b.id;
источник

C

Che in PostGIS
источник

C

Che in PostGIS
Блин, без данных очень сложно придумать запрос, попробовал полигончики спереть из осм но тоже все без толку, что бы что то изобразить похожее на ваши данные нужно потратить времени, чего не хочется.

У меня была задача из объектов сделать полигоны, предварительно сгруппировав (кластеризовав по тому которые рядом 10 -15 метров) и в качестве границ полигона выбрать внешний периметр, то запрос выглядел примерно так
источник

C

Che in PostGIS
Можно попробовать кластеризовать для получения тех которые пересекаются, а потом уже делать серию st_clip для получения кусочков  а потом по нужные из них объединять
источник

А

Александр in PostGIS
Ещё иногда делаю представления чтоб не плодить вложенные под запросы
источник

А

Александр in PostGIS
Данные с осм тяну с локальной бд, крутится в докере...
источник

А

Александр in PostGIS
И в ней же работаю
источник
2021 May 22

A

Andrey in PostGIS
Всем привет! Кто-нибудь может плиз объяснить как работает ST_Project? Пробую следующее: от заданной точки отложить определённое расстояние в метрах строго на восток (азимут 90). При этом меняются обе координаты (хотя я ожидал, чтоб будет меняться только одна)

```
SELECT ST_AsText(ST_Project('POINT (2.350987 48.856667)'::geometry, 2400000, radians(90)));
```

выдаёт

`POINT(33.284046083173976 44.458910993046004)`
источник

A

Andrey in PostGIS
или обратный вопрос, почему если менять только долготу, то азимут не 90?

SELECT degrees(st_azimuth('POINT (2 48)'::geography, 'POINT (35 48)'::geography));

77.585052978548


(Пардон, если нубский вопрос)
источник