Makrot ja ominaisuudet
3D-Win / Yleistä
Artikkelin toiminnot 3D-Win 6.5.0 alkaen
Julkaistu 22.11.2018, Mikko Syrjä
Makrot ja ominaisuudet ovat kaksi eri tapaa hakea tietoa aineiston kohteilta. Ominaisuus on jokin kohteelle tallennettu nimetty tieto. Makro puolestaan on laskennallinen tieto, joka luodaan automaattisesti sitä kysyttäessä. Makrot ovat pääosin käytettävissä samoissa toiminnoissa kuin ominaisuudet.
Esimerkiksi kohteella voi olla päivämäärä tallennettuna ominaisuuteen PVM. Tämä pysyy vakiona, kunnes sitä tietoisesti muutetaan. Makro #DATE puolestaan palauttaa aina tämän päivämäärän ja näin ollen muuttuu joka päivä. Operaatiolla PVM=#DATE voidaan tämä päivämäärä tallentaa kohteelle pysyväksi tiedoksi. Vastaavasti kohteella oleva pinta-ala ominaisuudessa ALUE pysyy samana, vaikka alueen geometriaa muutetaan. Makro #AREA taas palauttaa aina geometriasta lasketun ajan tasalla olevan pinta-alan. Alueen geometrian editoinnin jälkeen ominaisuus voidaan päivittää operaatiolla ALUE=#AREA.
Ominaisuus voi olla tallennettuna eri tyyppisille kohteille. Pisteillä, viivoilla ja tiedostoilla on kullakin omat ominaisuutensa, jotka riippuvat aineiston alkuperästä ja muodostustavasta. GIS-tyyppisillä aineistoilla ominaisuudet ovat yleensä kohdekohteisesti eli joko hajapisteellä, viivalla tai alueella. Viivan tai alueen reunan pisteillä ei ominaisuuksia tällöin ole. Maastossa mitatuilla kohteilla ominaisuudet ovat monasti pistekohtaisesti eli mitatulla viivalla ei ole omia ominaisuuksia. Tiedoston ominaisuudet puolestaan ovat koko tiedostolle yhteisiä ominaisuuksia.
3D-Winin editointitoiminnot käsittelevät ominaisuuksia kohdekohtaisesti eli Pisteen editoinnilla muutetaan pisteen (hajapiste, viivapiste, profiilipiste, kairaus) ominaisuuksia, Viivan editoinnilla viivan ominaisuuksia, Profiilin editoinnilla profiilin ominaisuuksia ja Tiedostoelementin asetuksilla tiedoston ominaisuuksia. Erityistapauksena Pisteryhmä-toiminnossa on kaksi välilehteä ominaisuuksien käsittelyyn: Data-välilehdellä annetut ominaisuudet sijoitetaan kohdekohtaisesti (hajapiste, viiva, profiili, alue, kairaus) ja Piste-välilehdellä olevat ominaisuudet puolestaan pistekohtaisesti (hajapiste, viivan piste, profiilin piste, alueen reunapiste, kairaus). Muiden toimintojen käyttäytyminen vaihtelee tapauskohtaisesti. Ohjeesta löytyy lisätietoja.
Vastaavasti makrojen arvoja voidaan kysyä eri tyyppisiltä kohteilta. Osa makroista toimii kaikkien kohteiden kanssa. Esimerkiksi makrolla #FILENAME voidaan kysyä mihin tiedostoon kohde kuuluu. Jotkin makrot taas toimivat vain tietyn tyyppisille kohteille. Esimerkiksi makrolla #SLOPE voidaan kysyä kaltevuus viivan tai profiilin pisteeltä. Makro #LENGTHXY puolestaan palauttaa viivan tai profiilin vaakapituuden ja makro #POINTCOUNT tiedoston pisteiden määrän.
Makron nimi alkaa aina merkillä #. Ominaisuuksien kanssa käytäntö vaihtelee hieman eri toiminnoissa. Monissa toiminnoissa ominaisuuteen voidaan viitata yksinkertaisesti sen nimellä, esimerkiksi PVM. Jos ominaisuutta käytetään toiminnossa, jossa sitä ei voi tunnistaa ilman tarkenninta (esimerkiksi pisteryhmän sijoituksessa, otsikkotiedostossa tai formaatinmuuntimen alkutiedostossa), sen alkuun on laitettava merkki $. Jos makro tai ominaisuus on tekstissä erillisenä sanana, riittää pelkkä #DATE tai $PVM. Jos makro on tekstissä kiinni muissa sanoissa, on se erotettava suluilla: #(DATE) tai $(PVM). Mahdollinen muotoilumääre sijoitetaan tällöin sulkujen sisään.
PVM 21.10.2018
$PVM 21.10.2018
$(PVM) 21.10.2018
#DATE 22.11.2018
#(DATE) 22.11.2018
#(DATE%DD.MM) 22.11
Joissain tapauksissa joudutaan tarkentamaan ominaisuuden hakua merkeillä £ (viivan ominaisuus) tai $$ (tiedoston ominaisuus). Esimerkiksi otsikkotiedostossa aktiivisen pisteen päivämäärä haetaan ominaisuudesta $PVM, mutta aktiivisen tiedoston päivämäärä ominaisuudesta $$PVM. Vastaavasti tekstiformaatissa riville kirjoitetaan pisteen päivämäärä ominaisuudesta $PVM, mutta viivan päivämäärä ominaisuudesta £PVM.
$PVM 21.10.2018 (kohteen päiväys)
£PVM 21.10.2018 (viivan päiväys)
$$PVM 21.10.2018 (tiedoston päiväys)
Pääsääntöisesti makrot vain palauttavat tietoja, eikä niihin voida sijoittaa arvoja. Tähän on kuitenkin muutama poikkeus ominaisuuksien muunnostiedostossa ja tekstiformaatissa. Molemmissa voidaan sijoittaa arvoja piirtotietomakroihin (#SIZE, #WIDTH, #STYLE, jne.). Ominaisuuksien muunnostiedostossa voidaan lisäksi sijoittaa koordinaattimakroihin #X, #Y ja #Z sekä kohteen tunnusmakroon #ID. Pistemäisillä kohteilla tunnus sijoitetaan kenttään T4 ja viivamaisilla kohteiilla kenttään T2.
Ohjesivu: Makrot