PathFinder - znajdowanie najkrótszej ścieżki
Stronę tą wyświetlono już: 5109 razy
Projekt umożliwia stworzenie mapy składającej się z kwadratowych pól, gdzie każde pole może mieć przypisaną umowną wartość 1 oznaczającą przeszkodę, lub 0 gdy pole jest puste. W programie można narysować labirynt, a następnie go zapisać na dysku. Przeszukiwanie pól mapy odbywa się trzema metodami:
- przeszukiwania wszystkich pól sąsiadujących
- przeszukiwania pól sąsiadujących krawędzią
- przeszukiwania pól sąsiadujących narożnikami
Po uruchomieniu programu pojawi się okno programu z mapą o domyślnych rozmiarach 64 na 64 pola jak na rysunku 1.
W programie można przełączyć tryb wyświetlania mapy w następujące dwa stany:
- z maskowaniem (rysuje bitmapy przypisane dla przeszkody i ścieżki jak na rysunku 1)
- bez maskowania (rysuje rzeczywistą wartość liczbową, jaką zawiera pole mapy jak na rysunku 2)
Przełączenie trybu rysowania mapy jest dostępne z poziomu paska narzędziowego maska.
Pozostałe pozycje dostępne z poziomu paska narzędziowego są następujące:
- wczytaj - wczytuje plik z zapisaną mapą
- zapisz - zapisuje mapę do pliku
- wszystkie - tryb przeszukiwania wszystkich pól sąsiadujących;
- po prostej - tryb przeszukiwania pól sąsiadujących krawędzią
- po przekątnej - tryb przeszukiwania pól sąsiadujących narożnikami
- maska - zmiana trybu wyświetlania mapy
- wyczyść - czyszczenie mapy
- ścieżka - wyszukiwanie ścieżki w trybie "rzeczywistym" do miejsca położenia kursora myszy jako punktu docelowego
- symulacja - wyszukiwanie ścieżki w trybie zwolnionym, umożliwiającym obejrzenie działania algorytmu, w trybie symulacji wymagane jest kliknięcie na mapie punktu docelowego lewym przyciskiem myszy.
- rysowanie - w tym trybie możliwe jest rysowanie labiryntu poprzez naciśniecie lewego przycisku myszy przytrzymaniu go i upuszczeniu. Za pomocą prawego przyciska myszy możliwe jest wymazywanie elementów labiryntu.
Wideo prezentacja programu:
Tytuł:
C++ Zbiór zadań z rozwiązaniami
Autor:
Tomasz Jaśniewski
Tytuł:
Mikrokontrolery dla hobbystów. Projekty DIY w języku C i C++
Autor:
Miguel Angel Garcia-Ruiz, Pedro Cesar Santana Mancilla
Tytuł:
Architektura oprogramowania bez tajemnic. Wykorzystaj język C++ do tworzenia wydajnych aplikacji i systemów
Autor:
Adrian Ostrowski, Piotr Gaczkowski
Tytuł:
Wprowadzenie do C++
Autor:
Michał Matlak
Tytuł:
Opus magnum C++ 11. Programowanie w języku C++. Wydanie II poprawione (komplet)
Autor:
Jerzy Grębosz
Tytuł:
Programowanie wieloplatformowe z C++ i wxWidgets 3
Autor:
Bartosz W. Warzocha
Tytuł:
Język C++ i przetwarzanie współbieżne w akcji. Wydanie II
Autor:
Anthony Williams
Tytuł:
C++ dla bystrzaków. Wydanie VII
Autor:
Stephen R. Davis
Tytuł:
Tablice informatyczne. Podstawy C++
Autor:
Radosław Sokół
Tytuł:
Opus magnum C++11. Programowanie w języku C++ (komplet)
Autor:
Jerzy Grębosz