ARCHICAD: GDL ILMUTAMINE: Arhitekti Ainulaadsete Väljakutsete Programmeerimine

ARCHICAD: GDL ILMUTAMINE: Arhitekti Ainulaadsete Väljakutsete Programmeerimine
ARCHICAD: GDL ILMUTAMINE: Arhitekti Ainulaadsete Väljakutsete Programmeerimine

Video: ARCHICAD: GDL ILMUTAMINE: Arhitekti Ainulaadsete Väljakutsete Programmeerimine

Video: ARCHICAD: GDL ILMUTAMINE: Arhitekti Ainulaadsete Väljakutsete Programmeerimine
Video: Язык GDL в ARCHICAD 2024, Aprill
Anonim

Selle ekspertmaterjaliga jätkatakse artiklite sarja "ARCHICAD: taasavastamine", mis algas 2016. aasta detsembris Vladimir Savitski artikliga "Konstruktsioonide loomine ja tööjooniste väljavõtmine mudelist" ning seejärel jätkus Svetlana Kravchenko väljaannetega "ARCHICAD": Taasavastamine. Visualiseerimine - uued võimalused arhitektile "ja Aleksander Aništšenko" MEESKOND: tõhus meeskonnatöö samm-sammult ". Tsükkel on loodud selleks, et aidata kasutajatel ARCHICADi potentsiaal täielikult ära kasutada®… Palusime arhitektidel jagada oma isiklikke kogemusi programmi kasutamisest mittestandardsete lähenemisviiside, vähe uuritud funktsioonide ja uute funktsioonide kasutamisel, millest paljud kasutajad ei pruugi isegi teadlikud olla. Rakenduse ARCHICAD arendajatena oleme kindlad, et ainult toote põhjalik tundmine võib avaldada selle täieliku väärtuse ning mõjutada otsustavalt disaineri töö tulemusi, kiirust ja kvaliteeti. Kas eelistate ka "lugemata radu"? Kas teil on ARCHICADiga töötamisel ebastandardsete lähenemisviiside kasutamise kogemus, kasutage regulaarselt mitte rakenduse kõige kuulsamaid funktsioone? Kutsume rõõmuga uusi autoreid koostööle: [email protected]. Praktiseeriv arhitekt Svetlana Kravtšenko teatab:

suumimine
suumimine

Kindlasti on paljud teist kuulnud GDL-ist ARCHICADis, kuid mitte kõik ei tea ikkagi, kuidas seda töös kasutada. Arvestades selle funktsiooni uskumatut kasulikkust, samuti paljusid küsimusi pärast esimest sel teemal korraldatud veebiseminari, otsustasin täpsemalt uurida, kuidas ka kõige väiksemad teadmised sellest võivad igapäevases töös palju aidata. arhitekt.

Alustame põhitõdedest GDL (Geometric Description Language) on BASIC-laadne programmeerimiskeel, mis on loodud töötama ARCHICAD-keskkonnas. See kirjeldab 3D tahkeid kereid (nagu uksed, aknad, mööbel) ja 2D sümboleid põhiplaani aknas. Neid objekte nimetatakse raamatukogu funktsioonideks.

Neile, kes on programmeerimisega vähemalt pisut kursis, pole selle keele valdamine keeruline. Piisava soovi korral jääb GDL-i uurimine siiski üsna inimese võimuses, kes on sellest keskkonnast kaugel. Iga arhitekt on omal ajal õppinud geomeetriat ja kirjeldavat geomeetriat, tal on suurepärane mahuline mõtlemine ja see on juba pool edu. Te ei pea kohe proovima kirjutada keerukaid objekte, tasub alustada geomeetriliste põhikujude ja vormidega; teiste raamatukogu üksuste skripte uurides saab palju teavet. Noh, peamine teabeallikas on GDL-i käsiraamat, millele pääseb ligi ARCHICADi enda menüü Abi kaudu. Niisiis, miks võib arhitekt saada kasu GDL-st? Näiteks erinevalt Grasshopperist, millega saate luua keerukaid struktuure, on GDL lihtsalt hädavajalik nii erinevate markerite ja tähelepanulaiendite kirjutamiseks kui ka muude raamatukogu funktsioonide või tööriistade jaoks spetsiaalsete komponentide loomiseks. Üks minu esimesi GDL-i rakendusi minu töös oli spetsiaalse paneeli ukselehe loomine, mille suurust muutes ei mõõtkava igale poole, vaid muutis ainult paneeli mõõtmeid. Lokkis raami paksus ja rakmete laius jäid muutumatuks. Samuti soovivad arhitektid väga sageli lisada tavaliste raamatukogude olemasolevatele objektidele mõned lihtsad funktsioonid - see on peamine põhjus, miks nad hakkavad GDL-i süvenema. Muidugi ei ole GDL-i tundmine ülitähtis ja paljusid neist ülesannetest saab täita tavaliste tööriistadega. Näiteks võite ehitada plaatidega täidiseid ja salvestada need spetsiaalse ukselehena. Kui teil on ainult mõned neist mittestandardsetest ustest, siis on see veelgi kiirem. Aga kui teie projektis on töö käigus palju sarnaseid erineva suurusega uksi ja nende laius muutub, siis spetsiaalse paneeli kirjutamine GDL-is kiirendab ja lihtsustab tööd oluliselt. Geomeetriline kirjeldus tähendab, et mis tahes võimalikest kujunditest saab teksti kirjutada vastavalt mõõtudele või koordinaatidele. 3D-skripti jaoks on ruumide põhikujude jaoks käskude plokk, näiteks: - BLOKK ja BRIKK - kolmemõõtmeline rööptahukas, mille alguspunkt on koordinaatsüsteemi punktis 0 PLOKK a, b, c BRIKK a, b, c

