A* двумя волнами

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Lord_Satan
Обычный пользователь
Обычный пользователь
 
Сообщения: 76
Зарегистрирован: 08.12.2001 (Сб) 10:26
Откуда: П.-К.

A* двумя волнами

Сообщение Lord_Satan » 17.06.2004 (Чт) 11:21

Народ просьба заценить мой исходник Navigate2D (послан на VBS 17.06.04)(коментариев нету, т.к. делал для себя, можно их вставить, но незнаю нужен ли кому еще такой алгоритм? ведь он 2D)
Нахождение кратчаёшего пути методом A*,
Я использовал карту направлений, сам поиск происходит путём запуска 2ух волн, в каждой волне из просматриваемых точек, удаляются не нужные направления, путь прокладывается из точки столкновения волн.
У меня на VB6 работает очень быстро примерно за 0.001-0.01 секунды
===========
Только сегодня увидел функции GetMem и PutMem, незнаю покатят ли они в Navigate2D, если есть кто с "взглядом матёрого мамонта програмёра"
скажите мне на lordsatan@mail.ru
==========
Space Ace says: "Whant to be a DREAD courier?"

sanches
El compañero
El compañero
 
Сообщения: 823
Зарегистрирован: 09.01.2003 (Чт) 3:58
Откуда: Р_О_С_С_И_Я ! (Питер)

Сообщение sanches » 17.06.2004 (Чт) 12:36

ждемссс......
мне как раз нужно.....

p.s. вот ты указал время, а каких размеров сетка то была?
Изображение

Lord_Satan
Обычный пользователь
Обычный пользователь
 
Сообщения: 76
Зарегистрирован: 08.12.2001 (Сб) 10:26
Откуда: П.-К.

Сообщение Lord_Satan » 18.06.2004 (Пт) 9:24

Да еще "косяк, не косяк" 8)
Путь проложенный за чётное колличество шагов
Отличается от пути с не чётным колличеством

Картинка прилагается
Вложения
0.rar
(10.03 Кб) Скачиваний: 74
Space Ace says: "Whant to be a DREAD courier?"

Lord_Satan
Обычный пользователь
Обычный пользователь
 
Сообщения: 76
Зарегистрирован: 08.12.2001 (Сб) 10:26
Откуда: П.-К.

Сообщение Lord_Satan » 20.06.2004 (Вс) 9:29

Вот ехе файлы с картой
исходники администрация еще не выложила
Вложения
Pathfind.rar
есть версия рисующия путь по возвращаеМуМу масиву направлений от А и до Б
и версия дебаговая
рисует волны в процессе их запуска
и пути от точки столкновкния до А и до Б в процессе их поиска
(84.29 Кб) Скачиваний: 90
Space Ace says: "Whant to be a DREAD courier?"

Lord_Satan
Обычный пользователь
Обычный пользователь
 
Сообщения: 76
Зарегистрирован: 08.12.2001 (Сб) 10:26
Откуда: П.-К.

Сообщение Lord_Satan » 20.06.2004 (Вс) 18:49

Народ подскажите как изменить алгоритм для бесконечных карт
типа один старшип ищет другой в космосе
Space Ace says: "Whant to be a DREAD courier?"

sanches
El compañero
El compañero
 
Сообщения: 823
Зарегистрирован: 09.01.2003 (Чт) 3:58
Откуда: Р_О_С_С_И_Я ! (Питер)

Сообщение sanches » 22.06.2004 (Вт) 23:31

Lord_Satan писал(а):Народ подскажите как изменить алгоритм для бесконечных карт
типа один старшип ищет другой в космосе

у тебя есть отправные координаты и целевые на бесконечной карте? так тогда просто "вырезаешь" кусок карты и путь просчитываешь в нем ... или я нет так вопрос понял?
Изображение

Lord_Satan
Обычный пользователь
Обычный пользователь
 
Сообщения: 76
Зарегистрирован: 08.12.2001 (Сб) 10:26
Откуда: П.-К.

Сообщение Lord_Satan » 24.06.2004 (Чт) 9:28

у меня поиск расчитан на тайловую карту максимум 512*512(но можно и 1024*1024)
а в космое нету тайлов
растояние может быть ОЧЕНЬ большим
при волновом поиске алгоритм тормозит (0.05-0.1 с.)

Придётся отказатся от него 8(
Space Ace says: "Whant to be a DREAD courier?"


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 31

    TopList