Plotter
From Atariki
Wersja z dnia 20:41, 25 sie 2022 Dracon (Dyskusja | wkład) ← Previous diff |
Aktualna wersja Seban (Dyskusja | wkład) (+link do def. oscyloskopu na wiki) |
||
Linia 1: | Linia 1: | ||
- | Plotter (pol. ploter) to jeden ze starszych efektów w demach. Polega na wyświetlaniu pewnej ilości punktów, tworzących jakiś wzór (okrąg, kulę, sinus, itp.). Taki utworzony obiekt jest zwykle ruchomy, można | + | {{grafr|Ace_ploter.gif}} |
- | go czasem kontrolować np. joystickiem (jak w [[Ace Plotter]] [[Magnus]]a). Przyjęło się, że im więcej punktów w tzw. ramce, tym efekt jest lepszy. | + | {{grafr|Rzog_abbuc17_intro_1.gif}} |
+ | Plotter ''(pol. ploter)'' to jeden ze starszych i popularnych efektów w [[Demo|demach]] na różnych platformach sprzętowych. Polega na wyświetlaniu pewnej ilości punktów, tworzących jakiś wzór (okrąg, kulę, sinus, itp.). Taki utworzony obiekt jest zwykle ruchomy, można go czasem kontrolować np. joystickiem (jak w [[Ace Ploter]] [[Magnus]]a). Przyjęło się, że im więcej punktów w tzw. [[Ramka|ramce]], tym efekt jest lepszy. | ||
+ | |||
+ | O ile podstawy matematyczne leżące u podstaw powstania tego efekty są dość proste i można tego typu figury rysować używając nawet [[Atari BASIC]], to już stworzenie efektu który będzie rysował dużą ilość punktów z odpowiednią prędkością zapewniającą wrażenie płynności nie jest już zadaniem trywialnym. Scenowi [[Koder|koderzy]] często rywalizowali między sobą starając się napisać jak najszybsze procedury rysujące punkty na ekranie. Procedura taka jest niejako podstawą do stworzenia "plotera". W magazynie dyskowym [[Barymag]], a dokładniej w pierwszym jego wydaniu, Marcin "[[Eru]]" Żukowski zaprezentował artykuł opisujący jego zmagania z opracowaniem jak najszybszej metody rysowania punktów: "[http://barymag.slight.pl/issue01/01_02_najszybsze_rysowanie_kropek Najszybsze Rysowanie Kropek]". | ||
+ | |||
+ | == Ciekawostki == | ||
+ | |||
+ | Nazwa "plotter" pochodzi od angielskiego terminu [https://en.wikipedia.org/wiki/Plot_(graphics) PLOT] oznaczającego technikę wizualizacji zbiorów danych za pomocą zbioru punków, linii, lub innych metod rysowania obiektów reprezentujących i odzwierciedlających zbiór danych wejściowych. W większości języków programowania jest dostępna funkcja najczęściej nazwana PLOT, pozwalająca narysować punkt we wskazanym miejscu ekranu. Książka "[https://www.atariarchives.org/cgp/index.php Computer Graphics Primer]", autorstwa Mitchell Waite, opublikowana w 1979 poświęca całą sekcje jednego rozdziałów książki na zdefiniowanie terminu "[https://www.atariarchives.org/cgp/Ch03_Sec02.php plotting]". | ||
+ | |||
+ | Odpowiednikiem, a właściwie pierwowzorem plotera w analogowym świecie są tzw. [https://pl.wikipedia.org/wiki/Krzywa_Lissajous Figury/Krzywe Lissajous]. Używając analogowego [https://pl.wikipedia.org/wiki/Oscyloskop oscyloskopu] można je uzyskać za pomocą pary generatorów generujących fale sinusoidalne o zbliżonych częstotliwościach. Drobne różnice faz obu fal powodują powstawanie wzoru zależnego własnie od różnicy faz tychże sygnałów. Dokładną prezentację figur Lissajous na analogowym oscyloskopie możemy obejrzeć w video zaprezentowanym na kanale [https://twitter.com/alanattek Alana Wolke] (w2aew): "[https://youtu.be/t6nGiBzGLD8 Basics of Lissajous Patterns on an Oscilloscope]". | ||
+ | |||
+ | Poniżej przykład programu napisanego w Atari BASIC symulującego rysowanie figury Lissajous składającej się z 360 punktów. Częstotliwość fali modulującej oś X jest dwukrotnie wyższa niż ta dla osi Y, różnica faz pomiędzy falami jest równa 90 stopni. Patrząc na czas wykonania tego programu (~57 sekund), można wywnioskować ile technik przyspieszających kod i obliczenia musieli zastosować koderzy aby osiągnąć sensowną prędkość oświerzania przy kodowaniu tego typu efektów. Kod w Atari BASIC rysuje 1 klatkę w ciągu 60 sekund, dobrze zakodowany ploter potrafił rysować 50 takich klatek w ciągu jednej sekundy. | ||
+ | 10 GRAPHICS 24:DEG :COLOR 1 | ||
+ | 15 SETCOLOR 2,0,0 | ||
+ | 20 FOR I=0 TO 359 | ||
+ | 30 X=95*SIN(I*2) | ||
+ | 40 Y=95*SIN(I+90) | ||
+ | 50 PLOT 160+X,96-Y | ||
+ | 60 NEXT I | ||
+ | 99 GOTO 99 | ||
[[Kategoria:Scena]] | [[Kategoria:Scena]] | ||
[[Kategoria:Glosariusz]] | [[Kategoria:Glosariusz]] | ||
- | {{stub}} |
Aktualna wersja
Plotter (pol. ploter) to jeden ze starszych i popularnych efektów w demach na różnych platformach sprzętowych. Polega na wyświetlaniu pewnej ilości punktów, tworzących jakiś wzór (okrąg, kulę, sinus, itp.). Taki utworzony obiekt jest zwykle ruchomy, można go czasem kontrolować np. joystickiem (jak w Ace Ploter Magnusa). Przyjęło się, że im więcej punktów w tzw. ramce, tym efekt jest lepszy.
O ile podstawy matematyczne leżące u podstaw powstania tego efekty są dość proste i można tego typu figury rysować używając nawet Atari BASIC, to już stworzenie efektu który będzie rysował dużą ilość punktów z odpowiednią prędkością zapewniającą wrażenie płynności nie jest już zadaniem trywialnym. Scenowi koderzy często rywalizowali między sobą starając się napisać jak najszybsze procedury rysujące punkty na ekranie. Procedura taka jest niejako podstawą do stworzenia "plotera". W magazynie dyskowym Barymag, a dokładniej w pierwszym jego wydaniu, Marcin "Eru" Żukowski zaprezentował artykuł opisujący jego zmagania z opracowaniem jak najszybszej metody rysowania punktów: "Najszybsze Rysowanie Kropek".
Ciekawostki
Nazwa "plotter" pochodzi od angielskiego terminu PLOT oznaczającego technikę wizualizacji zbiorów danych za pomocą zbioru punków, linii, lub innych metod rysowania obiektów reprezentujących i odzwierciedlających zbiór danych wejściowych. W większości języków programowania jest dostępna funkcja najczęściej nazwana PLOT, pozwalająca narysować punkt we wskazanym miejscu ekranu. Książka "Computer Graphics Primer", autorstwa Mitchell Waite, opublikowana w 1979 poświęca całą sekcje jednego rozdziałów książki na zdefiniowanie terminu "plotting".
Odpowiednikiem, a właściwie pierwowzorem plotera w analogowym świecie są tzw. Figury/Krzywe Lissajous. Używając analogowego oscyloskopu można je uzyskać za pomocą pary generatorów generujących fale sinusoidalne o zbliżonych częstotliwościach. Drobne różnice faz obu fal powodują powstawanie wzoru zależnego własnie od różnicy faz tychże sygnałów. Dokładną prezentację figur Lissajous na analogowym oscyloskopie możemy obejrzeć w video zaprezentowanym na kanale Alana Wolke (w2aew): "Basics of Lissajous Patterns on an Oscilloscope".
Poniżej przykład programu napisanego w Atari BASIC symulującego rysowanie figury Lissajous składającej się z 360 punktów. Częstotliwość fali modulującej oś X jest dwukrotnie wyższa niż ta dla osi Y, różnica faz pomiędzy falami jest równa 90 stopni. Patrząc na czas wykonania tego programu (~57 sekund), można wywnioskować ile technik przyspieszających kod i obliczenia musieli zastosować koderzy aby osiągnąć sensowną prędkość oświerzania przy kodowaniu tego typu efektów. Kod w Atari BASIC rysuje 1 klatkę w ciągu 60 sekund, dobrze zakodowany ploter potrafił rysować 50 takich klatek w ciągu jednej sekundy.
10 GRAPHICS 24:DEG :COLOR 1 15 SETCOLOR 2,0,0 20 FOR I=0 TO 359 30 X=95*SIN(I*2) 40 Y=95*SIN(I+90) 50 PLOT 160+X,96-Y 60 NEXT I 99 GOTO 99