suumimine
suumimine

- SILIN - silinder piki Z-telge kõrguse h ja raadiusega r SILIN h, r

- KERA - kuul, mille keskpunkt on alguspunkt ja raadius r KERA r

suumimine
suumimine

Ellipsi ja koonust kirjeldatakse sarnaselt. Järgmine arvude plokk on juba keerulisem - need on erinevad prismad. Neid kirjeldab punktkoordinaatide kogum. Lihtsaim prisma määratakse punktide arvu (n), kõrguse (h) ja kõigi punktide koordinaatide järjekorra alusel. PRISM n, h, x1, y1, … xn, yn

Prismasid on palju. Järgmine vaade PRISM_, võimaldab teil näidata punktide koordinaatidele olekukoode, mis määravad nägude ja servade nähtavuse ning võimaldavad luua ka kumeraid ja aukudega prismasid (vt teatmeteose jaotist Olekukoodid). Teine liik, BPRISM_, loob Y-telje ümber keerutatud prisma. FPRISM_ ehitab ülemisele küljele viilu või fileega prisma.

suumimine
suumimine

Seal on mitu käsku, mis kirjeldavad keerukamaid joonjoonel põhinevaid kujundeid: PURUSTAMINE, PÜRAMIID, PÖÖRDUMINE, VALITUD, PÜHKIMINE, TORU, SÜNNID, MASS. Nende kirjelduse koos näidetega leiate viitest. 2D-skripti puhul kirjeldatakse kujundeid teiste käskudega: joon, ring, ristkülik, joonjoon, spline. Kuid saate 3D-skriptist projekti registreerimise käsu ka registreerida.

2D- või 3D-kujundite loomine on ainult osa GDL-i funktsionaalsusest. Kui vajate lihtsalt lauda, siis on seda lihtsam ARCHICADi enda tööriistadega ehitada. Objekt kirjutatakse juhul, kui on vaja mingisugust parameetrilisust: võime valida erinevat tüüpi lauajalgu, jalgade arvu, muuta laua suurust, säilitades ülejäänud mõõtmed, arvutada saematerjal selle valmistamiseks, kaal ja maksumus. Objekt ei pruugi sisaldada üldse mingit geomeetriat, vaid teha ainult arvutusi. Selleks kasutatakse ka juhtimisklausleid (Control Operators), näiteks tsükleid, tingimuslauseid, mis viitavad konkreetsele kohale koodis (alamprogramm). Parim on tutvuda tsüklite ja tingimustega kohe alguses - neid kasutatakse sageli. Nii et kõigil allpool toodud näidetel on tingimuslikud avaldused. NÄIDE # 1 - objekti pööramine Disainerid soovivad sageli objekti pööratavaks muuta. Selle lihtsa näite abil vaatame teegiüksuse struktuuri ja ka GDL-i objektiredaktori peaaknaid. Projektiruumis asuva objekti avamiseks (kui arendaja pole sellele parooli pannud), peate selle valima ja vajutama klahvikombinatsiooni Ctrl + Shift + O. Teine võimalus on kasutada menüüd Fail> Raamatukogud ja objektid> Ava objekt. Kui sel hetkel pole ühtegi objekti valitud, avaneb objekti valimise aken. Lisame pöörlemisparameetrid näiteks restirestile (joonis 1).

suumimine
suumimine

