Запрос близости береговой линии | |
---|---|
boba Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
Пакет gmt среди прочего
позволяет вывести во внешний файл береговую линию или границу. Это точки, линия между ними представляется линеаментами Есть точки, рассыпанные по территории Задача, найти только те, что лежат не далее 5 км от береговой линии. Если бы нужно было найти минимальные расстояния до точек береговой линии, тогда не проблема. Понять, внутри береговой линии или нет, тоже делается легко. А так решения не вижу. Конечно, хотелось бы sql select |
Re: Запрос близости береговой линии | |
---|---|
danton1973 Сообщений: 143 Откуда: Пермь Дата регистрации: 10.08.2020 |
Не совсем понятно:
Как рассчитывать расстояние от точки до побережья: по оси координат или до ближайшей точки побережья по радиусу окружности. |
Re: Запрос близости береговой линии | |
---|---|
boba Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
До ближайшей точки побережья
|
Re: Запрос близости береговой линии | |
---|---|
danton1973 Сообщений: 143 Откуда: Пермь Дата регистрации: 10.08.2020 |
Что то подобное askdev.ru
если по табличным данным: min(abs(X1-X2)) and min(abs(Y1-Y2)) |
Re: Запрос близости береговой линии | |
---|---|
boba Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
Так файл то береговой линии
это точки. А между ними должна аппроксимация линией, которой нет в таблице Это и была суть вопроса |
Re: Запрос близости береговой линии | |
---|---|
danton1973 Сообщений: 143 Откуда: Пермь Дата регистрации: 10.08.2020 |
Ну да: в таблице координаты точек береговой линии. Координаты проверяемой точки известны. min(abs(X1-X2)) and min(abs(Y1-Y2)).
Где X1,Y1 координаты точки береговой линии, X2,Y2 координаты проверяемой точки. |
Re: Запрос близости береговой линии | |
---|---|
PaulWist Сообщений: 14601 Дата регистрации: 01.04.2004 |
так находится ближайшая известная точка береговой линии, а Володе надо найти минимальное расстояние до береговой линии, типа (отмечено красной линией), те строит треугольник и находить высоту: [attachment 35540 Search.png] ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) Исправлено 1 раз(а). Последнее : PaulWist, 02.07.21 12:27 |
Re: Запрос близости береговой линии | |
---|---|
PaulWist Сообщений: 14601 Дата регистрации: 01.04.2004 |
Кстати, точки береговой линии упорядочены, те можно определить "предыдущую" и "последующую" точки для точки с минимальным расстоянием? Если Да, то строить ДВА треугольника и определять мин расстояние до береговой линии, в вырожденном случае мин расстояние может быть до двух или нескольких берегов.
------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Запрос близости береговой линии | |
---|---|
boba Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
Написал уже
Критерий не удается удачно индексировать Каталог событий, с которым нужно сравнивать береговую линию- больше двух с половиной миллионов событий. Нужен такой алгоритм, который бы работал в реальные сроки. |
Re: Запрос близости береговой линии | |
---|---|
_vit Сообщений: 5173 Дата регистрации: 29.07.2002 |
Сделать поиск за два прохода.
на первом, отбросить все события где расстояния до точек задающих береговую линии больше 5 * sqrt(2) (ну или какое то более обоснованное значение). Оставшие обрабатывать точным алгоритмом. |
Re: Запрос близости береговой линии | |
---|---|
leonid Сообщений: 3202 Откуда: Рига Дата регистрации: 03.02.2006 |
Нельзя так делать. Событие может быть очень далеко от всех заданных береговых точек, но при этом оказаться очень близко от линии, соединяющую пару последовательных точек. |
Re: Запрос близости береговой линии | |
---|---|
_vit Сообщений: 5173 Дата регистрации: 29.07.2002 |
Если береговая линия задана точками то я могу предположить что между точками она апроксимируется либо кусочно-линейно либо сплайнами либо еще не знаю как. Сплайнами довольно накладно а для кусочно-линейной апроксимации мое решение должно подходить. Вобщем для решения задачи это необходимо уточнить. |
Re: Запрос близости береговой линии | |
---|---|
leonid Сообщений: 3202 Откуда: Рига Дата регистрации: 03.02.2006 |
Как раз нет. [attachment 35541 bereg.png] От точки О до двух ближайщих точек С и D достаточно близко. Но если мы отбросим из рассмотрения две далекие точки А и В, то расстояние до берега будет вычислено неверно. |
Re: Запрос близости береговой линии | |
---|---|
_vit Сообщений: 5173 Дата регистрации: 29.07.2002 |
Ну так я и написал (ну или какое то более обоснованное значение).;)
есть ведь некое значение больше которого события можно отбросить. Впрочем это зависит от деталей которые не указаны. Может все события приграничные а точки задающие береговую линию могут быть сильно удалены. |
Re: Запрос близости береговой линии | |
---|---|
leonid Сообщений: 3202 Откуда: Рига Дата регистрации: 03.02.2006 |
Я понимаю, на самом деле задача может быть совсем другой, может там еще куча условий, которые мы не знаем. Но в той формулировке, как она была приведена, ничего отбрасывать нельзя.
|
Re: Запрос близости береговой линии | |
---|---|
of63 Автор Сообщений: 25161 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
функция (предел) от точности карты м.б.
() занесло меня сюда не вовремя, изв. () все у физиков , как "предел" все время... () толькол не слово "фрактал", это пустое, мтк... Исправлено 3 раз(а). Последнее : of63, 08.07.21 01:04 |
© 2000-2024 Fox Club  |