PARAM-O – toimiiko se?

Kirjoittaja

Severi Virolainen

Artikkeli

12 / 03 / 2021

GDL, Archicad-objektien ohjelmointikieli, on yksi oleellinen osa Archicadin menestyksen salaisuutta. PARAM-O on Graphisoftin uusi yritys madaltaa kynnystä GDL-objektien luontiin ”on-demand”.

Laudeluonnos

Kuva 1. Ennen objektin ohjelmointia on hyvä piirtää siitä kuva ja merkitä kuvaan parametrien nimet. Usein säädettäviä asioita on enemmän kuin heti arvaisi. Tämä nopeuttaa työskentelyä huomattavasti. Samanlaisella kuvalla voi pyytää ohjelmoijalta objektin.

Kautta aikojen GDL on mahdollistanut Archicadin sovittamisen paikallisiin standardeihin. Parametreja säätämällä saadaan rakennusosien mitat, materiaalit ja ulkonäkö sovitettua mitä erilaisimpiin tarpeisiin. Tiesitkö, että ensin oli GDL, ja vasta myöhemmin sen kehittäjät keksivät soveltaa sitä rakennussuunnitteluohjelmistoon?

GDL on verraton teknologia äärettömän rakennusosavalikoiman tuottamiseen. Parametrisuudella yhdellekin objektille saa miljoonia erilaisia ilmentymiä – värejä, mittoja ja tyylejä voidaan valita vapaasti tai esimerkiksi valmistajan asettamin rajoituksin.

Aina ei kuitenkaan löydy täsmälleen tarvetta vastaavaa objektia. Kertaluontoisesti objektin voi mallintaa Archicadin työkaluilla ja ryhmittää tai tallentaa objektina. Mutta jos kyseistä objektia tarvitaan toistuvasti ja eri mitoilla, vaikkapa saunan lauteita, on objekti syytä ohjelmoida.

GDL on yksinkertainen ohjelmointikieli, mutta ohjelmoinnin opettelussa on oma kynnyksensä. Arkkitehtiopiskelijoiden suosiossa on muodikas Grasshopper – graafinen ohjelmointikieli, jolla tietyntyyppiset ongelmat on helpompi ratkaista.

PARAM-O on GDL-sovitus Grasshopper-tyyliseen datavirtojen visuaaliseen kudontaan. Katsotaan, miten se sopii käytännön tarpeisiin. ArchiMAD-numerossa 4/2020 Heikki Malkki kutsui visuaalista spagettia ”nuudeliksi” ja sen solmuja, soluja, nodeja, komponentteja – tai mitä ne ovatkaan – ”noodeiksi”. Jatkan näiden termien käyttöä.

Noodit-1

Kuva 2. PARAM-O:n noodivalikoima on pituudestaan huolimatta suppea. Jostain syystä erilaiset transformaatiot on toteutettu monella rinnakkaisella tavalla.

Lauteet

Luodaan Laude-objekti, jonka parametrit ovat: leveys, syvyys, yläpinnan korkeusasema, laudelaudan leveys ja paksuus, raon vähimmäismitta, runkopalkkien leveys ja korkeus, yksi yhteinen materiaali sekä valinnaisen etulaudan paksuus ja korkeus.

Parametrit-1

Kuva 3. Ohjelmoinnin alussa on hyvä miettiä tarvittavat parametrit. Tässä ne on tuotu piirretystä luonnoksesta.

Lisäksi päätän, että runkopalkit ovat aina laudelautojen päissä ja reunimmaisten laudelautojen viereen jää samanlainen rako kuin lautojen väliin. Tämä kappale on samalla esimerkki, miten voi kuvata ohjelmoijalle tarvitsemansa GDL-objektin. Piirretty luonnos täydentää vielä erinomaisesti.

Muutaman tunnin ähellyksen jälkeen sain lauteet valmiiksi. Ajasta puolet tai hieman enemmänkin voi laskea PARAM-O:hon tutustumiseen ja asioiden selvittämiseen. Valitettavasti on todettava, ettei kuvattua Laude-objektia pysty PARAM-O:lla tekemään.

Laudenuudeli

Kuva 4. Laude-objekti PARAM-O:lla näyttää tältä. PARAM-O-nuudelin keittämiseen kuluu tovi, eikä noodien sisään näe, joten kokonaiskuvaa on mahdoton saada. Etulaudan olemassaolon parametrisointi ei onnistu, joten se on vakio. Totuusarvojen käyttömahdollisuus yhtälöissä (1 tai 0 kuten GDL-ohjelmassa) ratkaisisi ongelman.