Niisiis, oleme avanud GDL-i objektiredaktori akna (joonis 2). Vasakus ülaosas on aken erinevate vaadete vaatamiseks, nagu tavalises objekti parameetrite aknas; isegi vasakul on nupud vaate valimiseks - plaan, kõrgus, 3D-aken ja eelvaade. Allpool on nupud parameetrite tabelite, andmeloendite ja skriptide avamiseks. Skripte saab avada kahel viisil: klõpsake nupul skripti nimega - avage samas aknas, klõpsake aknaikooniga paremal asuvat nuppu - skript avaneb eraldi aknas. See võib olla kasulik, kui soovite korraga näha erinevaid skripte (joonis 3).

suumimine
suumimine

Mis tahes skripti akna ülaosas on väga vajalik nupp Kontrolli: kui klõpsate, küsib redaktor teid, kui skriptis on vigu. Sõnum sisaldab tõrke põhjust ja rea numbrit, kust viga leiti. Jaotises "Üksikasjad" saate valida objekti alamtüübi: kohandatud ukseleht, ukseava, kardinaseina raam ja nii edasi. Niisiis ilmuvad nende elementide valimiseks vastavasse aknasse spetsiaalsed objektid (pliiats, lõuend, raam). 2D tüübi valimisel pole objektil 3D-geomeetria jaoks aknaid. Seal saate valida ka erinevate markerite tüübid - sõlm, sektsioonid, liidrite pealdised, tsoonid; need ilmuvad ka nende vastavatesse tööriistadesse. Selles jaotises saate täita objekti kirjelduse ja valida parooli. Edasi - "Parameetrid", kus kõik andmed, mida selles objektis kasutatakse ja mida saab projektiga töötades muuta, esitatakse tabeli kujul. Siin peame lisama pöörete parameetrid, mida hiljem kasutame.

suumimine
suumimine

Vajutage tabeli kohal asuvat nuppu Uus (joonis 4). Ilmub uus rida, kus peate veerud täitma. Esimene neist veergudest on muutuja. Siia kirjutame muutuja nime, mida kasutatakse skriptides ladina keeles ja tühikuteta. Peate selle nimetama, nii et seda oleks lihtne meelde jätta ja samal ajal oleks lihtne mõista, mille eest see muutuja vastutab. Meie puhul peame looma kaks muutujat pöördenurkade väärtusele piki X- ja Y-telge (objekti saab igal juhul otse plaanis pöörata ümber Z-telje). Otsustasin neile nimetada nurk_x ja nurk_y. Järgmises veerus peate valima andmetüübi. Valikud on esitatud tabelis 1.

suumimine
suumimine

Viimast kahte tüüpi ei kasutata objekti ehitamisel, vaid need on vajalikud loendi suuruse selguse ja korrastatuse saavutamiseks objekti parameetrite aknas. Vajame nurka - see on tabeli teine ikoon. Kolmas veerg on Nimi. Siin saate kirjutada ilma reegliteta mis tahes keeles, mida täpselt tahame hiljem objekti parameetrite aknas näha. Ja viimane veerg on väärtus. Nüüd võite siia jätta 0: see väärtus muutub igal ajal nii skriptis kui ka objekti enda parameetrites. Joonis 2 näitab, kuidas kaks uut valikut GDL-i objektiredaktori aknas välja näevad. 5. Liini teisaldamiseks sobivasse kohta kasutage rea alguses olevaid nooli.

suumimine
suumimine

Seejärel peate objekti uue nime alla salvestama, kuna standardkogu on kõvakodeeritud konteinerisse ja te ei saa selles olevaid objekte üle kirjutada. Objekti parameetrite aken näeb nüüd välja selline (joonis 6).

suumimine
suumimine

On kaks uut parameetrit, mille väärtust saab igal ajal muuta. Kuid nüüd ei juhtu midagi, sest nende abil pole veel ühtegi käsku kirjutatud. Nüüd peate avama 3D-skripti akna. Siin on täielik kirjeldus selle kohta, kuidas 3D-mudelit koostada etteantud parameetrite põhjal. Lisaks saab objektile pesastada erinevaid makrosid. Enne kõiki konstruktsioone peate pöörama koordinaatide süsteemi, kuhu objekt ehitatakse. Siinkohal on oluline mõista järgmist loogikat: kõik pöörded, liikumised ja skaleerimine toimuvad teisiti kui töötades ARCHICADis endas. Me ei võta elementi ega pöörle seda, vaid pöörame globaalset koordinaatsüsteemi (pärast selle muutmist muutub see lokaalseks) ees objekti ehitamine. Teisalda (ADD käsk), Pööra (ROT), Skaala (MUL) on koordinaatide süsteemi teisendamise käsud. Edasisi teisendusi saab skriptist kustutada ükshaaval, mitu korraga või kustutada kõik korraga. Teatmeteos kirjeldab seda kõike piisavalt üksikasjalikult ja koos näidetega. Näide koordinaatsüsteemi liikumisest 3D-ruumis piki kolme telge korraga on toodud joonisel. 7. LISA a, b, c

suumimine
suumimine

Niisiis, enne kõiki konstruktsioone pöörame koordinaatsüsteemi kõigepealt mööda ühte, siis mööda teist telge. Pöörlemist mööda X-telge teostab käsk ROTX alphax, kus alfax on vastupäeva pöördenurk; tähestiku asemel peate sisestama varem loodud muutuja. Pööramine piki Y-telge viiakse läbi samamoodi (joonis 8).

suumimine
suumimine

Nüüd saate määrata erinevad pöördenurgad - ja 3D-mudeli muudatused toimuvad vasakus ülanurgas asuvas vaateavas (joonis 9).

suumimine
suumimine

Nüüd saate määrata erinevad pöördenurgad - ja 3D-mudeli muudatused toimuvad vasakus ülanurgas asuvas vaateavas (joonis 9). Kuid 2D-s ei juhtu veel midagi. 2D-skriptis on objekt ehitatud eraldi joontega ja joontega, nii et objekti joonistamine plaanis on mitu korda kiirem. Ühes kohas on see märkamatu, kuid kui selliseid võrke on projektis sadu, on pidurdus märkimisväärne. Võite arvutada nende sirgete punktide koordinaadid ja joonistada need nii, nagu need näeksid pööratud objekti projektsioonis, kuid see pole väga lihtne ja mitte väga kiire. Selles võres pakun välja järgmise lahenduse: kui nurkades X või Y ei võrdu nulliga, siis 2D skripti objekt, see tähendab plaani jaoks, renderdatakse 3D mudeli projektsioonina ja muidu vanaviisi. 2D-skripti mudeli projektsiooni ehitab käsk PROJECT2 projection_code, angle, method. Mida tähendavad projektsioonikood, nurk, meetod, saate lugeda teatmeteosest, kuid olulisema käsuga tutvume juhtlause IF - SIIS - MUU - ENDIF jaotisest. Need on tingimuslaused, mis aitavad teil ehitada eelmise lõigu tingimuslauset. Joonisel fig. 10 Olen 2D skriptis esile tõstnud lisatud käsud ja paremale punase "tõlke" lisanud.

suumimine
suumimine

Nüüd peate objekti lihtsalt salvestama ja saate seda kasutada (joonis 11). Selle meetodi eelis morfiks teisendamise ees on see, et objekt jääb parameetriliseks, seda saab lugeda spetsifikatsioonidest, selles saate muuta liistude mõõtmeid, kaadri suurust ja kõike muud, mis oli algses objektis.

suumimine
suumimine

Nii et üksikasjalikult uurisime selle näite abil GDL-i objektiredaktori peaaknaid ja skripte. Kui teie pööramiseks valitud objektil pole parameetreid mitte loendi kujul, nagu selles võrgus, vaid piltide ja diagrammide kujul, tähendab see, et arendaja on kirjutanud ka graafilise liidese. Kõige sagedamini peidetakse parameetritega standardnimekiri, nagu joonisel fig. 12: Parameetrilehtede rippmenüüs pole jaotist „Kõik parameetrid”.

suumimine
suumimine

Sellisel juhul peate minema parameetrite skripti ja leidma käsu, mis peidab kõik parameetrid (joonis 13). See skript kirjeldab kõiki toiminguid, mis mõjutavad parameetreid: - võimaluste või võimalike väärtuste vahemike (VALUES) määramine; - kõik arvutused, mille tulemus määratakse parameetrile (PARAMETRID); - parameetrite peitmine või lukustamine (HIDEPARAMETER, LOCK).

suumimine
suumimine

Rida HIDEPARAMETERS ALL saab lihtsalt kustutada või panna "!" Rea algusesse, muutke see loetamatuks (vastavalt GDL-i süntaksile loetakse hüüumärgiga algavat rida kommentaariks. Edasi kirjutan kirjeldused ja tõlked ekraanipiltidel pärast märki "!"). Pärast seda ilmub parameetrite lehtede loendisse rida "Kõik parameetrid" ja selle valimisel näete parameetritega standardset loendit, mille hulgas on uusi ridu pööramiseks. NÄIDE # 2 - tekst sümbolil Võtan järgmise näite praegusest projektist. Mitme korteriga elamu plaaniga töötades tuli kliimaseadmete välisseadmetele panna täht "K" - ja nii, et see asuks alati vertikaalselt. Muidugi oleks võinud selle kirja lihtsalt lisada teksti või välise pealdise-tekstiga, kuid siis, kui konditsioneeri keerati, pidanuks võib-olla ka teksti teisaldama. Alustuseks lisasin neli uut parameetrit (joonis 14):

