Kooditiedosto sisältää kaikki ohjelman käyttämät asetukset, jotka liittyvät pisteiden, viivojen ja tekstien koodaukseen, ominaisuustietoihin ja piirtosääntöihin. Suurinta osaa näistä asetuksista voidaan editoida kooditiedoston editointitoiminnoilla.
Yleisiä asetuksia:
[common] Version=5
Väri-osiossa on määritelty ohjelman käyttämän 30-paikkaisen väripaletin värien RGB-arvot, eli punaisen, vihreän ja sinisen suhteelliset arvot välillä 0-255. Arvo 0, 0, 0 on musta ja 255, 255, 255 valkoinen. Väri 0 on ruudun taustaväri.
Esimerkki:
[color] 0 FFFFFF 255,255,255 1 000000 0,0,0 2 FF0000 0,0,255 3 0000FF 255,0,0 4 008000 0,128,0 5 00FFFF 255,255,0
Fonttien määrittelyssä on kunkin fontin ensimmäisellä rivillä fontin koodi ja nimi. Toisella rivillä on käytettävä kirjasin ja seuraavat määreet: koko (mm), väri (väritaulukon indeksi) ja binäärilippu (lihavointi (1), kursiivi (2), alleviivaus (4), yliviivays(8), läpinäkyvyys(16)) .
Esimerkki:
[font] 1 Font 1 Arial,3.00,1,0 2 Font 2 SansSerif,3.00,2,1 3 Font 3 Comic Sans MS,3.50,3,3
Symbolien määrittelyssä on kunkin määreen ensimmäisellä rivillä symbolin koodi ja nimi. Toisella rivillä ovat varsinaiset piirtosäännöt, joilla määrätään symbolin muoto 100x100 ruudukossa seuraavilla puolipisteellä erotetuilla komennoilla:
Ux,y - siirtää kynän paikkaan x,y ilman piirtoa, esim. U20,10;
Dx,y - piirtää suoran viivan edellisestä paikasta paikkaan x,y, esim. D-30,40
Rb - piirtää b-säteisen ympyrän, esim. R25
Ab - asettaa tekstin kulmaksi b goonia maanmittausjärjestelmässä, esim. A150
Gb - asettaa tekstin kulmaksi b goonia matemaattisessa järjestelmässä, esim. G-50
Cn - vaihtaa tekstin värin, n = värin numero
Jn - määrää tekstin asemoinnin arvoilla 1-9, esim. J3
Ttext - kirjoittaa tekstin text asetetulla absoluuttikulmalla, esim. Trumpu
!text - kirjoittaa tekstin text asetetulla suhteellisella kulmalla, esim. !rumpu
%cn - kirjoittaa kentän c (1-6) tai koordinaatin c (XYZ) n desimaalilla, esim. %X3
Ssize - kirjoittaa tekstin koon symbolissa oleville teksteille.
Huomaa, että jos piirrät symbolin symbolieditorilla, ohjelma ei vielä tue kaikkia editorin tarjoamia ominaisuuksia, kuten kaaria ja täytettyjä elementtejä tai värin vaihtoa. Nämä muutokset pitää tehdä käsin varsinaiseen datariviin.
Esimerkki:
[symbol] 106 Ympyrä ja vaakaviiva U00,00;R50;U-50,00;D50,00; 107 Ympyrä ja kaksi vaakaviivaa U00,00;R50;U-45,-20;D45,-20;U45,20;D-45,20; 108 Ympyrä ja pystyviiva U00,00;R50;U00,-50;D00,50; 109 Ympyrä ja kaksi pystyviivaa U00,00;R50;U-20,-45;D-20,45;U20,-45;D20,45; 110 Ympyrä ja kaksi vinoviivaa U00,00;R50;U-46,-18;D18,46;U-18,-46;D46,18;
Koodimäärittelyt annetaan koodikentille T1 ja T3 omissa osioissaan. Kentälle T1 määritellään piirtosäännöt pintatunnuksen mukaan poikki- ja pituusleikkauskuvia varten. Kentälle T3 määritellään sekä piirtosäännöt koodin mukaan normaaleihin karttakuviin että koodille sallitut ominaisuustiedot ja niiden arvot.
Kentille T2 (viivanumero) ja T4 (pistenumero) voidaan antaa ainoastaan kentän nimi.
Ensimmäisellä rivillä annetaan koodi ja nimi. Koodissa voidaan myös käyttää ?-merkkiä tarkoittamaan mitä tahansa merkkiä. Esimerkiksi voidaan määritellä piirtosäännöt ja ominaisuudet koodilla 3?? kaikille kolmimerkkisille koodeille, joiden ensimmäinen merkki on 3.
Toisella rivillä on pisteen piirtosäännöt, joita käytetään sekä hajapisteille että taiteviivan ja profiilien taitepisteille. Kolmas rivi määrää viivan piirron ja neljäs vastaavasti alueen.
Riveillä annetaan seuraavat arvot:
symboli - käytettävän symboli koodi, esim. 106
väri - käytettävä väri väritaulukon indeksinä, esim. 4
koko - symbolin tai viivan jakson koko millimetreinä, esim. 3.0
leveys - viivanleveys millimetreinä, esim. 0.25
jakso - symbolille varattu tila, esim. 4.0
optiot - erilaisia viivan piirtoa ohjaavia määrittelyjä binäärisummana
Koodilla T3 voi piirtomäärittelyjen jälkeen tulla rivi ATTR ja sen jälkeen pisteelle sallitut ominaisuustiedot kukin omalla rivillään. Yksittäisen ominaisuuden määrittely koostuu pilkulla erotetuista koodista, nimestä sekä sallitusta arvojoukosta. Kuten kaikki muutkin ohjelman käyttämät koodit, on ominaisuuden koodi alfanumeerinen tunnus, joka yksilöi ominaisuuden. Ominaisuuden nimi annetaan muodossa N=nimi, jossa N on ominaisuuden numero ja nimi on varsinainen nimi. Ominaisuuden numeroa käytetään joissain maastomittausjärjestelmissä, joissa ei voida antaa tekstitietoa.
Arvojoukkona annetaan lista arvoja muodossa N=nimi, jossa N on arvoa vastaava indeksi ja nimi ominaisuuden tosiarvo. Lisäksi voidaan arvojoukkona antaa *, joka sallii käyttäjän antaa minkä tahansa muunkin arvon ominaisuudelle. Tätä vapaata arvoa voidaan myös rajoittaa *-merkkiä seuraavalla määrittelyllä: <alaraja<yläraja<, jolloin ohjelma sallii ainoastaan rajojen välissä olevat arvot. Määrittelyrivin lopussa voidaan myös antaa asetus @N, joka määrää ominaisuuden oletusarvoksi indeksin N.
Esimerkki:
[t1] Pinta 1 Maanpinta 0,4,1.50,0.30,1.50,528 1,4,0.00,0.50,0.00,528 5,4,1.00,0.00,1.00,528 0 2 Kalliopinta;Kallio 0,3,1.50,0.20,1.50,528 1,3,0.00,0.50,0.00,528 5,3,1.00,0.20,1.00,528 0 [t2] Viiva [t3] Lajikoodi 439 Sadevesijohto 999,19,-1.00,0.00,-1.00,8256 1,19,0.00,0.30,0.00,8256,DIA,1.000 1,19,0.00,0.00,0.00,8256 0 ATTR DIA,Halkaisija,*<0.0<9.0< WID,Leveys,*<0.0<9.0< HGT,Korkeus,*<0.0<9.0< PRO,Suoja-alue,*<0.0<10.0< 440 Kaukolämpökaivo 100,9,-1.00,0.20,-1.00,0 1,9,0.00,0.00,0.00,64 1,9,0.00,0.00,0.00,0 0 ATTR DIA,Halkaisija,*<0.0<9.0< DEP,Syvyys,*<0.0<9.0< 449 Kaukolämpöjohto 0,9,0.00,0.00,0.00,8192 1,9,0.00,0.20,0.00,8192,WID,1.000 1,9,0.00,0.00,0.00,8192 0 ATTR DIA,Halkaisija,*<0.0<9.0< WID,Leveys,*<0.0<9.0< HGT,Korkeus,*<0.0<9.0< PRO,Suoja-alue,*<0.0<10.0< [t4] Tunnus [t5] Tarkkuus 1 RSK 0.25 m 0,1,0.00,0.00,0.00,0 1,1,0.00,0.00,0.00,0 1,1,0.00,0.00,0.00,0 0 2 RSK 0.5 m 0,2,0.00,0.00,0.00,0 1,2,0.00,0.00,0.00,0 1,2,0.00,0.00,0.00,0 0 [t6] Kulkutapa 60 Suora viiva 0,1,0.00,0.00,0.00,0 1,1,0.00,0.00,0.00,0 1,0,0.00,0.00,0.00,0 0 61 Käyräviiva 0,1,0.00,0.00,0.00,0 1,1,0.00,0.00,0.00,0 1,0,0.00,0.00,0.00,0 0
Jos koodi alkaa #-merkillä, kyseessä on makro, jonka ominaisuudet voidaan kopioida muille koodeille. Jos koodina on #DEFAULT, kaikki muut koodilistan koodit saavat tämän koodin ominaisuudet. Jos koodina on joku muu (esimerkiksi #MAT), voidaan yksittäiselle koodille kopioida nämä ominaisuudet antamalla ominaisuuslistaan sama #MAT.
Alla olevassa esimerkissä testikoodi KOE1 saa ominaisuudet DATE ja USER. Testikoodi KOE2 saa näiden lisäksi ominaisuuden MAT.
[t3] #DEFAULT Vakio-ominaisuudet (makro) ATTR DATE,1=Päiväys USER,2=Mittaaja,1=Juha,2=Iska #MAT Materiaali (makro) ATTR MAT,1=Materiaali,1=Teräs,2=Betoni,3=Muovi KOE1 Testikoodi1 191,13,-0.50,0.20,0 0,13,0.00,0.00,32 0,13,0.00,0.00,0 0,-0.50,0.00,0.00 0 KOE2 Testikoodi2 191,13,-0.50,0.20,0 0,13,0.00,0.00,32 0,13,0.00,0.00,0 0,-0.50,0.00,0.00 0 ATTR #MAT