Thread View: pl.comp.lang.delphi
6 messages
6 total messages
Started by stchebel
Wed, 18 Apr 2018 10:24
Scrollowanie bitmapy
Author: stchebel
Date: Wed, 18 Apr 2018 10:24
Date: Wed, 18 Apr 2018 10:24
5 lines
2018 bytes
2018 bytes
Witam, Zagadnienie jest takie: mam dane pomiarowe zapisane w tablicy a[0..n], próbkowane z interwałem czasowym 25ns, chociaż ten szczegół jest kompletnie nieistotny. Ilość próbek przekracza zdecydowanie szerokość ekranu w pixlach, więc chcąc namalować wykres i wyświetlić go na ekranie (tak oscyloskopowo), trzeba bitmapę przewijać. Oczywiście mogę zrobić taką horyzontalną "kompresję", ale wtedy umykają szczegóły. Żadne z powyższych rozwiązań nie stanowi w zasadzie problemu od strony programowej. Mogę np. wykorzystać Scrollbara i wyświetlać fragment bitmapy za pomocą Draw(x,0,Bitmapa). Czy macie namiar na jakiś gotowy komponent odpowiadający moim potrzebom? Najlepiej za friko.
Re: Scrollowanie bitmapy
Author: mmm
Date: Wed, 18 Apr 2018 11:36
Date: Wed, 18 Apr 2018 11:36
15 lines
1928 bytes
1928 bytes
W dniu 2018-04-18 o 12:24, stchebel@gmail.com pisze: > Witam, > Zagadnienie jest takie: mam dane pomiarowe zapisane w tablicy a[0..n], próbkowane z interwałem czasowym 25ns, chociaż ten szczegół jest kompletnie nieistotny. Ilość próbek przekracza zdecydowanie szerokość ekranu w pixlach, więc chcąc namalować wykres i wyświetlić go na ekranie (tak oscyloskopowo), trzeba bitmapę przewijać. Oczywiście mogę zrobić taką horyzontalną "kompresję", ale wtedy umykają szczegóły. > Żadne z powyższych rozwiązań nie stanowi w zasadzie problemu od strony programowej. Mogę np. wykorzystać Scrollbara i wyświetlać fragment bitmapy za pomocą Draw(x,0,Bitmapa). > > Czy macie namiar na jakiś gotowy komponent odpowiadający moim potrzebom? Najlepiej za friko. > Z darmowych to: TScrollBox a na nim TImage , jezeli obraz będzie miał rozciąganie włączone to zmieniając rozmiar masz załatwioną kompresje, a ScrollBox zalatwia przewijanie w osi czasu. U mnie działa OK jak na moje skromne potrzeby ;) M
Re: Scrollowanie bitmapy
Author: stchebel
Date: Wed, 18 Apr 2018 12:58
Date: Wed, 18 Apr 2018 12:58
18 lines
3028 bytes
3028 bytes
W dniu środa, 18 kwietnia 2018 13:36:53 UTC+2 użytkownik mmm napisał: > W dniu 2018-04-18 o 12:24, stchebel@gmail.com pisze: > > Witam, > > Zagadnienie jest takie: mam dane pomiarowe zapisane w tablicy a[0..n], próbkowane z interwałem czasowym 25ns, chociaż ten szczegół jest kompletnie nieistotny. Ilość próbek przekracza zdecydowanie szerokość ekranu w pixlach, więc chcąc namalować wykres i wyświetlić go na ekranie (tak oscyloskopowo), trzeba bitmapę przewijać. Oczywiście mogę zrobić taką horyzontalną "kompresję", ale wtedy umykają szczegóły. > > Żadne z powyższych rozwiązań nie stanowi w zasadzie problemu od strony programowej. Mogę np. wykorzystać Scrollbara i wyświetlać fragment bitmapy za pomocą Draw(x,0,Bitmapa). > > > > Czy macie namiar na jakiś gotowy komponent odpowiadający moim potrzebom? Najlepiej za friko. > > > > Z darmowych to: > TScrollBox a na nim TImage , jezeli obraz będzie miał rozciąganie > włączone to zmieniając rozmiar masz załatwioną kompresje, a ScrollBox > zalatwia przewijanie w osi czasu. > U mnie działa OK jak na moje skromne potrzeby ;) > > M No faktycznie doopa ze mnie, że nie znałem tego komponentu. Jest jednak pewien drobiazg. Jak przesuwam scrollbara w osi czasu, to nic się nie zmienia. Dopiero jak puszczę prawy klawisz myszy, to pojawia się kolejny fragment obrazu. Da się to jakoś tak zrobić, żeby obraz przewijał się płynnie z ruchem ręki?
Re: Scrollowanie bitmapy
Author: stchebel
Date: Wed, 18 Apr 2018 13:02
Date: Wed, 18 Apr 2018 13:02
23 lines
3188 bytes
3188 bytes
W dniu środa, 18 kwietnia 2018 14:58:46 UTC+2 użytkownik stch...@gmail.com napisał: > W dniu środa, 18 kwietnia 2018 13:36:53 UTC+2 użytkownik mmm napisał: > > W dniu 2018-04-18 o 12:24, stchebel@gmail.com pisze: > > > Witam, > > > Zagadnienie jest takie: mam dane pomiarowe zapisane w tablicy a[0..n], próbkowane z interwałem czasowym 25ns, chociaż ten szczegół jest kompletnie nieistotny. Ilość próbek przekracza zdecydowanie szerokość ekranu w pixlach, więc chcąc namalować wykres i wyświetlić go na ekranie (tak oscyloskopowo), trzeba bitmapę przewijać. Oczywiście mogę zrobić taką horyzontalną "kompresję", ale wtedy umykają szczegóły. > > > Żadne z powyższych rozwiązań nie stanowi w zasadzie problemu od strony programowej. Mogę np. wykorzystać Scrollbara i wyświetlać fragment bitmapy za pomocą Draw(x,0,Bitmapa). > > > > > > Czy macie namiar na jakiś gotowy komponent odpowiadający moim potrzebom? Najlepiej za friko. > > > > > > > Z darmowych to: > > TScrollBox a na nim TImage , jezeli obraz będzie miał rozciąganie > > włączone to zmieniając rozmiar masz załatwioną kompresje, a ScrollBox > > zalatwia przewijanie w osi czasu. > > U mnie działa OK jak na moje skromne potrzeby ;) > > > > M > > No faktycznie doopa ze mnie, że nie znałem tego komponentu. Jest jednak pewien drobiazg. Jak przesuwam scrollbara w osi czasu, to nic się nie zmienia. Dopiero jak puszczę prawy klawisz myszy, to pojawia się kolejny fragment obrazu. Da się to jakoś tak zrobić, żeby obraz przewijał się płynnie z ruchem ręki? ==== Oopss.. chodziło o lewy klawisz myszy :)
Re: Scrollowanie bitmapy
Author: Stregor
Date: Wed, 18 Apr 2018 13:09
Date: Wed, 18 Apr 2018 13:09
8 lines
1667 bytes
1667 bytes
>> No faktycznie doopa ze mnie, że nie znałem tego komponentu. Jest jednak pewien drobiazg. Jak przesuwam scrollbara w osi czasu, to nic się nie zmienia. Dopiero jak puszczę prawy klawisz myszy, to pojawia się kolejny fragment obrazu. Da się to jakoś tak zrobić, żeby obraz przewijał się płynnie z ruchem ręki? ScrollBox1.VertScrollBar.Tracking := True; -- Pozdrawiam, Stregor
Re: Scrollowanie bitmapy
Author: stchebel
Date: Wed, 18 Apr 2018 13:23
Date: Wed, 18 Apr 2018 13:23
11 lines
2144 bytes
2144 bytes
W dniu środa, 18 kwietnia 2018 15:09:03 UTC+2 użytkownik Stregor napisał: > >> No faktycznie doopa ze mnie, że nie znałem tego komponentu. Jest jednak pewien drobiazg. Jak przesuwam scrollbara w osi czasu, to nic się nie zmienia. Dopiero jak puszczę prawy klawisz myszy, to pojawia się kolejny fragment obrazu. Da się to jakoś tak zrobić, żeby obraz przewijał się płynnie z ruchem ręki? > > ScrollBox1.VertScrollBar.Tracking := True; > > > -- > Pozdrawiam, > Stregor Teraz jest super. Dzięki!
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads