Skip to main content
Skip table of contents

Python-ohjelmoinnin käyttö parametrisen 3D-mallin ohjaamisessa

Python-ohjelmoinnin käyttö parametrisen 3D-mallin ohjaamisessa löytyy vinkkivideo Vertex Systems Oy:n Youtube-kanavalta. Klikkaa alla olevaa linkkiä.

(250) Python-ohjelmoinnin käyttö parametrisen 3D-mallin ohjaamisessa - YouTube

Tämä teksti on generoitu videon litteroinnin perusteella

Python-ohjelmoinnin käyttö parametrisen 3D-mallin ohjaamisessa Vertex G4:ssä

Tässä artikkelissa käydään läpi, miten Vertex G4:n parametrinen 3D-malli voidaan kytkeä Python-ohjelmaan niin, että Python laskee ja asettaa mallin mitat automaattisesti. Artikkelin lopussa sinulla on kokonaiskuva siitä, miten:

  • 3D-kokoonpano muutetaan suunnitteluautomaattimalliksi

  • mittamuuttujia ohjataan Python-koodilla

  • Python-ohjelma liitetään suunnitteluautomaattiin ja/tai kokoonpanon pikavalikkoon

Ajatuksena on, että loppukäyttäjä näkee vain selkeän valinnan (esimerkiksi renkaan halkaisija) ja Python huolehtii taustalla siitä, että kaikki tarvittavat mitat päivittyvät oikein. Käyttäjän ei tarvitse avata eikä ymmärtää mittataulukkoa.


1. Perusidea: Python suunnitteluautomaatin “aivona”

Vertex G4:n parametrisessa mallissa mitat ovat mittamuuttujia (mittataulukossa). Tyypillisesti näitä ohjataan suoraan:

  • antamalla arvoja suunnitteluautomaatin optioihin

  • kirjoittamalla kaavoja suoraan mittataulukkoon

Monimutkaisemmissa tapauksissa kaavoista tulee helposti vaikealukuisia. Tällöin vaihtoehto on siirtää laskentalogiikka Python-ohjelmaan:

  1. Python lukee käyttäjän valinnat (esim. renkaan halkaisija, leveys, tms.).

  2. Python laskee niiden perusteella tarvittavat mitat (esim. haarukan korkeus ja leveys).

  3. Python kirjoittaa lasketut arvot takaisin mallin mittamuuttujiin.

  4. Vertex päivittää 3D-mallin automaattisesti.

Pienellä harjoittelulla kuka tahansa suunnittelija pääsee tähän kiinni ja pystyy tekemään yksinkertaisia, mutta erittäin hyödyllisiä suunnitteluautomaattitoimintoja.


2. Lähtökohdat: parametrinen malli ja suunnitteluautomaatti

Jotta Pythonilla on jotain, mitä ohjata, tarvitset:

  1. Parametrisen kokoonpanomallin

    • Kokoonpanon mitat on määritelty mittamuuttujina (esim. korkeus, leveys, pituus tai renkaan päämitat).

    • Mieluiten taustalla on mittataulukko, josta Vertex lukee arvot.

  2. Suunnitteluautomaattimalliksi muuttaminen
    Kokoonpano muutetaan suunnitteluautomaattimalliksi, jolloin:

    • malliin voidaan määritellä optioita (valintoja)

    • malliin voidaan liittää komentoja, mm. Python-ohjelman ajaminen

  3. Python-ympäristö työasemalla

    • Tarvitset Python-tulkin (tai Vertexin toimittaman Python-ympäristön).

    • Python-ohjelmat tallennetaan sovittuun hakemistoon, josta Vertex osaa niitä kutsua.


3. Esimerkki: haarukan mitoitus renkaan halkaisijan mukaan

