Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space XDR and version 6.7

3D-Win / Yleistä

Artikkelin toiminnot 3D-Win 6.5.2 alkaen

Julkaistu 10.05.2019, Mikko Syrjä



Muunnostiedosto on perinteisestä koodimuunnoksesta laajennettu versio, joka pystyy muuntamaan ominaisuusyhdistelmän toiseksi ominaisuusyhdistelmäksi. Erityisesti tällä voidaan muuntaa ominaisuuksia käyttävän paikkatieto- tai suunnittelujärjestelmän tiedot yhdeksi maastokoodiksi. Systeemi on myös suunniteltu toimivan kahteen suuntaan eli samalla tiedostolla voidaan tieto viedä maastoon ja siirtää se takaisin sieltä.

Alkuperäinen koodimuunnostiedosto sisälsi kaksi saraketta, joiden välillä ominaisuuden arvon muunnos tapahtui jompaankumpaan suuntaan. Jos arvo täsmäsi etsittävän sarakkeen sisältöön, uudeksi arvoksi sijoitettiin toisen sarakkeen sisältö. Tiedostoa tulkattiin rivijärjestyksessä ja lopetettiin täsmäävään riviin. Yleensä etsittävä ja muutettava ominaisuus oli koodi T3, mutta sama systeemi toimi muidenkin ominaisuuksien kanssa. Lisäksi koodin T3 tapauksessa voitiin antaa kolmas sarake, jossa oli pintatunnukseen T1 sijoitettava oletusarvo. Tämä sijoitus tehtiin aina riippumatta muunnoksen suunnasta.

Kaikki tämä toimii edelleen uuden muunnostiedoston kanssa. Toimintaa on kuitenkin laajennettu niin, että kussakin kolmessa sarakkeessa voidaan antaa haettavaksi ja sijoitettavaksi useiden ominaisuuksien yhdistelmiä. Lisäksi ominaisuuksien arvoja voidaan laskea, muotoilla, palastella ja yhdistellä useilla eri tavoilla. Säännöt ovat samoja, joita käytetään ohjelman muissa toiminnoissa, esimerkiksi ominaisuushaussa, pisteryhmässä, arvojen muotoilussa, tekstiformaatissa ja otsikkotiedostossa.

Lähdetään liikkeelle yksinkertaisesta perustilanteesta. Muunnettaessa vasemmasta sarakkeesta oikeaan vasen sarake on etsittävä arvo ja oikea sarake sijoitettava arvo:

Code Block
123                     456

Eli jos ominaisuuden arvo on 123, sijoitetaan tilalle 456. Laajemmin ajateltuna vasen sarake on itse asiassa hakusääntö ja oikea sarake sijoitussääntö. Vasen sarake voi siis hyödyntää ominaisuushaun sääntöjä. Kun muunnettava ominaisuus on koodi T3, voidaan vertailuehto kirjoittaa muodossa T3=123. Vastaavasti arvon sijoitus oikeassa sarakkeessa voitaisiin näyttää samalla syntaksilla:

Code Block
T3=123                  T3=456

Kun haku ja sijoitus käyttävät samaa muotoa, muunnostiedosto toimii molempiin suuntiin.

Ominaisuushaun hakuehto tukee useamman ominaisuuden hakua puolipisteellä erotettuna. Jotta koko ehto täsmää, on kaikkien osien täsmättävä. Sijoituspuolella voidaan ottaa käyttöön vastaava sääntö: kaikki puolipisteellä erotetut sijoitukset suoritetaan. Voidaan siis kirjoittaa seuraavaa:

Code Block
T1=1;T3=123             T1=2;T3=456

Edelleen kaikki toimii molempiin suuntiin. Pinta 1 ja koodi 123 muuntuvat pinnaksi 2 ja koodiksi 456 tai päinvastoin. Tätä voidaan erityisesti hyödyntää muunnoksissa yhden koodin ja kahden koodin järjestelmien välillä:

Code Block
T3=123                  T1=2;T3=456

Hakuehtona voidaan antaa myös pilkulla erotettu lista, joista minkä tahansa arvon täsmääminen riittää. Sijoitussääntönä tämä voidaan toteuttaa niin, että sijoitetaan listan ensimmäinen arvo. Esimerkiksi yhden järjestelmän kolmelle eri koodille voi toisessa järjestelmässä olla vain yksi vastine:

