Witam...

Mam plik z którego muszę odczytać dane i wrzucić na wykres...
Wszystko się wydaje proste jednak ten plik jest troche jak dla mnie "udziwniony".

Plik zawiera kilka sygnałów. Jest on podzielony na kawałki...

Mianowicie przypuśćmy że jest 100 kawałków(przypuśćmy że mamy 3 sygnały w pliku) - każdy kawałek zawiera 50 sekund nagrania poszczególnego sygnału.
Każdy sygnał przypuśćmy ma 5000 próbek.
Czyli struktura kawałka wygląda tak że jeden kawałek zawiera po 5000 próbek każdego sygnału czyli w kawałku jest 15000 próbek.
Kawałki następują zaraz po sobie(nie ma żadnych przerw - są ze sobą sklejone).

Na razie napisałem metodę która wczytuje do tablicy 5000 próbek jednego sygnału z pojedyńczego kawałka...

Wykres się rysuje i jest ok.
Jednakże chciałbym aby wykres rysował nie 50 a 10 sekund nagrania i można go było przesuwać
(czyli najpierw pobieramy 1000 próbek, gdy klikniemy pobieramy następne 1000 próbek itd.).
Najgorsze jest przesunięcie między kawałkami...Nie mam pojęcia jak to zrobić :/
Czyli gdy załaduję te 5000 próbek to przejście pomiędzy tymi próbkami w tablicy jeszcze dam radę zrobić...
Ale co zrobić gdy te 5000 probek w tablicy się kończy? jak to zapętlić żeby ciągle przechodziło do następnego kawałka?

Tutaj wrzucam obsługe kliknięcia która powoduje przejście do następnego kawałka:

 
 public void mouseClicked(MouseEvent e) {

            if (clickCount < 0) {
                clickCount = 0;
                readFile(0);
                pan.repaint();
            } else {
                clickCount++;
                begin = skip() * clickCount;
                readFile(begin);
                pan.repaint();
            }
        } 

skip() - metoda służąca do przeskoku do następnego kawałka
readFile() - metoda służąca do wczytania pliku i zapisu próbek do tablicy

Niestety Nie mogę wczytać wszystkich kawałków do jednej tablicy... Z pliku muszę pobierać tylko tyle ile jest mi potrzebne :/

Może ma ktoś jakiś pomysł jak to zrobić...