suumimine
suumimine

1. Kuva tekst: parameetri tüüp on tõeväärtus, mis tähendab kahte võimalikku väärtust: 0 (ei) ja 1 (jah). Seega saab teksti sisse või välja lülitada.

2. Eritekst: parameetri tüüp - tekst. Võimaldab kirjutada sümbolisse suvalise teksti (kavatsen kasutada ühte tähte, nii et see mahuks kliimaseadme ploki ristküliku sisse).

3. Font: tüüp - tekst. Pange tähele, et selle muutuja teatud tüüpi kirjutamine võimaldab teil arvutisse installitute loendist valida veerus fondiväärtused. "Fonttype" kutsub seda loendit automaatselt, kuid kui ma kirjutan "typefont" või lihtsalt "font", siis pean fondi nime käsitsi kirjutama. Märkasin seda hetke juhuslikult ühes standardobjektis.

4. Tekstipliiats: tüüp - pliiats. Noh, siin on kõik selge.

Vaatame nüüd ikoone, mida klõpsasin ridade alguses. Esimesel real on ikoon vajutatud

Image
Image

mis tähendab, et paks - paks. See tähendab, et see rida objekti parameetrite aknas on paks. Kolmel ülejäänud on piktogramm

Image
Image

… See tähendab, et need read pesitsevad esimese rea all olevas rippmenüüs. Joonisel fig. 15 on ekraanipilt, mis illustreerib objekti parameetrites välja nägemist. Alustuseks lisasin neli uut parameetrit (joonis 15):

Рис. 15. Окно Параметров Объекта
Рис. 15. Окно Параметров Объекта
suumimine
suumimine

Ja joonisel fig. 16 - see, mille lisasin 2D-skripti (traditsiooniliselt koos tõlke ja kommentaaridega).

suumimine
suumimine

Joon. 16. Lisatud read 2D-skripti Järgmises ekraanipildis (joonis 17) olen suurema selguse huvides tooninud erinevat tüüpi sõnu / käske / muutujaid.

suumimine
suumimine

Objekt on valmis (joonis 18).

suumimine
suumimine

Ja kui ma ei kirjutaks ridu pööramise ja skaleerimisega, näeks objekt välja nagu joonisel fig. 19.

suumimine
suumimine

NÄIDE # 3 - detailistamine Projektiga töö lihtsustamiseks võite objekti kirjutamisel lisada tekstiparameetri, mille valimiseks on mitu üksikasjad (lihtne, keskmine, üksikasjalik). Ja lisage 3D-skripti mitmesuguste väikeste osade ehitamisel tüübi tingimus: kui detailide tase = "detail", siis (hooneosade kirjeldus) väärib erilist tähelepanu tingimuse lõpp globaalsed muutujad. Need on teatmikus 40 lehekülge ja hõlbustamiseks on need rühmitatud teemade kaupa. Eelmises näites kasutasin projektis mõningaid objekti orientatsiooni andmeid. Teatmiku sama osa sisaldab objektide asukoha koordinaatide globaalseid muutujaid - neid kasutatakse selliste objektide loomiseks nagu juht, millel on sektsioonil / kõrgusel koordinaadid või kõrgused. Väga sageli kasutatakse GLOB_SCALE - joonise skaala (sõltub praeguse akna vaatest), skaalal 1: 100 võrdub 100, skaalal 1:20 20. See on kasutatakse kõige sagedamini fondi suuruse teisendamiseks mudelmeetriteks või vastupidi. Samuti saab seda parameetrit kasutada plaani kuvamisvalikute "riputamiseks". Näiteks pingi jaoks kirjutage 2D-skripti järgmine:

KUI GLOBAL_SKALE <100 SIIS ! kui skaala on suurem kui 1: 100, siis
PROJEKT 2 3, 270, 2 ! ehitada 3D-mudelist projektsioon
MUU ! muidu
ENDIF ! seisundi lõpp

Nii et põhiplaanil mõõtkavas 1: 500 kuvatakse pingid ristkülikutena ja suurema skaalaga fragmendil joonistatakse detailne projektsioon. Sarnast tehnikat, kuid kolmemõõtmelise mudeli puhul, kasutatakse tavalistes puudes - kui märkate märkeruudu Automaatne võra tüüp. Kaamerast teatud kaugusel muutub kroonitüüp üksikasjalikust lihtsaks ja lihtsast ellipsiks. Tõsi, objekti skriptide uuesti lugemiseks peate nendega midagi ette võtma - näiteks pärast perspektiivi muutmist, kõigi puude esiletõstmist avage objekti parameetrite aken ja midagi muutmata klõpsake lihtsalt nuppu OK. või klõpsake kaane asendamise märkeruudul ja tühjendage see.

