Добрый день! Работаю геодезистом в археологической конторе, и сегодня возникла некоторая проблема, посему прошу помощи в решение весьма интересной на мой взгляд задачи, постараюсь изложить максимально понятно.
В общем есть раскоп - прямоугольник или квадрат, с известными координатами углов (х,у). На эту площадь наложена квадратная сетка со стороной в 1 метр, по длинной стороне промаркирована буквенно, по короткой - циферно. В общем, как в игре "морской бой". На всей площади квадрата находится некоторое количество археологических находок, с тоже известными координатами. Вопрос заключается в том, как запрограммировать так, чтобы в экселе исходя из координаты находки определялся ее квадрат - А5, Б8, К4 и т.д.
Это просто лишь когда квадратная сетка и сам раскоп расположены ортогонально, т.е. строго параллельны осям х и у - так как смена квадрата идет ровно через метр. т.е например точка имеет координаты (5.5;7.2). и находится в квадрате Е (т.к. линия Е между 5 и 6 метром) 8 (между 7 и 8 метром квадратной сетки)
Но очень часто случается так что раскоп и соответственно сетка повернуты относительно осей. Ну как пример квадрат стоит на углу, как ромб. Как быть в таком случае? Пока придумал что надо как-то вычислять длину каждой стороны и делить на метровые отрезки и уже от этого отталкиваться в определении квадрата. Как это сделать, помогите пожалуйста? [moder]Покажите в файле
upd: прикладываю решение для ортогонально развернутого раскопа
Добрый день! Работаю геодезистом в археологической конторе, и сегодня возникла некоторая проблема, посему прошу помощи в решение весьма интересной на мой взгляд задачи, постараюсь изложить максимально понятно.
В общем есть раскоп - прямоугольник или квадрат, с известными координатами углов (х,у). На эту площадь наложена квадратная сетка со стороной в 1 метр, по длинной стороне промаркирована буквенно, по короткой - циферно. В общем, как в игре "морской бой". На всей площади квадрата находится некоторое количество археологических находок, с тоже известными координатами. Вопрос заключается в том, как запрограммировать так, чтобы в экселе исходя из координаты находки определялся ее квадрат - А5, Б8, К4 и т.д.
Это просто лишь когда квадратная сетка и сам раскоп расположены ортогонально, т.е. строго параллельны осям х и у - так как смена квадрата идет ровно через метр. т.е например точка имеет координаты (5.5;7.2). и находится в квадрате Е (т.к. линия Е между 5 и 6 метром) 8 (между 7 и 8 метром квадратной сетки)
Но очень часто случается так что раскоп и соответственно сетка повернуты относительно осей. Ну как пример квадрат стоит на углу, как ромб. Как быть в таком случае? Пока придумал что надо как-то вычислять длину каждой стороны и делить на метровые отрезки и уже от этого отталкиваться в определении квадрата. Как это сделать, помогите пожалуйста? [moder]Покажите в файле
upd: прикладываю решение для ортогонально развернутого раскопаDitrih24
Вообще, для привязки предмета к квадрату нужно знать координаты трёх угловых точек рассматриваемой зоны раскопок. Из них вычислить "г4" уже будет несложно. Если сторона зоны раскопки лежит в направлении север-юг или запад-восток, достаточно иметь координаты двух диагональных углов зоны раскопки. Вычисления ещё проще.
Вообще, для привязки предмета к квадрату нужно знать координаты трёх угловых точек рассматриваемой зоны раскопок. Из них вычислить "г4" уже будет несложно. Если сторона зоны раскопки лежит в направлении север-юг или запад-восток, достаточно иметь координаты двух диагональных углов зоны раскопки. Вычисления ещё проще.Светлый
На сколько я понял, то система измерения в обычных метрах и разница в одну единицу по x и по y означает разницу в один метр. К данной системе применяется обычная тригонометрия.
Для повернутого прямоугольника необходимо знать начало координат (какая вершина является точкой отсчета) и на какой угол повернут прямоугольник. Размеры сторон прямоугольника даже не важны, можно принять их бесконечными, но координаты всех точек вершин могут понадобится для определения на какой угол повернут прямоугольник.
Приведите пример с повернутым прямоугольником с указанием координат
На сколько я понял, то система измерения в обычных метрах и разница в одну единицу по x и по y означает разницу в один метр. К данной системе применяется обычная тригонометрия.
Для повернутого прямоугольника необходимо знать начало координат (какая вершина является точкой отсчета) и на какой угол повернут прямоугольник. Размеры сторон прямоугольника даже не важны, можно принять их бесконечными, но координаты всех точек вершин могут понадобится для определения на какой угол повернут прямоугольник.
Приведите пример с повернутым прямоугольником с указанием координатMCH
Приведите пример с повернутым прямоугольником с указанием координат
В приложении раскоп 4х2, по длинной стороне буквенная маркировка - А,Б,В,Г; по короткой циферная - 1,2. Так же для примера расположил там 3 находки, квадраты которых необходимо определить. Я понимаю что как-то это возможно сделать, но вот как - не знаю ) Думается, что вся археологическая общественность будет признательна за помощь :3
чуть не забыл - в этом примере точкой отсчета является угол 4, от него слева направо идут буквы, и снизу вверх - цифры. да, все верно, метровая система, с точностью в 2 цифры после запятой, т.е. до сантиметра.
Приведите пример с повернутым прямоугольником с указанием координат
В приложении раскоп 4х2, по длинной стороне буквенная маркировка - А,Б,В,Г; по короткой циферная - 1,2. Так же для примера расположил там 3 находки, квадраты которых необходимо определить. Я понимаю что как-то это возможно сделать, но вот как - не знаю ) Думается, что вся археологическая общественность будет признательна за помощь :3
чуть не забыл - в этом примере точкой отсчета является угол 4, от него слева направо идут буквы, и снизу вверх - цифры. да, все верно, метровая система, с точностью в 2 цифры после запятой, т.е. до сантиметра.Ditrih24
В аттаче закрепил скрин раскопа с подписями углов.
Координаты углов в файле не соответствуют картинке. Я делал всё по координатам. Стороны прямоугольника из файла равны 4 и 8 метров, а на картинке 2 и 4. Или шаг задан 2 метра.
В аттаче закрепил скрин раскопа с подписями углов.
Координаты углов в файле не соответствуют картинке. Я делал всё по координатам. Стороны прямоугольника из файла равны 4 и 8 метров, а на картинке 2 и 4. Или шаг задан 2 метра.Светлый
Программировать проще, чем писать стихи.
Сообщение отредактировал Светлый - Понедельник, 26.10.2015, 08:18
Координаты углов в файле не соответствуют картинке. Я делал всё по координатам. Стороны прямоугольника из файла равны 4 и 8 метров, а на картинке 2 и 4. Или шаг задан 2 метра.
Извиняюсь, шаг действительно 2 метра. Все точно! Спасибо огромное за помощь! Проблема решена, тему можно закрывать. [moder]А отписаться на другом(других) форуме, где вы задавали этот вопрос?
Координаты углов в файле не соответствуют картинке. Я делал всё по координатам. Стороны прямоугольника из файла равны 4 и 8 метров, а на картинке 2 и 4. Или шаг задан 2 метра.
Извиняюсь, шаг действительно 2 метра. Все точно! Спасибо огромное за помощь! Проблема решена, тему можно закрывать. [moder]А отписаться на другом(других) форуме, где вы задавали этот вопрос?Ditrih24
Сообщение отредактировал _Boroda_ - Понедельник, 26.10.2015, 14:57