Создание детерминированной c коллекции точек с использованием PostGIS - PullRequest
0 голосов
/ 08 февраля 2020

Я пытаюсь написать функцию PostGIS, которая принимает:

  • географическая c координата (на основе, скажем, EPSG: 3785)
  • плотность (в точек на квадратный метр)

и возвращает произвольное количество точек, близких к заданной координате, с гексагональным распределением при заданной плотности:

enter image description here

Но вот сложная часть: я хочу, чтобы это было детерминированность c. Другими словами, я хочу, чтобы набор точек всегда находился в одном и том же месте для данной плотности, независимо от того, какова данная координата. Возвращенные точки не должны содержать заданную координату, но они должны быть близки к ней.

Например, если я сначала сгенерирую некоторые точки вокруг A, а затем сгенерирую точки вокруг B, я хочу сделать Убедитесь, что все точки были бы "выровнены" с одинаковой плотностью, если бы я позже заполнил все точки между А и В:

enter image description here

I знаю, что это возможно на 2D-плоскости, но возможно ли это даже на такой сфере, как наша pl anet? Если нет, есть ли способ сделать что-то близкое? Ключом для моего приложения является детерминизм - распределение не обязательно должно быть «идеальным» шестиугольником, если это облегчает задачу.

Может кто-нибудь дать мне какое-нибудь руководство? Я прочитал этот пост о создании шестиугольных корзин на заданной области, но это не определенно c.

...