Las ma näitan seda sfääri ligikaudse näitega. 3D-skriptis kirjutasin järgmist: discam_x = abs (GLOB_EYEPOS_X-SYMB_POS_X) discam_y = abs (GLOB_EYEPOS_Y-SYMB_POS_Y) discam_h = sqr (discam_x ^ 2 + discam_y ^ 2) discam_z = discam_Bam ^ 2 + = 20, siis res = 50, kui discam20, siis res = 20, kui discam30, siis res = 10, kui discam> 40, siis res = 5 resol res sfäär 1 Skriptis kasutasin globaalseid muutujaid GLOB_EYEPOS_X, GLOB_EYEPOS_Y, GLOB_EYEPOS_Z on asukoha koordinaadid kaamera (silmad) projekti 3D-aknas ja SYMB_POS_X, SYMB_POS_Y, SYMB_POS_Z on objekti asukoha koordinaadid ruumis; abs - numbrimoodul (eemaldab "-", kui see on olemas); sqr - ruutjuur; ^ 2 - arvu ruut.

3D-aknas joonistatakse kera erineva lähendusega kaamerast erinevatel kaugustel. Selguse huvides lülitasin sisse traadiraami režiimi (joonis 20).

suumimine
suumimine

Globaalsete muutujate kaudu saab objekt vastu võtta: - andmed projekti asukoha (põhi, laiuskraad, pikkuskraad, kõrgus) kohta, mis on määratud vastavas dialoogiboksis; - praegune korrus ja oma korrus; - praeguse vaate tüüp (näiteks GOST-i džemprites kasutatakse järgmist tingimust: kui vaate tüüp on loend, siis ehitage hüppaja vaade jaotisesse koos positsiooniliidritega); võrega näites saate lisada järgmise tingimuse: kui vaate tüüp on loend, siis ärge pöörake koordinaatsüsteemi, nii et igal juhul oleks võrede loendis eesmine vaade; - konstruktsioonide puudulik kuvamine (võite muuta objekti osasid näitamata, kui valitud on ainult tuum).

Saate seina andmed lohistada akna või ukseobjekti. Tähelepanulaiendid võivad saada palju erinevat teavet elemendi kohta, millega need on seotud, näiteks märkeruut mitmekihilise struktuuri kihtidega või liider elemendi helitugevusega. Ja nii edasi, 40 lehekülge erinevaid ja väga kasulikke globaalseid muutujaid. NÄIDE 4 - tsooni marker Vaatame, kuidas luuakse kohandatud tsoonimarker. Kui loote uue objekti ja valite selle jaoks jaotises Üksikasjad selle alatüübi Zone Passport, siis jaotises Parameetrid kuvatakse kõik konkreetsed parameetrid, mille tööriist Zone markerile edastab, sinisega (joonis 21).

Рис. 21. Параметры объекта подтипа Паспорт Зоны
Рис. 21. Параметры объекта подтипа Паспорт Зоны
suumimine
suumimine

Kasutades käsku TEXT2, saate mis tahes neist muutujatest kirjutada 2D-skripti - nii saate ainult tekstist koosneva markeri (joonis 22).

suumimine
suumimine

Tsoonitähise üldiste parameetrite abil saate määratleda teksti stiili ja rea kõrguse sõltuvalt fondi kõrgusest: MÄÄRATA STIIL “ROOM” AC_TextFont_1, ROOM_LSIZE, 5.0 STYLE “ROOM” rida = ROOM_LSIZE / 1000 * GLOB_SCALE * 1,5 tekst2 0, rida, ROOM_NUMBER text2 0, 0, ROOM_NAME text2 0, -row, ROOM_AREA Markeri tüübi valimiseks (joonis 23) saate luua uue parameetri, määrata sellele parameetrite skriptis (joonis 24) ja 2D-skript kirjutab erinevat tüüpi markeride renderdamise tüübid.

suumimine
suumimine
suumimine
suumimine

