Strona 1 z 1
Sekwencyjne zapalanie diodek
: 30 paź 2012 13:52
autor: Marcin_K
Mam powiedzmy kilkanaście diodek na panelu użytkownika. Zapalają się kolejno, pierwsza się świeci, druga się świeci pierwsza gasi, trzecia świeci druga gasi itp.
To potrafię zrobić za pomocą struktury sekwencyjnej. Moje zadanie jest utrudnione bo chcę, żeby w zależności od użytkownika w akcji brało udział więcej diod na raz.
Tzn. użytkownik da na wejście '3'. Czyli pierwsza się zapala, druga się zapala, trzecią się zapala, czwarta się zapala pierwsza gaśnie, piąta się zapala druga gaśnie itp.
Jak to można zrealizować?
Nie mogę umieścić diodek w tablicy bo chcę je rozmieścić w dowolny sposób a wrzucając je do tablicy mam je w linii prostej :/
Sekwencyjne zapalanie diodek
: 30 paź 2012 14:25
autor: broonet
Czy możesz jaśniej przedstawić problem? Możesz , chyba, użyć zamiany tablicy na klaster.
Jest funkcja 'Array to Cluster', z klastra wyciągnąć można diody przez Unbundle i wtedy to będą osobne elementy, ale to samo można zrobić przez korzystanie z Index Array.
Sekwencyjne zapalanie diodek
: 30 paź 2012 14:29
autor: Mikrobi
Struktura sekwencyjna to nie jest dobry pomysł: dużo miejsca, dużo nadmiarowego kodu. Raczej pętla FOR która odczytuje cały wiersz, czyli na wejście dostaje tablicę dwuwymiarową, zawierającą w kolejnych wierszach kolejne stany indykatorów (diod 8-))
Tak jak napisał broonet: jaki efekt chcesz uzyskać na interfejsie? czy możesz przedstawić interfejs? albo lepiej kod?
Re: Sekwencyjne zapalanie diodek
: 30 paź 2012 14:30
autor: Marcin_K
To ma być animacja przedstawiająca ruch pojazdów. Pas ruchu wyłożony diodami. Jeden pojazd łatwo zrealizować ale pojazdów może być dowolna ilość. Może jechać ich 10 jeden za drugim - i to muszę pokazać jakoś na tych diodach.
Sekwencyjne zapalanie diodek
: 30 paź 2012 14:54
autor: broonet
Jezdnia to tablica 2D ze zgaszonymi diodami. Do tej tablicy wstawisz w odpowiednich wierszach krótkie wiersze z zapalonymi diodami (samochody) w pozycjach od indeksu 0 potem do indeksu 1 , potem 2 itede.
Jak jezdnia jest pionowo na interfejsie to wstawisz w kolumny, jak poziomo to w wiersze.
Pokazac kod? ;)
Re: Sekwencyjne zapalanie diodek
: 30 paź 2012 17:06
autor: Marcin_K
Byłbym bardzo wdzięczny za pokazanie kodu
Poziomo i pionowo diody mi nie wystarczą. Potrzebuje je ustawiać w dowolny sposób (zakręty)
Re: Sekwencyjne zapalanie diodek
: 01 lis 2012 12:57
autor: Marcin_K
Pomoże ktoś z tym kodem? ;)
Sekwencyjne zapalanie diodek
: 01 lis 2012 19:01
autor: Mikrobi
Kontrolek w dowolny sposób, skoro maja tylko współrzędne x i y w kwadratowym układzie współrzędnych raczej nie ustawisz.
Całość sprowadza się do stałej tablicy będącej wzorem skrzyzowania i operowaniu funkcją
Replace Array Subset oraz warunków typu:
- jeśli dojechałem do zakrętu to zamiast inkrementować/dekrementować pozycję w wierszu inkrementuję/dekrementuję pozycję kolumny.
Przykład poniżej przejazd i zakręt.
Samo rozwiązanie na elementach tablicy średnio mi się podoba. Zastanów się nad rozwiązaniem z indykatorem Picture i wstawianiem obrazka samochodu.
Re: Sekwencyjne zapalanie diodek
: 01 lis 2012 21:45
autor: Marcin_K
Dzięki za pomoc ale jak ja mam tym sterować?
Dobra, już mniej więcej ogarnąłem ale tym rozwiązaniem nie zadowole mojego promotora
Jakieś wskazówki co do tego rozwiązania z wstawianiem obrazka samochodu?
Moje skrzyżowanie jest dość złożone. Będzie się na nim w jednej chwili dużo działo. Muszę znaleźć sposób na wygenerowanie dużej ilości pojazdów i przemieszczanie ich ...
Sekwencyjne zapalanie diodek
: 02 lis 2012 08:25
autor: Mikrobi
Wskazówki ponizej:
Pole do popisu jest duże.
Na przykład tablica z obrazkami samochodów może być dwu wymiarowa, kolejne samochody w wierszu mogą być obrócone o określony kąt w lewo lub w prawo.
To pozwoli je wykorzystać jako obrazki zakręcającego samochodu. Do tego samego obrazka ze skrzyżowaniem można wprowadzać dowolną liczbę obiektów.
Zamiast obrazków o formacie jpg można wykorzystać png i korzystać z transparencji by uniknąć efektu jasnego prostokąta widocznego wokół niebieskiego samochodu stojącego na skrzyżowaniu.
Samo sterowanie skrzyżowaniem trzeba będzie solidnie przemyśleć i przećwiczyć na jak najprostszych wariantach - jeden samochód, dwa jadące w różnych kierunkach itd.
Re: Sekwencyjne zapalanie diodek
: 02 lis 2012 11:56
autor: Marcin_K
Wielkie dzięki!
Sterowanie skrzyżowaniem mam zrobione. Teraz walczę właśnie z animacją. Wykorzystując zaproponowane przez Ciebie rozwiązanie będą możliwe takie sytuacje, że kilka pojazdów jedzie jeden za drugim po jednym pasie, raz 4, raz 1, raz żaden, przez np. 30 minut tzn. zmienne natężenie ruchu? Czy te wszystkie pojazdy muszę przed odpaleniem symulacji umieścić je w tablicy czy zgodnie z zapotrzebowaniem będę je mógł tworzyć na bieżąco?
Sekwencyjne zapalanie diodek
: 02 lis 2012 12:59
autor: Mikrobi
Można wstawiać w dowolnej chwili w taki sposób jak wstawiany jest pojedynczy samochód. Trzeba kontrolować lokalizację kolejnych samochodów, ale można to robić na bieżąco. Trzeba odpowiednio zakodować, ale Draw Unflaten Pixmap.vi można wywołać dowolną ilość razy dla dowolnej ilości obiektów i ich lokalizacji.
...w granicach zdrowego rozsądku i zasobów sprzętowych 8-)