DataMuseum.dk

Presents historical artifacts from the history of:

CP/M

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CP/M

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦73bcd3a80⟧ TextFile

    Length: 11008 (0x2b00)
    Types: TextFile
    Names: »GRAFMAN2.TXT«

Derivation

└─⟦615c50202⟧ Bits:30004374 WriteIt Tekstbehandling Version 3.00
    └─ ⟦this⟧ »GRAFMAN2.TXT« 

TextFile

Programmerings niveauet :
-------------------------

  I GrafIt skal man ligesom i COMAL programmere sig frem til sine resul-
tater. Dette gøres via nogle såkaldte nøgleord som man skal lære. Eftersom
GrafIt er beregnet til at lave grafer, er GrafIt's nøgleord grafikori-
enteret og overtager alle de svære ting der er forbundet med at lave grafer.

Et GrafIt program vil blive udført i linie orden, dvs. at linie 1 altid
vil blive udført før linie 2. Der er med andre ord ingen løkke strukturer
i GrafIt som i COMAL, eftersom dette ikke er nødvendigt.

Der kan i et GrafIt program indsættes kommentarer ved at placere to skrå-
streger (//) i starten af en GrafIt programlinie. (ligesom i COMAL-80)

Et GrafIt program bør altid starte med nøgleordet 'init' eftersom dette
nøgleord initierer alle variable der er knyttet til GrafIt. Desuden skal
et program skrevet i GrafIt altid ende med nøgleordet 'endgraf'. 
Hvad der er imellem disse ordre bestemmer programmøren mere eller mindre
selv, blot skal man overholde GrafIt's syntaks.

Der skal her gennemgåes de nøgleord som står til programmørens rådighed.

init
----
  Init initierer den grafiske skærm og sletter samtlige opsatte GrafIt
options. Dette gælder : xnum,ynum,xmdr,xtekst,ytekst,histogram,draw.
Herudover bliver plottype og grid sat til 0 og format sat til 5 cifre med
2 decimaler på både x og y aksen. Init bør altid blive kaldt i starten
af et program.

scale(xmin,xmax,ymin,ymax) 
--------------------------

  Scale er sammen med axis hjertet i GrafIt systemet. Ved hjælp af 
scale kan man inddele skærmen i et vilkårligt definitionsområde. Ek-
sempelvis vil 'scale(-10,10,-2,2)' scale skærmen således at x aksen vil
gå fra -10 til 10, og y aksen vil gå fra -2 til 2. Der er dog en enkelt
ting man skal tage højde for når man scalerer skærmen. Man skal sørge for
at der, hvis man har numerisk betegnelse på akserne, er nok plads i sider-
ne til betegnelserne.

Et eksempel :

  Hvis man vil plotte en sinuskurve fra -2*pi til 2*pi bør scaleringen
sørge for at der er lidt yderligere plads eksempelvis 'scale(-8,8,-1.5,1.5)'.

axis(xstart,xslut,deltax,xtic,ystart,yslut,deltay,ytic)
-------------------------------------------------------

  axis beskriver for GrafIt hvorledes koordinatsystemet ser ud inden for
den scalering man har foretaget. Der skal derfor altid være en scale komman-
do før et axis nøgleord. Xstart,xslut,ystart,yslut angiver hvorfra og hvor-
til hhv. x og y akserne skal tegnes. Deltax og deltay angiver hovedinddelin-
gen på hhv. x og y akserne. Xtic og ytic angiver underopdelingen af hhv. x og
y akserne. Hvis xstart,xslut,ystart,yslut ligger uden for scaleringen vil sy-
stemet give en fejlmeddelelse. Det er tilladt at anvende simple udtryk i axis
definitionen, eksempelvis 'axis(-pi,pi,pi/2,pi/4,-1.5,1.5,0.5,0.25)'. Dog må
man ikke anvende paranteser i udtrykkene.

format(xantal,xantaldec,yantal,yantaldec)
-----------------------------------------

  format anvendes til at formattere betegnelserne på hhv. x og y akserne.
Man angiver blot hvormange cifre tallet må bestå af samt hvormange deci-
maler. Dette skal specificeres for både x og y aksen.

function("udtryk")
------------------

  Function anvendes til at definere en funktion som GrafIt skal plotte.
Imellem anførselstegnene skrives et udtryk, eksempelvis 'function("sin(x)")'
hvorefter dette udtryk vil blive anvendt når plot nøgleordet mødes. Der er
til function knyttet variablen x. Denne vil når plot nøgleordet mødes antage
værdien xstart (angivet ved axis) og for hver punkt der plottes forøges med
det deltax der specificeres i plot nøgleordet, indtil xslut er nået. 
Til brug for definition af egne funktioner er følgende faste funktioner ind-
byggede i GrafIt.

  sin,cos,arctan,ln,sqrt,abs og exp samt konstanten pi.

Dette indebærer at hvis man foreksempel skal bruge funktionen tangens, skal
man skrive 'function("sin(x)/cos(x)")'.

data(xdata1,ydata1,xdata2,ydata2,.....,xdatan,ydatan)
-----------------------------------------------------

  Nøgleordet data anvendes til at indsætte faste data som skal plottes.
Disse data skal angives som xy data par. Via en indbygget data pointer læser
GrafIt disse data under plot nøgleordet og plotter disse i koordinatsyste-
met. Anvendeligheden for data sætningen ligger blandt andet i histogramplot
såsom nedbørs kurver osv.

restore
-------

  Anvendes sammen med data sætningen. Restore har den betydning at data sæt-
ninger der ligger på linienumre der er under det linienummer som restore sæt-
ningen er placeret på vil blive ignoreret.

filedata("Filnavn")
-------------------

  Via filedata nøgleordet kan data fra en ASCII fil plottes i det definerede
koordinatsystem. Det kræves at de data der skal plottes ligger i xy orden,
samt at ASCII filen afsluttes med en EOF marker. (CTRL Z). Når GrafIt fortol-
keren møder nøgleordet filedata vil denne åbne filen og begynde at indlæse de
data der står i filen, og plotte dem. Det kræves derfor at koordinatsystemet
er defineret og udplottet inden filedata kaldes.

xnum
----

  Hvis dette nøgleord mødes betyder det at der skal numerisk betegnelse på
x aksen.

ynum
----

  Hvis dette nøgleord mødes betyder det at der skal numerisk betegnelse på
y aksen.
 
xmdr
----

  Hvis dette nøgleord mødes betyder det at x aksen skal måneds inddeles. Der
bør her så selvfølgelig være sørget for at x aksen er inddelt i 12 enheder.

xtxt("Tekst")
-------------

  Via xtxt kan der specificeres en manuel tekst til xaksen. Dette kan anvendes
til grafer hvor hverken numerisk eller måneds inddeling er ønsket. I forbindel-
se med udplotning til plotter kan xtxt give problemer. Dette viser sig ved at
bogstavformatet på skærmen og på plotteren er forskelligt. Det kan derfor være
nødvendigt at tilrette teksten ved plotterudskrift.

clear
-----

  Clear sletter den grafiske skærm. Nøgleordet har sin anvendelse hvor man vil
plotte flere forskellige grafer med forskellige scaleringer, hvilket medfører
at skærmen skal slettes før et nyt koordinatsystem skal plottes.

header("Tekst")
---------------

  Ved hjælp af header nøgleordet kan man specificere en tekst der påføres 
grafen som overskrift. Teksten kan være op til 70 tegn lang.

xtext("Tekst")
-------------

  Ved hjælp af xtekst nøgleordet kan man specificere en tekst der påføres 
x aksen. Teksten kan være op til 70 tegn lang.

ytext("Tekst")
-------------

  Ved hjælp af xtekst nøgleordet kan man specificere en tekst der påføres 
y aksen. Teksten kan være op til 70 tegn lang.

grid(type)
----------

  Grid nøgleordet bruges til at specificere om man vil have et gitter lagt
på sin graf. Der er 4 typer 0-3. Type 0 specificerer at der blot skal teg-
nes en ramme uden om grafen. Type 1 specificerer at der skal tegnes en ramme
uden om grafen og at der tegnes vandrette streger for hver hovedinddeling på
y aksen. Type 2 specificerer at der udover det i type 1 også tegnes streger
for hver hovedinddeling på x aksen. Type 3 angiver at koordinatsystemet skal
krydsinddeles.

histogram(bredde)
-----------------

  Histogram fortæller GrafIt at alle plots skal foretages med søjler med 
den i histogram specificerede bredde.

fill
----

  Fill angiver at den plottede histogramsøjle skal udfyldes med et mønster
som er angivet med mask nøgleordet.

sletbar
-------

  Sletbar angiver at indholdet i histogrammet skal slettes før udfyldning.
Dette muliggør at udplotte histogrammer der overlapper hinanden og derved
skabe en 3D effekt.

mask(0..255)
------------

  Mask benyttes til via fill nøgleordet at udfylde histogramsøjler med et
mønster. Fremgangsmåden er som følger : 

Man skal opfatte det tal som man angiver som et binært mønster af nuller og
ettaller. Eksempelvis 15 som 00001111.  Hvergang der plottes et punkt i søj-
len roteres det binære mønster en gang mod venstre. Kun hvis det ciffer der
er længst mod venstre i mønsteret er et 1 vil punktet blive plottet. Forskel-
lige binære mønstre (dvs. forskellige tal) vil derfor give forskellige udfyld-
ninger af søjlen.

draw
----

  Draw nøgleordet fortæller GrafIt at den skal forbinde hvert plottet punkt
med en linie. Kan kun anvendes hvis histogram ikke er specificeret før.

linetype(0..255.)
-----------------

  Linetype anvendes i forbindelse med draw nøgleordet, til at angive hvorledes
den linie der skal plottes skal se ud. Metoden er den samme som forklaret under
mask nøgleordet.

plottype(type)
--------------

  Plottype anvendes til at specificere hvorledes de enkelte punkter skal plot-
tes. Der er fire typer indbygget i GrafIt : 

0 : punkt / 1 : kryds / 2 : et x / 3 : en firekant / 4 : en trekant.

Hvis der ikke er specificeret en plottype anvendes type 0.

plotaxis
--------

  Dette nøgleord plotter den i axis definerede koordinatsystem på skærmen.

plot(delta x)
-------------

  Plot igangsætter plotningen af funktioner og data. Ved funktioner (defi-
nerede via function) anvendes delta x som step værdi for x variablen. Ved
data plot (definerede via data) anvendes delta x ikke.

wait
----

  Wait bruges til at få computeren til at stoppe op og vente på at program-
møren skal trykke på en tast. Denne facilitet anvendes efter et plot nøgle-
ord således at man kan se sin graf.

copy(kode)
----------

  Hvis man har en printer med indbygget grafik option kan dette nøgleord ud-
skrive den grafiske skærm til printeren.

endgraf
-------
  
  Når dette nøgleord mødes vil GrafIt vende tilbage til kommando niveauet
og afslutte programmet.

plotter("filnavn")
------------------

  Plotter nøgleordet instruerer GrafIt om at systemet sideløbende skal dan-
ne en plotterfil, fra hvilken man kan plotte grafen på en GRAPHTEC WP 1000
plotter. Der skal angives et filnavn uden extension. Systemet vil automatisk
tilføje .plo til filnavnet. 

plotsize("a3/a4")
-----------------

  Plotsize angiver scaleringen på plotteren. Der skal angives a4 eller a3 som
plotsize. Default er a3.

plotcolor(0..6)
---------------

  Plotcolor bestemmer hvilken farve plotteren skal bruge til en given plotte-
opgave. farve 0 angiver at plotteren skal returnere pennen.

plotend
-------

  Plotend afslutter en plotterfil. Denne skal angives hvis plottefilen er til-
koblet via plotter nøgleordet.



Specielle bemærkninger vedrørende plotning på plotter.
-----------------------------------------------------

  Ved dannelse af en plotterfil vil følgende nøgleord IKKE fungere til plotte-
ren. Fill,mask,sletbar,linetype. Dette er ensbetydende med at plotteren vil ig-
norere disse nøgleord.

(* ------------------------------------------------------------------------- *)

                                   THE END
«eof»