2D skript: kui mt = "marker arvuga", siis tekst2 0, 0, ROOM_NUMBER CIRCLE2 0,0, rea lõpp, kui mt = "number ja ala", siis text2 0, rida / 2, ROOM_NUMBER text2 0, -row / 2, AREA_TEXT endif kui mt = "pealkiri ja ala", siis tekst2 0, rida / 2, ROOM_NAME tekst2 0, -row / 2, AREA_TEXT endif, kui mt = "number, pealkiri ja ala", siis tekst2 0, rida, ROOM_NUMBER tekst2 0, 0, ROOM_NAME text2 0, -row, AREA_TEXT endif if mt = "only area", siis text2 0, 0, AREA_TEXT endif Selles skriptis ei kasutanud ma eelnevalt määratletud piirkonna muutujat piirkonnana, vaid teisendasin ala tekstiks ja lisasin see ühikut: pindala = str (ROOM_AREA, 4, 2)! numbri teisendamine kahe kümnendkohaga tekstiks AREA_TEXT = pindala + "ruutmeetrit" ! lisades stringi väärtusele tähed "sq.m." Saate täiendada markeris olevaid ridu jooneid eraldavate joontega. Stringi pikkuse leidmiseks kasutage käsku STW. Lisame skripti algusesse: tl1 = stw (ROOM_NUMBER) / 1000 * GLOB_SCALE tl2 = stw (ROOM_NAME) / 1000 * GLOB_SCALE tl3 = stw (AREA_TEXT) / 1000 * GLOB_SCALE, kui mt = "arv ja pindala", siis tl = MAX (tl1, tl3) kui mt = "arv, pealkiri ja ala", siis tl = MAX (tl1, tl2) kui mt = "pealkiri ja ala", siis tl = MAX (tl2, tl3) kui mt = "ainult ala" tl = tl3 JA markerite variantides lisage read käsuga LINE2 (joonis 25).

Рис. 25. 2D-скрипт
Рис. 25. 2D-скрипт
suumimine
suumimine

Kui tsooninumber koosneb mitmest numbrist, saate markeri jaoks luua parameetri ringi raadiusele, sõltumata fondi kõrgusest, või kirjeldada ringi asemel ellipsi taolist kuju, mille pikkus on võrdne pikkusega varem leitud tsooninumbrirea: POLY2_ 5, 1 + 2 + 4, -tl1 / 2, rida, 1, tl1 / 2, rida, 1, tl1 / 2, -row, 1001, -tl1 / 2, -row, 1, -tl1 / 2, rida, 1001 Saate lisada põranda tüübile uue parameetri (FLOOR_TYPE) ja parameetri, mis võimaldab teil seda peita või näidata (ShowFloorType), ja 2D skripti lisada kolmnurga joonjoon ja põrandatüübiga tekst: kui ShowFloorType, siis ADD2 0, rida * 3 POLY2_ 4, 1, -row * 1,4, -row * 0,8, 1, rida * 2,8,60,201, rida * 1,4, -row * 0,8, 1, 0,0700 text2 0,0, FLOOR_TYPE endif Põrandatüübi jaoks on soovitav lisada pliiatsile eraldi parameeter ja punktid põrandamarkeri asukoha graafiliseks muutmiseks. Kirjeldasin üksikasjalikult, kuidas oma veebiseminaril graafilisi redigeerimispunkte lisada, ja artikli lõpus oleva lingi abil saate objekte alla laadida ja vaadata, kuidas seda konkreetsel juhul rakendatakse.

Ja lõpuks vaatleme objekti veel ühte väga olulist alamtüüpi, mis avab suuri võimalusi - raamatukogu globaalsed parameetrid (joonis 26).

suumimine
suumimine

Selle alamtüübiga objekt ei ehita ega joonista midagi, see määratleb mudeli vaadetes parameetrid. Seega saate seal välja võtta need parameetrid, mida soovite objekti jaoks ühtsena näha, kuid samal ajal saate seada erinevatele tüüpidele erinevaid väärtusi.

Ma näitan seda tsoonimärgi näitega. Sattusin projektide juurde, kus erinevate vaadete jaoks oli mitu tsoonide komplekti erinevates kihtides. Kui on vaja erinevaid markereid, siis on raamatukogu üldised parameetrid parim lahendus.

Mul on marker, mille abil on võimalik kolmnurkseks seada põranda tüüp ja muuta märgistuse tüüpi (joonis 27). Ja need kaks parameetrit viiakse alamtüübi Global Library Parameters eraldi faili (joonis 28).

suumimine
suumimine
suumimine
suumimine

Nende parameetrite kuvamiseks dialoogiboksis Model View Parameters peate registreerima need objekti liidese skriptis (joonis 29). Ma ei peatu selle skripti spetsiaalsete käskude osas üksikasjalikult, neid kirjeldatakse teatmeteos piisavalt üksikasjalikult ja koos näidetega. Ütlen ainult, et siin kirjeldame, kus see või teine silt või nupp asuvad (valikuvõimalustega väli, linnuke jne), pilte saab lisada ka kasutajaliidesesse. Standardraamatukogus on peaaegu igal objektil graafiline liides; näete kõiki võimalusi ja näete, kuidas need skriptid on kirjutatud. Lisaks nupule Kontrolli on skriptil ka nupp Vaade. Sellel klõpsates näete kiiresti, mis juhtub.

