|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
поиск оптимального пути, привязка к сетке.
студент 5 курса
Харьков\Украина
Регистрация: 18.11.2012
Сообщений: 8
|
||
Просмотров: 3370
|
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Что вы понимаете под словом "прочитал" - посмотрел на код на елезнакомом диалекте или разобрался с принципом. Если второе - то что конкретно не получается реализовать в автолиспе, если первое - то вначале следует разобратся, что писать, а уж потом "браться за шашки".
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
Цитата:
из первого элемента распространяется волна(цифрами), которая является следующей точкой распространения волны. при этом он должен проверять занята ли следующая ячейка или нет. значит в автокаде ячейками будут являться точки привязки. как организовать проверку на наличие чего либо на пути я примерно понял, используя функцию ssget загоняем в набор круги(контактные площадки) и полилинии(уже проведенные трассы), используя фильтр, затем вытаскиваем данные из набора в список, проверяем на пересечение, если есть, то значит на пути объект, который нужно обойти. когда на пути больше нет объектов, то нарисовать поверх этих точек линию. загвоздка возникла в организации рисования линии(т.е. волны), в каком направлении она пойдет(вверх, вниз, вправо, влево), при этом ее по идее не должно быть видно. |
||||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Цитата:
з.ы. в вышеприведенном алгоритме, по моим прикидкам, при построении "волны" список будет "крайне неэффективен", а т.к. это единственный "родной" тип коллекций в АВТОлиспе, то стоит задуматся о смене либо алгоритма, либо языка.
__________________
Когда в руках молоток все вокруг кажется гвоздями. Последний раз редактировалось Дима_, 14.01.2013 в 11:25. |
|||
![]() |
|
||||
по алгоритмам, я бы посоветовал не пытаться сразу создавать идеальную трассировку!
Думаю, наиболее простым решением будет первоначальная трассировка с плохим результатом. Далее, написать несколько программ улучшайзеров, которые будут улучшать текущую трассировку по какому нибудь параметру, при этом, возможно ухудшать трассировку в целом. Все эти программы можно будет запустить единой программе по принципам генетического алгоритма, те. поставить проверку лучше/хуже, запускать все программы по очереди и смотреть результат. Если программа делает хуже, отменяем действие... Для создания простейшей трассировки, думаю достаточно все прорисовать вертикально - горизонтально и при получении пересечений сразу делать новый слой для удаления пересечения. В качестве улучшайзеров, можно использовать переброску на один слой, когда задача сводится к удалению пересечения между двумя линиями. Укорачивание трассы - убрать лишние петли итд. В целом, не вижу огромных трудностей по реализации. ps. Поддерживаю Дима_, не вижу смысла помогать в этой теме, если amadey18 сам не пишет кодов, только ждет результатов. Эта задача для меня понятна, но ее решение, лично мне, совершенно не нужно. Удачи!
__________________
Чем гениальнее ваш план, тем меньше людей с ним будут согласны. /Сунь Цзы/ |
||||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
relative path - как работает? | Angel_and | AutoCAD | 20 | 10.08.2016 14:43 |
Некорректная привязка к сетке | Domnika | AutoCAD | 8 | 27.04.2011 14:46 |
Палитра инструментов. Быстрая замена пути к источникам данных для всех элементов сразу. | hwd | AutoCAD | 10 | 30.11.2009 16:06 |
3d моделирование зданий. поиск наикротчайшего пути. | sasha_nt | Разное | 6 | 18.06.2008 18:24 |