Suunnitteluautomaattien ulkoisen käyttöliittymän periaate
Video aiheesta
Aiheesta löytyy webinaarivideo Vertex Systems Oy:n internet-sivuilta:
Suunnitteluautomaattien ulkoisen käyttöliittymän periaate
Tämä teksti on generoitu videon litteroinnin perusteella
Suunnitteluautomaattien ulkoinen käyttöliittymä – periaate lyhyesti
Tässä artikkelissa kuvataan, miten Vertex G4:n mittaohjautuvaa 3D-mallia voidaan ohjata ulkoisella käyttöliittymällä – eli Vertex G4:n ulkopuolelle rakennetulla ”ohjauspaneelilla”. Artikkelin luettuasi ymmärrät perusperiaatteen ja sen, mitä osia tarvitaan, jotta ratkaisu toimii.
Ohessa kaaviossa, jossa näkyy Vertex G4:n mittataulukolla varustettujen 3d-mallin erilaiset ohjausmenetelmät:

1. Perusidea
Perusajatus on:
3D-malli ja sen suunnitteluautomaatio ovat Vertex G4:ssä, mutta käyttäjä antaa ohjausparametrit (muuttujat) ulkoisen käyttöliittymän kautta.
Käytännössä tämä tarkoittaa:
Käyttäjä tekee valinnat ulkoisessa käyttöliittymässä
– esimerkiksi Excel-taulukossa, Pythonilla tehdyssä ohjelmassa tai selaimessa avautuvalla web-sivulla.Ulkoinen käyttöliittymä tallentaa valinnat tiedostoon, esimerkiksi:
taskfile.txt(komentotiedosto)*.json(JSON-tiedosto, ”Jason”)
Kun Vertex G4:ssä avataan malli, mittataulukon Python-koodi:
lukee tuon tiedoston
hakee siitä muuttujien arvot
asettaa ne mittataulukkoon
ja päivittää mallin (skaalaa / konfiguroi mallin valintojen mukaan).
Suunnitteluautomaation ”äly” (ehtolauseet, osavalinnat, geometriaehdot jne.) pysyy siis edelleen Vertex G4:n mittataulukon komentotiedostossa. Ulkoinen käyttöliittymä huolehtii vain siitä, että käyttäjän valitsemat arvot päätyvät mallille luettavaan muotoon.
2. Arkkitehtuuri – roolit ja vastuut
Kokonaisuus jakautuu kolmeen selkeään osaan:
Ulkoinen käyttöliittymä (UI)
Excel, Python-ohjelma, web-sivu tms.
Kysyy käyttäjältä tarvittavat muuttujat (pituudet, leveydet, tyypit, valinnat, vaihtoehdot jne.).
Tallentaa ne tiedostoon sovittuun paikkaan (esim. verkko- tai paikalliskansio).
Tietojen siirtomuoto (välikerros)
Yleinen ratkaisu:
Excel-pohjassa:
taskfile.txt(tekstimuotoinen komentotiedosto)Ohjelmoiduissa UI-ratkaisuissa:
*.json(JSON-tiedosto)
Tälle tiedostolle sovitaan:
sijainti (kansio)
nimi / nimeämiskäytäntö
rakenne (mitä muuttujia tallennetaan ja millä nimillä).
Vertex G4 + mittataulukon Python-koodi
Malli avataan Vertex G4:ssä.
Mittataulukossa oleva Python-koodi:
lukee taskfile- tai JSON-tiedoston
poimii muuttujien arvot
syöttää ne mittataulukon muuttujille
ajaa suunnitteluautomaation (komentotiedosto) ja päivittää mallin.
3. Excel-pohjainen ulkoinen käyttöliittymä
Excel-pohjainen ratkaisu on perinteinen ja monelle tuttu:
Excel-pohja:
Vertex Systems toimittaa valmiin pohjan, jonka voi ladata ja muokata omiin tarpeisiin.
Käyttäjä syöttää arvot soluihin (pituudet, tyypit, valinnat).
”Generoi taskfile” -painike:
Pohjassa on makro / painike, joka:
lukee solujen arvot
muodostaa niistä
taskfile.txt-tiedoston.
Käyttö Vertex G4:n kanssa:
Ensin avataan mittaohjautuva malli Vertex G4:ssä.
Mallin kautta avataan Excel-pohja.
Excelillä generoidaan
taskfile.txt.Mallin mittataulukon komentotiedosto lukee
taskfile.txt:n ja päivittää mallin.
Huom: Excel-käyttöliittymä on sidottu malliin: se avataan mallista ja toimii sen yhteydessä.
4. Python- ja web-käyttöliittymät (JSON-malli)
Uudempi ja joustavampi tapa on rakentaa käyttöliittymä ohjelmointikielellä tai web-teknologioilla ja käyttää JSON-tiedostoa tiedonsiirrossa:
4.1 Python-pohjainen käyttöliittymä
Ulkoinen ohjelma (esim. Python + graafinen käyttöliittymä):
voi sijaita täysin Vertex G4:n ulkopuolella
kysyy käyttäjältä samat dimensiot ja valinnat kuin Excel-pohja.
Ohjelma tallentaa arvot JSON-tiedostoon, esimerkiksi:
CODE{ "A_Pituus": 2500, "B_Leveys": 1200, "Tyyppi": 2 }JSON-tiedosto sijoitetaan sovittuun hakemistoon (esim. projektikansio).
4.2 Web-käyttöliittymä (selain)
Käyttöliittymä toteutetaan web-sivuna (HTML/JavaScript).
Käyttäjä avaa sivun selaimessa (esim. intranet-sivu).
Sivu:
esittää lomakkeen (pituudet, valinnat jne.)
tallentaa valinnat JSON-tiedostoon palvelimelle / verkkoasemalle.
4.3 Vertex G4:n rooli JSON-mallissa
Kun 3D-malli avataan Vertex G4:ssä:
Mittataulukon Python-koodi:
lukee määritellystä kansiosta JSON-tiedoston.
Koodi poimii JSON:sta muuttujien arvot.
Arvot asetetaan mittataulukkoon.
Suunnitteluautomaation komentotiedosto ajaa mallin uusiksi muuttujien mukaisesti.
Tärkeää: Ulkoinen käyttöliittymä (Python, web) on täysin G4:n ulkopuolinen – sitä voidaan käyttää myös silloin, kun mallia ei ole vielä avattu. Varsinainen ”äly” ja mallin skaalaus tehdään silti G4:n sisällä.
5. Miksi JSON?
Litteroinnissa korostetaan JSON-muodon etuja:
Se on yksinkertainen tekstimuotoinen formaatti, helppo lukea ja kirjoittaa.
Se on yleisesti käytetty (JavaScriptin ”oma” dataformaatti), joten:
sitä tukevat käytännössä kaikki ohjelmointikielet
se sopii erinomaisesti ulkoisen ohjelman ja Vertex G4:n väliseksi rajapinnaksi.
JSON-tiedosto on helppo tarkistaa ja testata:
voit avata sen tavallisella tekstieditorilla ja nähdä suoraan mitä arvoja siirtyy.
Siksi JSON on suositeltu tapa, kun tehdään Python- tai web-pohjaisia ulkoisia käyttöliittymiä suunnitteluautomaateille.
6. Yhteenveto – miten periaate toimii käytännössä?
Valitse käyttöliittymätekniikka
Excel-pohja (perinteinen, mallista avattava)
Python-/muu ohjelmointikieli (itsenäinen sovellus)
Web-sivu (selainpohjainen UI).
Suunnittele mitä muuttujia käyttäjä tarvitsee
esim. A_pituus, leveys, tyyppi, lisävarusteet.
Toteuta ulkoinen käyttöliittymä
lomake kenttineen ja valintoineen
tallennus joko
taskfile.txt- tai JSON-muotoon.
Laajenna Vertex G4:n mittataulukkoa
lisää Python-koodi, joka:
lukee taskfile/JSON-tiedoston
asettaa muuttujien arvot mittataulukkoon.
Anna suunnitteluautomaation hoitaa loput
komentotiedosto käyttää päivitettyjä arvoja
malli skaalautuu ja osat/variantit valikoituvat ehtojen mukaan.
Kun nämä palaset ovat paikoillaan, ulkoinen käyttöliittymä toimii käytännössä vain ”etupaneelina”, jolla käyttäjä tekee valinnat. Varsinainen 3D-mallin äly ja logiikka pysyy Vertex G4:n mittataulukossa, jolloin:
sama malli voidaan kytkeä useaan eri ulkoiseen käyttöliittymään (Excel, Python, web)
käyttöliittymää voidaan uudistaa ilman, että itse 3D-mallin suunnitteluautomaatiota tarvitsee kirjoittaa alusta uudelleen.