Konkretisoidaan idea yksinkertaisella esimerkillä:

  • Loppukäyttäjä syöttää renkaan halkaisijan (esim. 26", 27.5", 29").

  • Python laskee sen perusteella:

    • haarukan korkeuden

    • haarukan leveyden (napaleveys / renkaan leveys)

  • Python kirjoittaa arvot mittamuuttujiin, esimerkiksi:

    • korkeus

    • haarukan_leveys

Tämän jälkeen Vertex päivittää 3D-mallin: haarukan korkeus ja leveys kasvavat automaattisesti, kun renkaan halkaisija kasvaa.


4. Python-ohjelman perusidea

Python-ohjelma toimii tyypillisesti seuraavasti:

  1. Kysyy tarvittavat syöttötiedot

    • joko:

      • komentoikkunassa / terminaalissa

      • tai Windowsin kyselyikkunalla (dialogi), jolloin käyttäjä vain kirjoittaa arvon normaaliin syöttökenttään

  2. Laskee uudet mittamuuttujien arvot

    • esim.

      • haarukan korkeus = (renkaan halkaisija millimetreinä / 2) + marginaali

      • haarukan leveys = renkaan leveys + pieni välys

  3. Kirjoittaa tulokset Vertexin käyttämään mittataulukkoon

    • Mittataulukko on se paikka, jossa mallin parametrit asuvat.

    • Python päivittää taulukon arvot; Vertex lukee ne ja päivittää 3D-mallin.

  4. Tarvittaessa käsittelee virheet

    • esimerkiksi try–rakenteella: jos käyttäjä kirjoittaa kirjaimia numeron sijaan, ohjelma osaa antaa virheilmoituksen eikä kaadu.

Vinkki: Luennoitsija käytti esimerkissä myös ChatGPT:tä apuna Python-koodin kirjoittamiseen. Voit antaa luonnollisella kielellä ohjeen (“kirjoita Python-ohjelma, joka kysyy renkaan halkaisijan ja laskee haarukan korkeuden”) ja muokata saatua koodia Vertex-ympäristöösi sopivaksi.


5. Ohjelman kehittäminen ja testaaminen

Yleinen työskentelytapa on:

  1. Aloita yksinkertaisella muuttujalla

    • Esimerkiksi koodi, joka vain asettaa korkeus = 460.

    • Tällä varmistat, että Python-ohjelma ylipäänsä toimii ja yhteys Vertexin mittataulukkoon on kunnossa.

  2. Lisää laskentaa askel askeleelta

    • Seuraavaksi laske korkeus kaavalla, esim.:

      • korkeus = (renkaan_halkaisija_mm / 2) + jokin_marginaali

    • Lisää muut tarvittavat mitat samaan tapaan.

  3. Lisää syöttödialogi

    • Muuta koodi niin, että halkaisija ja/tai leveys kysytään käyttäjältä Windowsin dialogilla.

    • Tällöin käyttäjä näkee vain selkeän kysymysruudun (“Anna renkaan halkaisija (mm)”) eikä tarvitse tietää taustalla olevasta koodista mitään.

  4. Yhdistä lopuksi Vertexiin

    • Kun laskenta toimii, kytket Python-ohjelman suunnitteluautomaattiin ja kokoonpanon valikkoon (ks. seuraava luku).


6. Python-ohjelman liittäminen suunnitteluautomaattiin

6.1 Command list – komentolista suunnitteluautomaattia varten

Suunnitteluautomaattiominaisuuksien rinnalle on tuotu Command list –lista. Sen idea:

  • listaan voidaan lisätä komentoja, joita suoritetaan, kun:

    • suunnitteluautomaatin optio valitaan

    • tai kun malli ajetaan tietyllä tavalla

Yksi näistä komennoista voi olla Python-ohjelman suoritus.

Tyypillinen eteneminen:

  1. Avaa suunnitteluautomaattimalli.

  2. Mene suunnitteluautomaattioptioihin.

  3. Lisää haluttuun optioon komento komentolistaan.

  4. Määritä komentoon ajettava Python-ohjelma (esim. c:\polku\renkaan_mitoitus.py).

Kun käyttäjä valitsee kyseisen option, Vertex:

  • suorittaa komentolistaan määritellyn Python-ohjelman

  • ohjelma laskee uudet arvot

  • 3D-malli päivittyy suunnitteluautomaattimallin logiikan mukaisesti

6.2 Pythonin ajaminen kokoonpanon pikavalikosta

Python-ohjelmaa voi ajaa myös suoraan kokoonpanosta:

  1. Avaa parametrinen kokoonpano Vertex G4:ssä.

  2. Napsauta pääkokoonpanoa hiiren oikealla painikkeella.

  3. Valitse Suorita pythonohjelma

Tämän jälkeen:

  • ohjelma käynnistyy

  • mahdollinen dialogi kysyy käyttäjältä tarvittavat arvot (esim. renkaan halkaisija)

  • ohjelma kirjoittaa lasketut arvot mittataulukkoon

  • malli varioituu – ilman että käyttäjän tarvitsee avata mittataulukkoa tai koodia

Juuri tähän viitattiin toteamuksella, että mallia voidaan ajaa vain klikkaamalla – eikä mittataulukosta tarvitse tietää välttämättä yhtään mitään.


7. Tiedostonhallinta ja command listin output

Esimerkeissä mainittiin myös, että:

  • komennot voivat kirjoittaa tekstitiedostoja, esimerkiksi Download-kansioon

  • näitä voidaan käyttää lokitukseen, törmäystarkastuksen tuloksiin yms. jatkokehitystä varten

Pythonin ja command listin yhdistelmällä voit siis:

  • varioida 3D-mallia

  • ajaa muita automaattisia tarkastuksia

  • tallentaa tuloksia tiedostoiksi myöhempää analyysiä varten

Tämä puoli on vielä kehittyvä, mutta perusajatus on, että sama komentolista voi sisältää sekä Vertexin omia suunnitteluautomaattikomentoja että Python-komentoja.


8. Hyvät käytännöt

Kun otat Python-ohjauksen käyttöön, huomioi ainakin nämä:

  • Aloita pienestä
    Tee ensin yksi muuttuja (esim. korkeus), joka on helppo testata. Laajenna vasta, kun perusvirta toimii.

  • Nimeä muuttujat selkeästi
    Käytä samoja nimiä mittataulukossa ja Python-koodissa – virheet vähenevät.

  • Käytä virheenkäsittelyä
    Lisää try–rakenteita käyttäjän syötteiden ympärille. Jos käyttäjä kirjoittaa “26tuumaa” eikä numeroa, ohjelma voi pyytää uutta syötettä kaatumatta.

  • Dokumentoi logiikka
    Kirjoita kommentteihin, mitä mikäkin kaava tekee. Tämä helpottaa ylläpitoa ja muutoksia myöhemmin.

  • Hyödynnä apuvälineitä
    Jos Python ei ole entuudestaan tuttu, hyödynnä esimerkiksi ChatGPT:tä luonnoksen kirjoittamiseen ja muokkaa sitä sitten Vertex-ympäristöön sopivaksi.


9. Yhteenveto

Python-ohjelmointi tuo Vertex G4:n parametriseen mallinnukseen erittäin joustavan “älykerroksen”:

  • Mitat ja säännöt voidaan kuvata selkeäseen Python-koodiin kaavojen sijaan.

  • Käyttäjä näkee vain yksinkertaiset valinnat tai dialogit.

  • Mittataulukon arvot päivittyvät automaattisesti, ja 3D-malli varioituu sen mukaisesti.

  • Suunnitteluautomaattien command list ja kokoonpanon Suorita pythonohjelma -toiminto toimivat kytkimenä Vertexin ja Pythonin välillä.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.