Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2009, 09:40   #31
slan
Форумчанин
 
Аватар для slan
 
Регистрация: 30.01.2008
Сообщений: 314
По умолчанию

я тоже считал(и считаю), что мы говорим о замкнутом контуре.(кстати, незамкнутых контуров и не бывает

А Вы считаете себя классиком? без обид, к слову пришлось. Но под классикой обычно подразумеваются широко известные(опубликованные) вещи, хотя бы и в узких кругах..


я вот тоже накропал.. но в геодезии тум-тум, и таких терминов как дирекционный угол даже не слышал ранее
slan вне форума Ответить с цитированием
Старый 23.03.2009, 12:55   #32
Sh_Alex
Пользователь
 
Регистрация: 02.02.2009
Сообщений: 59
По умолчанию

Цитата:
Сообщение от slan Посмотреть сообщение
Но под классикой обычно подразумеваются широко известные(опубликованные) вещи, хотя бы и в узких кругах...
Алгоритм нахождения дирекционного угла направления между 2-мя точками по их координатам, считается классическим для машинного счета и опубликован в литературе по геодезии. Моя "заслуга" состоит только в том, что я его переложил его на язык VBA.
И конечно, никаких обид с моей стороны быть не может.
С уважением, Александр.
Sh_Alex вне форума Ответить с цитированием
Старый 23.03.2009, 13:54   #33
slan
Форумчанин
 
Аватар для slan
 
Регистрация: 30.01.2008
Сообщений: 314
По умолчанию

аа-а..
а как это относится к определению направления обхода?

я именно про это спрашивал.

да, и еще хочестя знать - зачем нужно это направление? что от этого зависит?
slan вне форума Ответить с цитированием
Старый 23.03.2009, 18:10   #34
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

вот, теперь красиво. на задачу - одна формула (почти одна).
в колонках А, В пишем координаты точек, в ячейку Д1 - количество точек, которые необходимо пройти. в книге присутствуют 5 поименованных массивов (формула так записывается короче и запись формулы очень близка к математической записи выражения, определяющего расположение точки относительно вектора).
Алгоритм простой: последовательно для каждого вектора (для каждой сторны многоугольника, заданной координатами начальной и конечной точек) определяется количество вершин многоугольника, оказавшихся правее или левее рассматриваемого вектора.
Никаких проверок не производится, предполагается, что задана корректная последовательность точек. Корректна любая последовательность точек, при которой стороны многоугольника не пересекаются. Укажите в приведенном примере вместо цифры 6 3 или 4 точки - увидите другую картинку. 5 точек (для данной последовательности) - некорректное число, видно на графике.
Вложения
Тип файла: rar Книга63.rar (5.4 Кб, 24 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 12.05.2009, 22:29   #35
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 844
По умолчанию Возвращаемся к проблеме

Вот этот пример об считывается не правильно. (
Направление обхода точек реально по часовой стрелки. Где-то все же ошибка....
Вложения
Тип файла: rar направление обхода точек.rar (16.9 Кб, 22 просмотров)
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Старый 12.05.2009, 23:47   #36
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Что значит неправильно? Ещё как правильно...

Взгляните на изменение направления:
Цитата:
Направление
0 0 1 1 -1 -1 1 -1 1 1 1 -1 -1 0 1
Для 16 точек направление обхода изменяется 7 раз.

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

PS: При разработке графической части макроса я не предусмотрел, что реальные значения координат будут так велики по модулю, а отличаться друг от друга будут незначительно. Поэтому на графике точки не отображаются.
Если надо, я модернизирую макрос, чтобы все точки отображались на графике. В этом случае Вы воочию сможете убедиться в ошибочности Вашего утверждения.
EducatedFool вне форума Ответить с цитированием
Старый 13.05.2009, 03:00   #37
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
Направление обхода точек реально по часовой стрелки. Где-то все же ошибка....
Алексей, думаю ошибка в том, что мы смотрим на часовые стрелки с разных сторон: я с внешней стороны (через стекло), а вы из внутренней (через часовой механизм).
смотрим вложение. исходные взяты с вашего поста (№35).
Вложения
Тип файла: rar Книга63.rar (8.2 Кб, 18 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 13.05.2009, 07:12   #38
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 844
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
PS: При разработке графической части макроса я не предусмотрел, что реальные значения координат будут так велики по модулю, а отличаться друг от друга будут незначительно. Поэтому на графике точки не отображаются.
Если надо, я модернизирую макрос, чтобы все точки отображались на графике. В этом случае Вы воочию сможете убедиться в ошибочности Вашего утверждения.
Вот привожу пример графическое расположение точек.
Изображения
Тип файла: jpg точки.jpg (20.1 Кб, 166 просмотров)
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Старый 13.05.2009, 07:23   #39
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 844
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
Алексей, думаю ошибка в том, что мы смотрим на часовые стрелки с разных сторон: я с внешней стороны (через стекло), а вы из внутренней (через часовой механизм).
смотрим вложение. исходные взяты с вашего поста (№35).
Я использовал этот алгоритм уже более двухсот раз, это первое расхождение.
Вообще-то нужно говорить не "по/против часовой" стрелки, а "правые по ходу лежащие углы" и "левые по ходу лежащие углы". С точки зрения геодезии это будет более грамотно и наглядно. В данном случае условия формул требуют наличия "правых" углов.
Со ориентироваться просто, нам в технаре рассказывали о "тропинке", нужно "встать" на линию лицом по направлению ее движения, и "идти" по ней. Все углы которые будут измеряться в сторону правой руки будут "правые". В одной линии углы должны быть одного вида.
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Старый 13.05.2009, 10:47   #40
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

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

Последний раз редактировалось IgorGO; 13.05.2009 в 11:15.
IgorGO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определение IP IvanLex HTML и CSS 6 28.03.2008 07:46
Определение IP IvanLex Общие вопросы по Java, Java SE, Kotlin 1 19.02.2008 09:12