Code Block
T3=1,2,3                T3=456

Muunnettaessa vasemmalta oikealle koodit 1, 2 ja 3 muuntuvat koodiksi 456. Toisin päin koodi 456 muuntuu koodiksi 1. Oletuskoodin on siis oltava listassa ensimmäisenä. Pilkulla erotetun listan lisäksi voidaan käyttää myös arvoväliä väliviivalla erotettuna:

Code Block
T3=1-3                  T3=456

Sijoituksessa käytetään edelleen ensimmäistä arvoa eli välin alkuarvoa. Jos oletusarvoksi halutaan jokin muu, se voidaan antaa normaalisti pilkun kanssa:

Code Block
T3=2,1-3                T3=456

Kolmas sarake oli vanhassa versiossa oletuksena sijoitus kenttään T1, mutta nyt se voi käyttää kaikkia samoja sijoitussääntöjä kuin muutkin sarakkeet. Jos kahden ensimmäisen sarakkeen välinen muunnos suoritetaan jompaankumpaan suuntaan, suoritetaan aina myös kolmannen sarakkeen sijoitus. Tätä voidaan käyttää sijoittamaan oletusarvoja, esimerkiksi vakioarvo ominaisuuteen COMMENT: 

Code Block
T1=1;T3=2,1-3           T1=2;T3=456             COMMENT=testi

Tiedoston sarakkeiden erottimena toimivat välilyönnit tai sarkaimet. Tästä johtuen itse sarakkeissa olevat välilyönnit on annettava lainausmerkeissä:

Code Block
T1=1;T3=2,1-3           T1=2;T3=456             COMMENT="toinen testi"

Toimiva tapa on käyttää sarkaimia sarakkeiden erottimena. Tällöin sarakkeita voidaan helpommin käsitellä vaikkapa taulukkolaskennassa.


 Yhtäsuuruus (=)
Vertaa yhtäsuuruutta, sijoittaa arvon ominaisuuteen
 Puolipiste (;)Kaikkien ehtojen täsmättävä, kaikki sijoitukset suoritetaan
 Pilkku (,)Yhden arvon on täsmättävä, ensimmäinen arvo sijoitetaan
 Väliviiva (-)Arvon oltava annetulla välillä, alkuarvo sijoitetaan


Villit merkit

Hakuehdossa voidaan käyttää villejä merkkejä ? ja *. Normaalin tapaan kysymysmerkki vastaa mitä tahansa yhtä merkkiä ja tähti mitä tahansa merkkijonoa. Poikkeuksena yleiseen tapaan tähti ei kuitenkaan täsmää tyhjään merkkijonoon. Jos halutaan ehto, joka täsmää myös puuttuviin ominaisuuksiin on muodostettava pilkulla erotettu ehtolista tähdestä ja tyhjästä arvosta: *, (tähti ja pilkku).

Sijoituksessa villejä merkkejä sisältävät arvot eivät tee mitään. Hakuehtolistana tähden ja pilkun järjestyksellä ei ole väliä, mutta sijoituksessa noudatetaan normaalia ehtolistan sääntöä eli sijoitetaan ensimmäinen. Tällöin *, ei tee mitään (tähti ensimmäisenä), mutta ,* tyhjää ominaisuuden arvon (tyhjä ensimmäisenä). Esimerkiksi:

Code Block
T3=,*                   T3=456

Vasemmalta oikealle rivi sijoittaa kaikille kohteille koodiin T3 arvon 456. Toiseen suuntaan muunnettaessa koodin 456 arvo tyhjätään, koska sijoituslistassa on ensimmäisenä tyhjä arvo. Toinen järjestysvaihtoehto:

Code Block
T3=*,                   T3=456

Vasemmalta oikealle rivi sijoittaa edelleen kaikille kohteille koodiin T3 arvon 456. Toiseen suuntaan muunnettaessa koodille 456 ei kuitenkaan tehdä mitään, koska sijoituslistassa on ensimmäisenä tähti. Koodiksi jää alkuperäinen 456.

