Programmerare, skeptiker, sekulärhumanist, antirasist.
Författare till bok om C64 och senbliven lantis.
Röstar pirat.
2013-06-16
Genom kommandot SCALE kan man skala vektorgrafiken, alltså den grafik som skapas med kommandon som DRAW, CIRCLE och BOX – inte sprite-grafik eller text. När man arbetar med högupplöst grafik utan skalning är skärmen 320 pixlar bred och 200 pixlar hög. Detta program skapar en stor ellips som tar upp nästan hela skärmen.
10 GRAPHIC 1, 1 : REM AKTIVERA HÖGUPPLÖST GRAFIK 20 CIRCLE 1, 159, 99, 130, 80 : REM RITA EN ELLIPS ÖVER NÄSTAN HELA 30 INPUT A$ : REM TRYCK PÅ ENTER FÖR ATT AVSLUTA 40 GRAPHIC 0 : REM ÅTERGÅ TILL TEXT-LÄGET
Genom att infoga SCALE-kommandot efter GRAPHIC-kommandot påverkar man skalan på det som ritas efter anropet på SCALE. SCALE har ingen effekt om det anropas innan man gått in i grafikläget (före GRAPHIC-anropet) och påverkar det som ritas därefter. Det första argumentet som skickas till SCALE är 1 för att aktivera skalning. Det andra är den antalet virtuella pixlar du vill ha i X-led, och det tredje är antalet virtuella pixlar du vill ha i Y-led.
Här infogar jag ett anrop på SCALE på rad 15 (efter GRAPHIC på rad 10) och anropar sedan RENUMBER för att få tillbaka jämna mellanrum mellan raderna. Även om pixlarna fortfarande är lika stora, ritas nu bilden med den virtuella upplösningen av 640 * 400 pixlar.
10 GRAPHIC 1, 1 : REM AKTIVERA HÖGUPPLÖST GRAFIK 20 SCALE 1, 640, 400 30 CIRCLE 1, 159, 99, 130, 80 : REM RITA SAMMA ELLIPS 40 INPUT A$ : REM TRYCK PÅ ENTER FÖR ATT AVSLUTA 50 GRAPHIC 0 : REM ÅTERGÅ TILL TEXT-LÄGET
Detta är användbart när man tänker på att flerfärgsläget innehåller väldigt breda pixlar. När flerfärgsgrafik används består skärmen (som är i 4:3-format) av 160 * 200 pixlar. Om vi kör ursprungsprogrammet, utan SCALE-anropet, i flerfärgsläge (läge 3).
10 GRAPHIC 3, 1 : REM AKTIVERA FLERFÄRGSGRAFIK 20 CIRCLE 1, 159, 99, 130, 80 : REM RITA SAMMA ELLIPS 30 INPUT A$ : REM TRYCK PÅ ENTER FÖR ATT AVSLUTA 40 GRAPHIC 0 : REM ÅTERGÅ TILL TEXT-LÄGET
Men trots pixlarnas storlek, kan man alltså behålla den virtuella upplösningen av 320 * 200 genom att anropa SCALE. Nu blir det dock lite lustigt. SCALE kompenserar inte för pixlarnas bredd, så de virtuella 320 * 200 pixlarna får vi när vi ber om 640 * 200 pixlar.
10 GRAPHIC 3, 1 : REM AKTIVERA FLERFÄRGSGRAFIK 20 SCALE 1, 640, 200 30 CIRCLE 1, 159, 99, 130, 80 : REM RITA SAMMA ELLIPS 40 INPUT A$ : REM TRYCK PÅ ENTER FÖR ATT AVSLUTA 50 GRAPHIC 0 : REM ÅTERGÅ TILL TEXT-LÄGET
För att stänga av skalning, anropa SCALE med argumentet 0.
Categories: Geeky
Tags: C128
Bjud mig på en kopp kaffe (20:-) som tack för bra innehåll!
Skalning av vektorgrafik på Commodore 128: http://t.co/mMffnwzVyu
RT @ahesselbom: Skalning av vektorgrafik på Commodore 128: http://t.co/mMffnwzVyu