suumimine
suumimine

Saate objekti salvestada ja seda vaadata dialoogiboksis Model View Options (Joonis 30). Siin saame muuta märgistuse tüüpi korraga kõigi projekti tsoonide jaoks (selle markeriga), kuid eri tüüpi jaoks eraldi.

suumimine
suumimine

Nüüd peate tsoonimärgi objektil objektilt pärima nende kahe parameetri väärtused. Peamises skriptis (mida kõigepealt loeb objekt, nii et kõik arvutused ja väärtuste definitsioonid, mida tuleks kasutada mitmes skriptis, on parem siia kirjutada) kirjutan kaks rida niimoodi: success1 = LIBRARYGLOBAL ("LibraryGlobals20 "," ShowFloorType ", ShowFloorType) success2 = LIBRARYGLOBAL (" LibraryGlobals20 "," mt ", mt)" õnnestumine "on 1, kui taotlus on edukas; muidu on see 0.

Seda saab kasutada tsoonimärgi asemel hoiatusteate kirjutamiseks, et LibraryGlobals20 objekti pole teeki laaditud.

Siis töötab objekt nagu tavaliselt, kasutades kahte uut väärtust: kui märgistuse tüüp on selline ja selline, siis kirjutage selline ja selline jne. Selles artiklis olen käsitlenud vaid väikest osa GDL-i võimalustest. Selle abiga saate luua nii väga lihtsaid kujunduselemente kui ka väga keerukaid objekte.

Näiteks on teil tegemist väikeste ja lihtsate SIP-paneelmajadega. Teil on konkreetne nimekiri projekti muutmise võimalustest: - maja pikkus ja laius võivad olla 2,4 kuni 24 meetrit 1,2 m sammuga; - kui laius ületab 6 m, siis peaks keskel olema veel üks sein; - kaks põrandakõrguse varianti sõltuvalt paneeli suurusest; - korruste arv - üks või kaks korrust; - aknad võivad olla kindla suurusega paneelide teatud kohtades; - fassaadide viimistlus kolmes variandis; - katusekate kolmes versioonis; - mitme standardse suurusega seina paksus ja nii edasi.

Objekti jaoks saate kõik need parameetrid määrata, lisades paneeli, katuse, viimistluse jne ruutmeetri maksumuse. Objekti 2D- ja 3D-skriptides ehitage ja joonistage see maja staatiliste mõõtmete asemel muutujate abil täielikult üles. Selleks, et kasutaja ei läheks pikas parameetrite loendis segadusse, võite kirjutada mitme lehe graafilise liidese koos piltide ja diagrammidega. Arvutage põhiskriptis kõik mahud ja kuvage maksumus. Plaani kõrval on võimalik ka 2D-skriptis kuvada tabel koos paneelide paigutusega. Sellise objekti kirjutamine võtab palju aega, peate koostama üksikasjaliku tehnilise kirjelduse, esitama kõik nüansid, kuid siis saate mitte ainult objekti, vaid peaaegu programmi, milles parameetrite valimisega saate saab kliendi jaoks kavandi kavandi komplekti koos materjalide ja kulude arvutamisega. Loodetavasti on see ülevaade äratanud kellegi huvi GDL-i võimaluste vastu. Minu lugu algas teravast soovist muuta mõnda väikest detaili mõnes standardses tsoonimärgis ja mida rohkem ma juhendit lugesin, seda rohkem avaldub selle tööriista potentsiaal, mis on minu arvates arhitektile väga kasulik. Allolevalt lingilt saate alla laadida kõik objektid, mida selles artiklis näidetena käsitleti: Näidete allalaadimine Märge. Nende objektide kirjutamiseks kasutati ARCHICAD 20, nii et neid ei avata varasemates versioonides. GRAPHISOFTist GRAPHISOFT ettevõte® muutis BIM-i 1984. aastal ARCHICADiga revolutsiooniliselt® Kas tööstusharu esimene BIM-lahendus arhitektidele CAD-tööstuses. GRAPHISOFT jätkab arhitektuuritarkvara turu juhtimist selliste innovaatiliste toodetega nagu BIMcloud ™, maailma esimene reaalajas koostöös kasutatav BIM-disainilahendus, EcoDesigner ™, maailma esimene täielikult integreeritud energia modelleerimine ja hoonete energiatõhususe hindamine ning BIMx® On juhtiv mobiilirakendus BIM-mudelite tutvustamiseks ja esitlemiseks. Alates 2007. aastast kuulub GRAPHISOFT Nemetscheki kontserni.

Soovitan: