Video aiheesta
Aiheesta löytyy webinaarivideo Vertex Systems Oy:n internet-sivuilta:
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:
{ "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.