Budowanie tablicy dwuwymiarowej.

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
MegaMan123
Posty: 15
Rejestracja: 26 maja 2010 18:24
Wersja środowiska: LabVIEW 8.5

Budowanie tablicy dwuwymiarowej.

Post autor: MegaMan123 »

Cześć,

potrzebuję stworzyć dwuwymiarową tablice , do której zmienne wrzucane były dynamicznie. W sensie jest 31 możliwości pomiaru, chciałbym ,że w zależności od pewnego współczynnika były dodawane kolejne obiekty pod dany wymiar , na przykład :

* Dodac jeden element do Tablica[3].
* Dodac jeden element do Tablica[3].
* Dodac jeden element do Tablica[2].
* Dodac jeden element do Tablica[3].
.
.
itd.

Da się tak zrobić ? Jeśli nie , to jak inaczej można to rozwiązać ? Dzięki za pomoc.
Awatar użytkownika
smiga
Administrator
Posty: 824
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Budowanie tablicy dwuwymiarowej.

Post autor: smiga »

Powiem szczerze, że nie rozumiem problemu - może spróbuj jaśniej go przedstawić.

Czy te pomiary będą zwiększały rozmiar tablicy? (rejestry w pętli załatwią sprawę + Insert Into Array), czy tylko będą podmieniały aktualne wartości (Replace Array Subset).
Na obrazku masz pokazane wspomniane dwie funkcje - możemy wstawiać pojedynczy element lub cały wiersz, czyli tablice jednowymiarową (dolny przykład).
Reasumując ... na bank da się to zrobić :)
Załączniki
tablice.jpg
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
MegaMan123
Posty: 15
Rejestracja: 26 maja 2010 18:24
Wersja środowiska: LabVIEW 8.5

Re: Budowanie tablicy dwuwymiarowej.

Post autor: MegaMan123 »

Widzę ,że kolega będzie mi towarzyszył do końca :)

A więc problem jest taki , że nie odrazu są dostępne wszystkie dane. Chcę buforować obiekty typu timestamp, ale dodawane będą w zależności od wciśniętego klawisza. Bardzo by uprościło sprawę gdyby jakimś cudem , aktualna wartość znajdowała się pod indexem reprezentującym dany dzień.

Czyli przykładowo jeśli użytkownik wciśnie klawisz dnia 13.06 to cały timestamp zostanie dodany pod 13 indexem , jako metakod można to zapisać jako :

Times[13].Insert(ActualTimeStamp)

Masz pomysł jak to rozwiązać ?

Tak powinna wyglądać deklaracja takiej tablicy, jesli chciałbym podmieniać ? Najlepiej cholera jednak ,żeby tablica potrafiła sama siebie rozszerzać.
Untitled.png
Untitled.png (2.37 KiB) Przejrzano 7053 razy
Awatar użytkownika
smiga
Administrator
Posty: 824
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Budowanie tablicy dwuwymiarowej.

Post autor: smiga »

MegaMan123 pisze:Widzę ,że kolega będzie mi towarzyszył do końca :)
Widocznie trafiamy na forumu o tych samych godzinach

Odnośnie pytania ... np. tak - na starcie jest zdefiniowana tablica 31x12 (dni na miesiące) wypełniona zerami:
Załączniki
tablica_czas.jpg
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
MegaMan123
Posty: 15
Rejestracja: 26 maja 2010 18:24
Wersja środowiska: LabVIEW 8.5

Re: Budowanie tablicy dwuwymiarowej.

Post autor: MegaMan123 »

Dzięki za odpowiedź, ale to chyba jeszcze nie to. Możesz zobaczyć na to : ?
Untitled.png
Untitled.png (2.88 KiB) Przejrzano 7046 razy
Tutaj możemy rzeczywiście podać wiersz i kolumnę, ale za element wymagana jest tablica. Dlaczego ? Wydaje mi się , że to powinien być skalar.
Muszę też zapisywać wszystko w jednej tablicy. Czyli mając globalna tablice, muszę w niej dokonywać zmian i te zmiany muszą tam pozostać .
Awatar użytkownika
smiga
Administrator
Posty: 824
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Budowanie tablicy dwuwymiarowej.

Post autor: smiga »

MegaMan123 pisze:
Tutaj możemy rzeczywiście podać wiersz i kolumnę, ale za element wymagana jest tablica. Dlaczego ? Wydaje mi się , że to powinien być skalar.
Starałem się to pokazać na pierwszym rysunku - jeżeli podepniesz jakąś wartość do wejścia "Disabled Index (Col)" to zmieni się na "Index (col)" ... i wtedy do tablicy w danym wierszu i kolumnie wpisana jest pojedyncza wartość. Domyślnie gdy nie podepniesz tam niczego (zostawisz puste), adresujesz tylko wiersze więc elementem musi być tablica.
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
Awatar użytkownika
smiga
Administrator
Posty: 824
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Budowanie tablicy dwuwymiarowej.

Post autor: smiga »

Zerknij jeszcze na ten kod:
Załączniki
tablica.vi
(14.45 KiB) Pobrany 366 razy
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
ODPOWIEDZ