Kolmen sarakkeen tekniikalla voidaan villeillä merkeillä rakentaa muunnostiedosto, joka lisää kaikille kohteille vakioarvot riippumatta siitä mihin suuntaan operaatio tehdään:

Code Block
*,                      *,                      T1=1;T3=456

Kaksi ensimmäistä saraketta täsmäävät kaikkiin koodeihin molempiin suuntiin, mutta eivät koskaan sijoita mitään. Kolmannen sarakkeen sijoitus taas suoritetaan jokaiselle kohteelle.

Kysymysmerkkien kanssa voidaan hakea tietyn mittaisia arvoja. Esimerkiksi voidaan muuntaa kaikki kahden tai kolmen merkin pituiset koodit koodiksi 456:

Code Block
T3=123,??,???           T3=456

Ensimmäinen koodi 123 on taas toisen muuntosuunnan oletuskoodi. Kysymysmerkki ja tähti eivät toistaiseksi toimi yhdessä eli esimerkiksi määrittelyä T3=?* ei voi käyttää.


 Kysymysmerkki (?)Täsmää yhteen merkkiin, sijoituksessa ei tee mitään
 Tähti (*)Täsmää kaikkiin paitsi tyhjiin arvoihin, sijoituksessa ei tee mitään
 Tähti ja pilkku (*,)Täsmää kaikkiin arvoihin, sijoituksessa ei tee mitään
 Pilkku ja tähti (,*)Täsmää kaikkiin arvoihin, sijoittaa tyhjän arvon


Rivien järjestys

Tiedosto tulkataan rivijärjestyksessä kuten ennenkin ja lopetetaan ensimmäiseen täsmäävään riviin. Tätä voidaan hyödyntää oletusarvojen asettamisessa. Esimerkiksi seuraava asettaa kahdella viimeisellä rivillä oletukset ja tunnistamattomat:

Code Block
... 


T3=123,                 T3=456, 


T3=999,*                T3=999,*

Vasemmalta oikealle toiseksi viimeinen rivi täsmää sekä koodiin 123 että tyhjään arvoon ja muuttuu oletuskoodiksi 456. Toiseen suuntaan tyhjien arvojen oletuskoodi on vastaavasti 123. Viimeiselle riville päädytään vain, jos mikään aikaisempi rivi ei täsmännyt eli kyseessä on tuntematon koodi. Niille laitetaan koodiksi 999.

Moniosaisten koodien muunnoksessa voidaan hyödyntää kysymysmerkkejä. Tiedostoon laitetaan ensin tunnetut yhdistelmät ja niiden jälkeen oletusarvot kysymysmerkkien kanssa:

Code Block
T3=123                  T3=456


T3=120,12?              T3=450


T3=100,1??              T3=400

Muunnostiedostoa käytettäessä puuttuvista arvoista annetaan yleensä varoitus. Esimerkiksi formaatinmuunnin kirjoittaa listan puuttuvista arvoista lokitiedostoon. Jos muunnosta ei ole tarkoitettukaan käsittelemään kaikkia kohteita, varoituksesta päästään eroon laittamalla viimeiseksi riviksi määrittely, joka täsmää kaikkeen, mutta ei koskaan tee mitään:

Code Block
... 


*,                      *,

Yllä olevaa riviä ei koskaan lasketa täsmääväksi muunnokseksi eli se ei ole mukana ohjelman näyttäessä muunnoksen jälkeen muunnettujen kohteden määrän.


Poisto, kopiointi ja siirto

Arvoja voidaan poistaa, kopioida toiseen ominaisuuteen tai siirtää ominaisuudesta toiseen. Poistaminen tapahtuu yksinkertaisesti antamalla ominaisuudelle tyhjä arvo:

Code Block
*,                      *,                      CODE=

Edellinen rivi poistaa kaikilta kohteilta ominaisuuden CODE molemmissa suunnissa. Tiettyjen arvojen

poistaminen voidaan tehdä esimerkiksi seuraavasti:

Code Block
CODE=,1,2               CODE=,1,2

Molemmissa suunnissa haku täsmää tyhjään arvoon sekä arvoihin 1 ja 2. Sijoituksessa puolestaan sijoitetaan ensimmäinen eli tyhjä arvo.

