3D-Win / Tiedosto / Formaatit / Vektoritiedosto

Artikkelin toiminnot 3D-Win 6.5.0 alkaen

Julkaistu 27.11.2018, Mikko Syrjä



Formaatinmuuntimien vanhaa erikoisasetusta CopyAttrib on käytetty ominaisuuksien siirtämiseen ja yhdistämiseen. Nämä operaatiot voidaan nyt tehdä uudella muunnostiedostolla. CopyAttrib on vielä mukana versiossa 6.5, mutta poistuu versiossa 6.6. Seuraavassa hieman ohjeita miten vanha toiminnallisuus voidaan siirtää uuteen systeemiin.

Muunnostiedoston nimi haetaan vektoritiedoston formaatimuuntimen asetusten pääsivulle. Tämän esimerkin mukaiset tiedostot on tehty niin, että muunnoksen suunnalla ei ole merkitystä. Kuten vanhaa CopyAttrib-tiedostoa, myös muunnostiedostoa voidaan käyttää sekä luvussa että kirjoituksessa.

Esimerkki vanhasta CopyAttrib-tiedostosta:

T1 T3
T2 pipeLabel
T3 "R"
T3+ diameter 0%.0*1000

Ensimmäisellä rivillä sijoitetaan kenttään T1 kentän T3 arvo ja toisella rivillä kenttään T2 sijoitetaan ominaisuuden pipeLabel arvo. Kolmannella rivillä sijoitetaan kenttään T3 vakioteksti R. Neljännellä rivillä otetaan diameter-ominaisuuden arvo, kerrotaan se tuhannella, muotoillaan nollalla desimaalilla ja lisätään kenttään T3. Esimerkiksi jos ominaisuudessa diameter on arvo 0.09, muodostuu kenttään T3 arvo R90.

Sama operaatio tehtynä muunnostiedostolla:

*, *, T1=$T3;T2=$pipeLabel;T3=R;T3=&$diameter%e3.0

Muunnostiedosto on rakenteeltaan taulukko, jossa muunnos tehdään kahden ensimmäisen sarakkeen välillä jompaankumpaan suuntaan ja mahdollinen kolmas sarake suoritetaan, jos muunnos täsmää suunnasta riippumatta. Yllä on kahteen ensimmäiseen sarakkeeseen laitettu kaikkien arvojen kanssa täsmäävä yhdistelmä *,. Tähti täsmää kaikkiin arvoihin, jotka eivät ole tyhjiä ja pilkku muodostaa ehtolistan tyhjän arvon kanssa. Rivin kolmas sarake siis suoritetaan aina kaikille kohteille muunnoksen suunnasta riippumatta. Tämä täsmää CopyAttrib-tiedoston toiminnan kanssa.

Kolmannessa sarakkeessa suoritettavat operaatiot on erotettu puolipisteillä. Jos ne listataan eri riveille, saadaan seuraavaa:

T1=$T3
T2=$pipeLabel
T3=R
T3=&$diameter%e3.0

Tämä muistuttaa läheisesti alkuperäistä tiedostoa ja tekee samat asiat hieman eri syntaksilla. Kaikki operaatiot tehdään sijoituksina merkin = kanssa ja ominaisuuksien arvoja haettaessa on käytettävä merkkiä $ ominaisuuden nimen edessä. Vakioarvojen sijoitus ei tarvitse lainausmerkkejä, jos arvossa ei ole välilyöntejä. Arvojen yhdistäminen tehdään merkin + sijasta merkillä &. Merkin % jälkeen annetussa muotoilussa määre e3 kertoo arvon kymmenen potenssilla kolme eli tuhannella ja .0 määrää nolla desimaalia.

Toinen vanha CopyAttrib esimerkki:

D \\Whp2180\jtp\reports\sij_ilm_2010\0
ID+ T1:04
ID+ ".rtf"

Ominaisuuteen ID sijoitetaan ensin palvelimella oleva hakupolku. Siihen lisätään sitten kentän T1 arvo neljän merkin levyisenä ja edestä nollilla täytettynä. Lopuksi lisätään vielä tiedostopääte. Esimerkiksi kentässä T1 oleva arvo 1 muodostaa tiedostopolun \\Whp2180\jtp\reports\sij_ilm_2010\00001.rtf.

Sama muunnostiedostolla:

*, *, ID="\\Whp2180\jtp\reports\sij_ilm_2010\0";ID=&$T1@4=0;ID=&".rtf"

Kun operaation osat erotellaan saadaan seuraavat rivit:

ID=\\Whp2180\jtp\reports\sij_ilm_2010\0
ID=&$T1@4=0
ID=&".rtf"

Alkuperäisessä CopyAttrib-tiedostossa kentän leveys 4 ja täyttömerkki nolla annettiin syntaksilla :04. Muunnostiedostossa sama asia tehdään lisäämällä muotoilun perään määritys @4=0.

CopyAttrib-tiedoston ja muunnostiedoston eroavaisuudet lyhyesti:

  • Yksittäinen operaatio kirjoitetaan muunnostiedostossa yhdelle riville puolipisteillä erotettuna.
  • Tähti ja pilkku kahdessa ensimmäisessä sarakkeessa tarkoittaa, että operaatio tehdään kaikille.
  • Sijoitus tehdään merkillä = ja yhdistämiseen käytetään plus-merkin sijasta syntaksia =&.
  • Vakiotekstejä ei tarvitse laittaa lainausmerkkeihin elleivät ne sisällä välilyöntejä.
  • Ominaisuuden arvo haetaan laittamalla tunnuksen eteen $, ilman sitä se on vain vakioteksti.
  • Leveyden määrittely tapahtuu @-merkillä ja täyttömerkki määrätään merkillä =.

Formaatinmuuntimen asetukset: Muunninasetukset

CopyAttrib-tiedosto ohjeessa: Ominaisuuden kopiointi

Lue lisää: Muunnostiedoston rakenne

  • No labels