Theory
हर Pixel Sweep करें, या सिर्फ़ Lines Draw करें?
एक display को अपना beam move करना पड़ता है (या अपने pixels update करने पड़ते हैं) picture form करने के लिए, पर ऐसा करने की दो fundamentally different strategies हैं, और इन्होंने graphics hardware की दो families shape कीं।
एक raster-scan display हर pixel के across sweep करता है, row by row, stored data से पूरी screen paint करते हुए। एक random-scan display इसके बजाय beam को directly lines के endpoints के बीच move करता है, सिर्फ़ picture के strokes draw करते हुए। यह lesson दोनों को contrast करता है। Raster approach जीता और modern screens के नीचे है, पर दोनों समझना clarify करता है frame buffer और pixel-by-pixel drawing क्यों matter करते हैं।
Theory
Raster Scan: हर Row Sweep करना
एक raster-scan display में, beam एक fixed pattern में move करता है: यह एक row के across horizontally sweep करता है, फिर next row पर drop होता है, पूरी screen top से bottom तक cover करते हुए, और refresh करने के लिए repeat करता है। यह हर pixel visit करता है चाहे picture वहाँ कुछ हो या नहीं।
Picture एक frame buffer (refresh buffer भी कहा जाता है) में pixels की एक grid की तरह stored है, और display हर pixel का colour जानने के लिए यह buffer पढ़ता है। क्योंकि हर pixel independently set हो सकता है, raster displays filled areas, shading, और realistic images अच्छी तरह handle करते हैं। TVs और modern monitors इसी तरह काम करते हैं, और यही वजह है raster dominant approach है।
Theory
Random Scan: सिर्फ़ Strokes Draw करना
एक random-scan display (vector, stroke, या calligraphic भी कहा जाता है) में, beam हर pixel sweep नहीं करता। इसके बजाय यह picture में हर line के endpoints पर directly move होता है और वह line draw करता है, strokes को किसी भी order में draw करने के लिए around jump करते हुए, सिर्फ़ जहाँ picture में actually lines हैं।
Picture line-drawing commands की एक list (एक display file या display list) की तरह stored है, और display refresh करने के लिए वह list redraw करता है। यह बहुत smooth, high-resolution lines produce करता है, wireframe drawings के लिए great, पर यह filled या shaded areas easily produce नहीं कर सकता (यह lines draw करता है, regions नहीं)। Random-scan displays early vector graphics systems में इस्तेमाल हुए।
At a glance
| Aspect | Raster Scan | Random Scan |
|---|---|---|
| Beam Path | हर row, हर pixel sweep करता है | Directly line endpoints के बीच jump करता है |
| Picture Stored As | Pixels की एक grid (frame buffer) | Line commands की एक list (display file) |
| Good At | Filled areas, shading, realistic images | Smooth high-resolution lines |
| Weak At | Very fine lines jagged दिख सकती हैं | Filled/shaded areas |
Quiz
एक raster-scan display अपनी picture को क्या store करता है, और beam कैसे move होता है?
- Line commands की एक list की तरह; beam line endpoints के बीच jump करता है
- एक frame buffer में pixel values की एक grid की तरह; beam हर row, pixel by pixel sweep करता है
- सिर्फ़ geometric shapes की तरह; beam circles draw करता है
- यह picture को बिल्कुल store नहीं करता
Show the answer
एक frame buffer में pixel values की एक grid की तरह; beam हर row, pixel by pixel sweep करता है
एक raster-scan display picture को एक frame buffer में pixel values की एक grid की तरह store करता है, और beam screen को row by row sweep करता है, हर pixel cover करते हुए, हर एक को colour करने के लिए buffer पढ़ते हुए। Option A एक RANDOM-scan (vector) display describe करता है, जो line commands की एक list store करता है और beam को directly line endpoints के बीच move करता है, opposite approach। Option C raster scanning कैसे काम करता है वह नहीं है; यह buffer से pixels paint करता है, shapes directly नहीं। Option D गलत है: raster displays picture को बिल्कुल store करते हैं, frame buffer में, जो exactly वह है जो screen पर refresh होता है। Raster = frame buffer से हर pixel; random scan = display list से सिर्फ़ lines।
Think first
Raster Scan Random Scan से Dominant क्यों बना?
Random scan beautifully smooth lines draw करता था। Raster-scan displays क्यों जीतीं? फिर tap कीजिए।
Show the answer
क्योंकि raster scan FILLED, SHADED, PHOTOREALISTIC images दिखा सकता है, सिर्फ़ line drawings नहीं, और जैसे memory cheap हुई, इसका pixel-grid approach लोगों की actually चाहती images के लिए कहीं ज़्यादा versatile और scalable साबित हुआ। एक random-scan (vector) display एक चीज़ में excellent है: crisp lines। यह picture के strokes directly draw करता है, तो wireframes और line art wonderfully smooth दिखते हैं। पर यह fundamentally LINES draw करता है, regions नहीं, तो यह areas को colour से easily fill नहीं कर सकता या real scenes की smooth shading, textures, और photographic detail produce नहीं कर सकता; इसकी picture strokes का एक set है, colour का एक पूरा field नहीं। एक raster display, इसके contrast में, एक frame buffer में हर PIXEL independently store और control करता है, तो यह बिल्कुल कोई भी image paint कर सकता है, solid fills, gradients, photographs, video, per pixel arbitrary colour, जो exactly वह है जो television, photographs, games, और rich user interfaces demand करते हैं। Historical catch memory था: हर pixel hold करने वाले एक frame buffer को इसकी बहुत ज़रूरत है, जो early में expensive थी (vector displays को favour करते हुए जो सिर्फ़ एक line list store करते थे)। पर जैसे memory dramatically cheaper और faster हुई, वह barrier गिर गया, और raster की ANY image दिखाने की ability, cheap memory और mass-produced raster hardware (TVs, फिर monitors) के साथ मिलकर, इसे universal choice बना दिया। Raster जो price pay करता है वह यह है कि fine diagonal lines jagged (aliasing) दिख सकती हैं, क्योंकि इन्हें एक pixel grid पर approximate करना पड़ता है, यही precisely वजह है line-drawing algorithms जैसे Bresenham exist करते हैं। तो raster VERSATILITY पर जीता एक बार memory affordable हो गई: यह सब कुछ दिखा सकता है, सिर्फ़ lines नहीं। Full-image capability plus cheap memory ने beautiful-lines-only को beat किया।
Summary
Key takeaways
- Displays दो तरीकों से draw करती हैं: raster scan (हर pixel sweep करना) या random scan (सिर्फ़ lines draw करना)।
- Raster scan beam को हर pixel के over row by row sweep करता है, picture को एक frame buffer (pixel values की grid) से पढ़ते हुए।
- Raster filled areas, shading, और realistic images अच्छी तरह handle करता है; यह modern screens में dominate करता है।
- Random scan (vector/stroke) beam को directly line endpoints के बीच move करता है, line commands (display file) की एक list की तरह stored strokes draw करते हुए।
- Random scan smooth high-resolution lines देता है पर areas को easily fill या shade नहीं कर सकता।
- Raster जीता क्योंकि यह कोई भी image (fills, shading, photos) दिखा सकता है, especially एक बार memory cheap हो गई।
- Memory hook: raster = frame buffer से हर pixel; random scan = display list से सिर्फ़ lines।