Kopiointi tehdään yksinkertaisesti antamalla arvoksi ominaisuuden nimi merkin $ kanssa tai makron nimi merkin # kanssa. Oletusominaisuuteen voidaan viitata pelkällä merkillä $.

Code Block
CODE=$T3,*,             T3=$CODE,*,


CODE=$,*,               $CODE,*,

Vasemmalta oikealle ehto *, täsmää kaikkiin arvoihin ja sijoittaa koodiksi T3 ominaisuuden CODE arvon. Toiseen suuntaan vastaavasti ominaisuuteen CODE sijoitetaan koodi T3. Jälkimmäinen rivi tekee saman asian oletusominaisuuden ollessa T3.

Siirto toiseen ominaisuuteen tehdään käyttämällä arvon hakuun operaattoria ¤:

Code Block
CODE=¤T3,*,             T3=¤CODE,*,


CODE=¤,*,               ¤CODE,*,

Operaattori ¤ hakee ominaisuuden arvon kuten $, mutta lisäksi tyhjää alkuperäisen ominaisuuden. Jälkimmäinen rivi tekee saman asian oletusominaisuuden ollessa T3.

Tässä on huomattava, että ominaisuuden arvo ei toimi hakuehtona. Ehto CODE=$T3 ei siis täsmää kohteisiin, joiden ominaisuuden CODE arvo olisi sama kuin koodin T3, vaan kohteisiin joiden arvo on "$T3".


 Dollarimerkki ($)Ei täsmää vertailussa, sijoituksessa hakee ominaisuuden arvon
 Valuuttamerkki (¤)Ei täsmää vertailussa, sijoituksessa siirtää ominaisuuden arvon
 Risuaita (#)Ei täsmää vertailussa, sijoituksessa hakee makron arvon


Arvojen muotoilu

Arvon korvaamisen sijasta tai sen lisäksi voidaan arvoille tehdä erilaisia muotoiluja. Arvoon voidaan lisätä osia, arvosta voidaan poistaa osia tai numeerinen arvo voidaan muotoilla uudestaan. Näissä käytetään samoja sääntöjä kuin Pisteryhmä-toiminnon sijoituksessa. Seuraava lisää tai poistaa koodilta etuliitteen:

Code Block
T3=2§,*                 T3=PN&,*

Vasemmalta oikealle koodiin lisätään etuliite PN ja toiseen suuntaan koodista poistetaan kaksi ensimmäistä merkkiä.

Numeerisia arvoja voidaan muotoilla kaikilla yleisillä muotoilumäärittelyillä mukaan lukien kenttien leveysmäärittelyt. Esimerkiksi seuraava muuntaa ominaisuuden DIA metrit millimetreiksi vasemmalta oikealle ja millimetrit metreiksi oikealta vasemmalle:

Code Block
DIA=$DIA%e-3.3,*        DIA=$DIA%e3.0,*

Vasemmalta oikealle muotoilumääre e3 kertoo arvon tuhannella ja .0 asettaa desimaalien määräksi nollan. Toiseen suuntaan e-3 jakaa tuhannella ja .3 asettaa desimaaleiksi kolme. Voidaan myös tehdä muunnos asteina tai gooneina olevien ominaisuuksien välillä:

Code Block
DEG=$GON%d.3,*          GON=$DEG%g.0,*

Muotoilumääre d muuntaa gooneina olevan ominaisuuden GON asteiksi ja määre g muuntaa asteina olevan ominaisuuden gooneiksi.

Arvo voidaan muotoilla myös tietyn levyiseen kenttään ja täyttää loppu halutulla merkillä. Esimerkiksi metrisen ominaisuuden DIA kirjoittaminen millimetreinä neljän merkin kenttään ja täyttö nollilla:

Code Block
DIA=*                   CODE=$DIA%e3.0@4=0

Merkin @ jälkeen annetaan kentän leveys ja merkin = jälkeen täyttömerkki.


 Pykälämerkki (§)Ei täsmää vertailussa, sijoituksessa poistaa merkkejä alusta tai lopusta
 Et-merkki (&)
Ei täsmää vertailussa, sijoituksessa liittää arvon alkuun tai loppuun
 Prosenttimerkki (%)
Ei täsmää vertailussa, sijoituksessa aloittaa arvon muotoilun
 At-merkki (@)Ei täsmää vertailussa, sijoituksessa aloittaa kentän leveysmäärittelyn
 Yhtäsuuruus (=)
Ei täsmää vertailussa, sijoituksessa määrittelee kentän täyttömerkin


Yhdistäminen ja poiminta

Arvoja voidaan yhdistää tai niistä voidaan poimia osia. Arvon yhdistäminen tapahtuu samalla merkillä & kuin aikaisempi vakiotekstin lisäys. Nyt vain vakiotekstin sijasta annetaan ominaisuuden nimi:

Code Block
T3=*,                   T3=$TYPE;T3=&$DIA;T3=&$MAT


T3=*,                   T3=¤TYPE;T3=&¤DIA;T3=&¤MAT

Yllä oleva sijoittaa ensin koodiin T3 ominaisuuden TYPE arvon ja lisää sitten sen perään ominaisuuksien DIA ja MAT arvot. Jälkimmäinen rivi tekee saman asian, mutta samalla tyhjää ominaisuudet TYPE, DIA ja MAT.


Osan poimiminen tapahtuu antamalla ominaisuuden nimen perässä hakasuluissa poimittavan osuuden alku- ja loppuindeksit kaksoispisteellä erotettuna. Indeksit ovat nollasta alkavia ja loppuindeksi on ensimmäinen merkki, joka ei tule mukaan. Seuraava poimii vasemmalta oikealle viisimerkkisestä koodista T3 kolme keskimmäistä merkkiä ominaisuuteen DIA:

Code Block
T3=?????                DIA=$T3[1:4]

Alkuindeksi 1 on toinen merkki ja loppuindeksi 4 viides merkki, joka ei tule poimintaan mukaan. Jos poimitaan osa ominaisuuden alusta tai lopusta voidaan toinen parametri jättää pois:

Code Block
T3=?????                TYPE=$T3[:1];MAT=$T3[4:]

Edellinen poimii ensimmäisen merkin ominaisuuteen TYPE ja viimeisen merkin ominaisuuteen MAT. Indeksit voidaan antaa myös negatiivisina arvoina lopusta päin, jolloin indeksi -1 on viimeinen merkki:

Code Block
T3=????,?????           TYPE=$T3[:1];DIA=$T3[1:-1];MAT=$T3[-1:]

Edelleen poimitaan ensimmäinen merkki ominaisuuteen TYPE ja viimeinen merkki ominaisuuteen MAT. Ominaisuuteen DIA poimitaan sitten kaikki niiden väliin jäävät merkit. Koska loppuosan indeksit evät enää ole riippuvaisia arvon pituudesta, poiminta toimii eri mittaisten arvojen kanssa.

Yllä olevat arvojen yhdistäminen ja osien poimiminen toimivat vain yhteen suuntaan. Jos halutaan kahteen suuntaan toimiva muunnostiedosto, eri suuntien muunnokset on suoritettava omilla riveillään:

Code Block
T3=????,?????               TYPE=$T3[:1];DIA=$T3[1:-1];MAT=$T3[-1:]


T3=$TYPE;T3=&$DIA;T3=&$MAT  T3=*,

Vasemmalta oikealle ajettaessa haku täsmää vain ensimmäiseen riviin ja suorittaa toisen sarakkeen poimintaoperaatiot. Haku ei voi koskaan täsmätä toiseen riviin, koska koodin T3 pitäisi olla yhtä aikaa monta eri arvoa. Vastaavasti toiseen suuntaan ajettaessa haku ei voi koskaan täsmätä ensimmäisen rivin toiseen sarakkeeseen. Haku kuitenkin täsmää sitten aina toiseen riviin ja suorittaa ensimmäisen sarakkeen yhdistämisoperaation.


 Et-merkki (&)
Ei täsmää vertailussa, sijoituksessa liittää arvon ominaisuuteen
 Hakasulut ([])
Eivät täsmää vertailussa, sijoituksessa poimivat osan arvosta
 Kaksoispiste (:)
Ei täsmää vertailussa, sijoituksessa erottaa poiminnan alku- ja loppusijainnin


Laskenta

Ominaisuuksien välillä voidaan tehdä yksinkertaisia matemaattisia operaatioita. Arvoja voidaan laskea yhteen, vähentää, kertoa ja jakaa sekä vakioarvoilla että toisilla ominaisuuksilla. Laskentaoperaatio annetaan sijoitettavan arvon ensimäisenä merkkinä. Loppuosa arvosta on laskentaparametri, joka voi olla joko ominaisuuden arvo tai vakio. Koska miinusmerkki oletetaan matemaattiseksi operaatioksi, on negatiivinen arvo annettava lainausmerkeissä. Seuraavassa esimerkkejä:

Code Block
DIAMETER=*;THICKNESS=*  DIAMETER=+$THICKNESS


DIAMETER=*;THICKNESS=*  DIAMETER=-$THICKNESS


DIAMETER=*              DIAMETER=*1000.0


DIAMETER=*              DIAMETER=/1000.0


*,                      DIAMETER="-10.0"

Laskenta toimii vasemmalta oikealle ja operaatiot suoritetaan vain kohteille, joilla on tarvittavat ominaisuudet. Kaksi ensimmäistä riviä lisää tai vähentää ominaisuudesta toisen ominaisuuden arvon. Jälkimmäiset kaksi riviä kertovat tai jakavat arvon vakioarvolla 1000.0. Viimeinen rivi sijoittaa arvoksi negatiivisen luvun.


 Plusmerkki (+)Lisää ominaisuuteen toisen arvon
 Miinusmerkki (-)Vähentää ominaisuudesta toisen arvon
 Kertomerkki (*)Kertoo ominaisuuden toisella arvolla
 Jakomerkki (/)Jakaa ominaisuuden toisella arvolla


Osiot

Perinteinen muunnostiedosto teki kerralla vain yhden muunnoksen. Uudessa muunnostiedostossa voidaan antaa useita osioita, jotka kukin suoritetaan aivan kuin ne olisivat erillisiä muunnostiedostoja. Osiot alkavat hakasuluissa olevalla otsikkorivillä:

Code Block
[pinta] 


T1=1                    T1=2 


*,                      *, 


[koodi] 


T3=123                  T3=456 


*,                      *,

Edellä oleva tekee muunnoksen kentille T1 ja T3 välittämättä puuttuvista koodeista. Hakasulkujen sisällä oleva teksti on vain kommentti, jolla ei ole vaikutusta toimintaan.


Suoritettaessa muunnos vasemmalta oikealle, suoritetaan osiot tiedoston alusta loppuun päin. Toiseen suuntaan osiot suoritetaan tiedoston lopusta alkuun päin. Yksittäisen osion sisällä rivit käydään kuitenkin edelleen läpi ylhäältä alas. Edellisessä esimerkissä osiot olivat toisistaan riippumattomia eli niiden suoritusjärjestyksellä ei ollut merkitystä. On kuitenkin mahdollista ketjuttaa osioita jolloin yksi osio tekee osan muunnoksesta ja seuraava osio jatkaa siitä:

Code Block
[muunnos]


T3=123                  T3=456


*,                      *,


[lisäys]


T3=1§,*                 T3=D&,*


*,                      *,

Vasemmalta oikealle ensimmäinen osio muuntaa koodin 123 koodiksi 456. Sen jälkeen toinen osio lisää koodin alkuun kirjaimen D eli lopputulos on D456. Toiseen suuntaan suoritettaessa osiot suoritetaan päinvastaisessa järjestyksessä eli alempi osio poistaa koodista ensimmäisen merkin ja ylempi osio muuntaa koodin.


Rivin tai sarakkeen alussa voidaan antaa vapaamuotoinen kommentti huutomerkin tai puolipisteen kanssa. Koska sekä huutomerkki että puolipiste voivat esiintyä haku- ja sijoitusehdoissa (esim. !T3=1,2,3), on kommenttimerkin jälkeen tultava aina välilyönti, sarkain tai toinen kommenttimerkki.

Code Block
! koodimuunnos


T3=1,2                  T3=456                  T5=9   !! aseta T5


T3=3                    T3=456                  T5=    !! poista T5

Kommentti jatkuu aina rivin loppuun asti.


Versiosta 6.5.2 eteenpäin voidaan osio antaa myös alltosuluissa. Tällöin suoritetaan aina jokainen osion rivi. Tämä on käyttökelpoinen esimerkikisi aineiston ominaisuuksien nimien normalisoinnissa:

Code Block
{skandit}


MATERIAL=teras,teräs    MATERIAL=teras,teräs


RIMTYPE=ritila,ritilä   RIMTYPE=ritila,ritilä

Yllä oleva muuntaa molempiin suuntiin arvoksi oletuksen eli listan ensimmäisen arvon, jossa ei ole skandimerkkejä.


Edelleen versiosta 6.5.2 lähtien voidaan kokonainen osio kommentoida pois laittamalla kommenttimerkki osion nimen eteen:

Code Block
[!koodi] 


T3=123                  T3=456 


*,                      *,                      !]