Ongelmaksi muodostui etulaudan ehdollisuus. PARAM-O ei sisällä minkäänlaisia ehdollisia rakenteita. Kuvatun lauteen tekeminen onnistuu, jos hyväksytään, että ehdollinen etulauta tulee päämittojen ulkopuolelle, jolloin se siis näkyy tai on piilossa. Ulkomitat säilyttävä rakenne, jossa laudelaudat olisivat lyhentyneet ja etummainen runkopalkki siirtynyt etulaudan paksuuden verran, on mahdoton.

Kekseliäämpiä lukijoita masentaakseni voin kertoa, ettei totuusarvomuuttujia pysty käyttämään yhtälöissä – ei edes sen vertaa, että totuusarvon saisi muutettua käänteiseksi. Pelkästään sillä pystyisi kiertämään ongelman rakentamalla kahdet lauteet: toiset etulaudalla ja toiset ilman. Sitten olisin vain kätkenyt toisen ja näyttänyt toisen.

Monenlaista keskeneräisyyttä

Pieni kauneusvirhe PARAM-O:n esikatselussa on objektin esittäminen varjostettuna ilman reunaviivoja. Nuudelin luettavuutta lisäisi huomattavasti, jos noodin parametrien arvot, kuten näkyvyys, heijastuisivat noodin ilmiasussa samaan tapaan kuin Grasshopperissa. Syötetyt numeroarvot voisivat näkyä molemmissa laajennuksissa.

PARAM-O:n käyttöliittymä toimii metreillä ja kahdella desimaalilla, joten lauteita ohjelmoitaessa ei millejä saanut näkyviin, vaikka ne oikein olivatkin. 3D-esikatselun pyörittely on toteutettu eri napeilla kuin Archicadissä. Tämä epästandardisuus näissä kahdessa ja kaikissa muissakin 3D-ohjelmissa on kiusallista useiden ohjelmistojen sujuvan käytön kannalta.

PARAM-O:lla ei voi ohjelmoida 2D-symbolia, joten esimerkiksi tämä Laude-objekti näyttää aika pahalta 1:50 ja suuremmissa kuvissa. PARAM-O on kohtuullisen helppokäyttöinen ja ymmärrettävä, mutta siitä huolimatta dokumentaatio Graphisoftin Help Centerissä on kömpelö, hidaskäyttöinen ja sisällöltään suppea.

Laudesymboli-1

Kuva 5. PARAM-O käyttää 2D-symbolin luomiseen ”PROJECT2 3, 270, 2” -käskyä. Symbolia ei siis ohjelmoida, vaan se on 3D-projektio, joka on hidas laskea ja sisältää paljon ”turhia” viivoja.

Jääkö tämäkin kesken?

PARAM-O toimii toistaiseksi vain Windows-ympäristössä. PARAM-O on ”technology preview” eli uuden teknologian esittelyä. Siitä näkökulmasta tässä esitetyn kritiikin voi tulkita myös suositelluiksi jatkokehitysaskeliksi. PARAM-O toimi testissä luotettavasti – ei kaatunut tai kaatanut Archicadiä, kuten Grasshopper-laajennus alkuaikoina teki sangen helposti.

En koe, että PARAM-O tarjoaisi nykyisellään lisäarvoa. Jos noodeja tulee merkittävästi lisää, ja ne tarjoavat GDL:stä eroavia rakenteita, saattaa PARAM-O tarjota mahdollisuuden Grasshopper-logiikalla toimivien GDL-objektien tuotantoon. Nykyisellään PARAM-O on leikkikalu, jonka kaikkia puutteita en tässä luetellut.

GDL-ohjelma-parametrit

Kuva 6. GDL-lauteen teko kesti minulta alle 15 minuuttia, ja lisäksi etulauta on valinnainen – objekti on siis toiminnallisesti parempi. Koodi on 22 riviä lyhyt, ja sen näkee kerralla. Ilman kommenttejakin se on GDL-lukutaitoisen helposti ymmärrettävissä. PARAM-O loi Lauteesta 130 riviä mekaanista, vaikealukuista GDL:ää.

Archicadin Grasshopper-laajennus on huomattavasti kehittyneempi, mutta siinäkin on vielä oleellisia puutteita, jotka rajoittavat sen soveltamista. Eräänlainen 20/80 % -ilmiö: 20 % lisää ominaisuuksia antaisi 80 % lisää sovellusmahdollisuuksia. PARAM-O:sta voi tässä vaiheessa heittää arvion, että 80 % lisää ominaisuuksia antaisi vain 20 % lisää sovellusmahdollisuuksia.

Vilpitön toiveeni on, että Graphisoft kohdentaisi rajalliset kehittäjäresurssinsa ensin Grasshopper-laajennuksen loppuunsaattamiseen. Sille on kysyntää, ja se ratkaisee todellisia suunnitteluongelmia. PARAM-O tekee tässä vaiheessa yksinkertaisesta sekavaa.

Jatka keskustelua aiheesta

Copyrights © Nordic BIM Group. Kaikki oikeudet pidätetään.