Viimeisen rivin lopussa oleva kommentti !] on itse muunnoksen kannalta merkityksetön, mutta sen avulla voidaan rajata osio niin, että tekstieditorien syntaksiväritys osaa näyttää kommentoidun osion eri värillä.


 Hakasulut ([])
Aloittavat uuden osion, josta suoritetaan ensimmäinen täsmäävä rivi
 Aaltosulut ({})Aloittavat uuden osion, josta suoritetaan kaikki rivit (6.5.2 eteenpäin)
 Huutomerkki (!)
Aloittaa kommentin rivin tai sarakkeen alussa
 Puolipiste (;)
Aloittaa kommentin rivin tai sarakkeen alussa


Asetukset

Kunkin osion sisällä voidaan antaa asetuksia, jotka ovat voimassa osion loppuun asti tai kunnes ne asetetaan uudestaan. Asetukset annetaan riveillä, jotka alkavat merkeillä !@ ja asetuksen nimen jälkeen tulee kaksoispiste. Esimerkiksi osio voidaan asettaa käsittelemään tekstit seuraavalla asetuksella:


Code Block
[tekstit]


!@ TextPoint:1


123                     456

Asetuksilla LinePoint, TextPoint ja FileData voidaan käsitellä viivapisteet, teksti tai tiedoston ominaisuudet. Asetus laitetaan päälle arvolla yksi ja pois päätä arvolla nolla.

Asetuksilla LeftId, RightId, ThirdId ja ConvertId voidaan asettaa sarakkeiden oletusominaisuudet. Kolme ensimmäistä asettavat oletusominaisuuden kullekin sarakkeelle erikseen ja viimeinen kahdelle ensimmäiselle sarakkeelle. Esimerkiksi muunnoksen tekeminen koodin T3 sijasta pintatunnukselle T1:

Code Block
[pinnat]


!@ ConvertId:T1


12                      34

Asetuksilla LeftRule, RightRule, ThirdRule ja ConvertRule voidaan asettaa sarakkeille lisäsääntöjä. Kolme ensimmäistä laittavat lisäsäännön kullekin sarakkeelle erikseen ja viimeinen kahdelle ensimmäiselle sarakkeelle. Esimerkiksi suoritetaan pintamuunnos vasemmalta oikealle vain koodille 123 ja oikealta vasemmalle vain koodille 456:

Code Block
[pinnat]


!@ ConvertId:T1


!@ LeftRule:T3=123


1@ RightRule:T3=456


12                      34

Edellinen on teknisesti sama kuin seuraava:

Code Block
[pinnat]


T1=12;T3=123            T1=34;T3=456

Koska asetukset ovat osiokohtaisia, on moniosaisten tiedostojen kanssa muistettava kopioida ne kaikkiin tarvittaviin osioihin.


 LinePoint
Muuntaa myös viivapisteet
 TextPointMuuntaa myös tekstit
 FileDataMuuntaa myös tiedoston ominaisuudet
 LeftId, RightId, ThirdIdSarakkeiden oletusominaisuudet
 ConvertIdKahden ensimmäisen sarakkeen oletusominaisuus
 LeftRule, RightRule, ThirdRule
Sarakkeiden lisäehdot
 ConvertRule
Kahden ensimmäisen sarakkeen lisäehto



Muunnostiedosto ohjeessa: Muunnossäännöt

Kooditaulukko-toiminto: Kooditaulukko

Arvojen muotoilu: Esitysmuoto