ARCHICAD: REVEALING GDL: Programming Para Sa Mga Natatanging Hamon Ng Arkitekto

ARCHICAD: REVEALING GDL: Programming Para Sa Mga Natatanging Hamon Ng Arkitekto
ARCHICAD: REVEALING GDL: Programming Para Sa Mga Natatanging Hamon Ng Arkitekto

Video: ARCHICAD: REVEALING GDL: Programming Para Sa Mga Natatanging Hamon Ng Arkitekto

Video: ARCHICAD: REVEALING GDL: Programming Para Sa Mga Natatanging Hamon Ng Arkitekto
Video: GDL 1 2024, Abril
Anonim

Ang dalubhasang materyal na ito ay nagpatuloy sa serye ng mga artikulong "ARCHICAD: Rediscovering", na nagsimula noong Disyembre 2016 sa isang artikulo ni Vladimir Savitsky "Paglikha ng mga istraktura at pagkuha ng mga gumaganang guhit mula sa isang modelo", at pagkatapos ay nagpatuloy sa mga publication ng Svetlana Kravchenko "ARCHICAD: Muling matuklasan. Pagpapakita - mga bagong pagkakataon para sa isang arkitekto na "at Alexander Anishchenko" TEAMWORK: mabisang pagtutulungan nang paunti-unti ". Ang siklo ay dinisenyo upang matulungan ang mga gumagamit na maipalabas ang buong potensyal ng ARCHICAD®… Hiniling namin sa mga arkitekto na ibahagi ang kanilang personal na karanasan sa paggamit ng programa gamit ang hindi pamantayan na mga diskarte, mga pag-aaral na hindi gaanong pinag-aralan at mga bagong tampok na maaaring hindi alam ng maraming mga gumagamit. Bilang mga tagabuo ng aplikasyon ng ARCHICAD, tiwala kami na ang isang malalim na kaalaman lamang sa produkto ang maaaring ihayag ang buong halaga nito at tiyak na maiimpluwensyahan ang mga resulta, bilis at kalidad ng gawain ng taga-disenyo. Mas gusto mo rin ba ang mga "untread path"? Mayroon ka bang karanasan sa paggamit ng mga hindi pamantayan na diskarte sa pagtatrabaho sa ARCHICAD, regular na hindi ginagamit ang pinakatanyag na mga tampok ng application? Masisiyahan kaming mag-imbita ng mga bagong may-akda sa kooperasyon: [email protected]. Si Svetlana Kravchenko, isang pagsasanay na arkitekto, ay nag-ulat:

pag-zoom
pag-zoom

Tiyak na marami sa inyo ang nakarinig tungkol sa GDL sa ARCHICAD, ngunit hindi pa rin alam ng lahat kung paano gamitin ito sa trabaho. Isinasaalang-alang ang hindi kapani-paniwala na pagiging kapaki-pakinabang ng tampok na ito, pati na rin ang maraming mga katanungan pagkatapos ng aking unang webinar sa paksang ito, nagpasya akong mas detalyado tungkol sa kung paano ang kahit na pinakamaliit na kaalaman tungkol dito ay makakatulong ng malaki sa pang-araw-araw na gawain ng arkitekto.

Magsimula tayo sa mga pangunahing kaalaman Ang GDL (Wika sa Paglalarawan ng Geometric) ay isang mala-BASIC na wika ng programa na dinisenyo upang gumana sa kapaligiran ng ARCHICAD. Inilalarawan nito ang mga solidong katawan ng 3D (tulad ng mga pintuan, bintana, kasangkapan) at mga simbolo ng 2D sa window ng floor plan. Ang mga bagay na ito ay tinatawag na Mga Tampok sa Library.

Para sa mga hindi bababa sa isang pamilyar na pamilyar sa pagprogram, hindi magiging mahirap ang pag-master ng wikang ito. Gayunpaman, sa sapat na pagnanasa, ang pag-aaral ng GDL ay magiging nasa loob ng lakas ng isang tao na malayo sa kapaligiran na ito. Ang sinumang arkitekto ay nag-aral ng geometry at mapaglarawang geometry sa kanyang panahon, may mahusay na volumetric na pag-iisip, at kalahati na ng tagumpay. Hindi mo kailangang agad na subukang magsulat ng mga kumplikadong bagay, sulit na magsimula sa pangunahing mga hugis at porma ng geometriko; maraming impormasyon ang maaaring makuha sa pamamagitan ng pagsusuri sa mga script ng iba pang Mga Item sa Library. Sa gayon, ang pangunahing mapagkukunan ng impormasyon ay ang manwal na sanggunian ng GDL, na maaaring ma-access sa pamamagitan ng menu ng Tulong sa ARCHICAD mismo. Kaya, bakit makikinabang ang isang arkitekto mula sa kaalaman sa GDL? Halimbawa, hindi tulad ng Grasshopper, kung saan maaari kang lumikha ng mga kumplikadong istraktura, ang GDL ay lubhang kailangan para sa pagsusulat ng iba't ibang mga marka at callout, pati na rin para sa paglikha ng mga espesyal na sangkap para sa iba pang Mga Tampok sa Library o mga tool. Ang isa sa aking mga unang aplikasyon ng GDL sa aking trabaho ay ang paglikha ng isang espesyal na dahon ng pinto ng panel, na, kung baguhin ang laki, ay hindi masukat sa lahat ng direksyon, ngunit binago lamang ang mga sukat ng panel. Ang kapal ng kulot na frame at ang lapad ng harness ay nanatiling hindi nagbabago. Gayundin, ang mga arkitekto ay madalas na nagnanais na magdagdag ng ilang mga simpleng pag-andar sa mga umiiral na mga bagay ng karaniwang mga aklatan - at ito ang pangunahing dahilan kung bakit nagsimula silang maghanap sa GDL. Siyempre, ang kaalaman sa GDL ay hindi mahalaga, at marami sa mga gawaing ito ay maaaring magawa sa mga karaniwang tool. Halimbawa, maaari kang bumuo ng mga infill na may mga slab at i-save ang mga ito bilang isang espesyal na dahon ng pinto. Kung mayroon ka lamang ng ilan sa mga hindi pamantayang pintuan na ito, kung gayon ito ay magiging mas mabilis. Ngunit kung sa iyong proyekto maraming mga magkatulad na pintuan ng iba't ibang laki at ang kanilang mga pagbabago sa lapad sa proseso ng trabaho, kung gayon ang pagsulat ng isang espesyal na panel sa GDL ay lubos na magpapabilis at magpapadali sa trabaho. Ang paglalarawan ng geometriko ay nagpapahiwatig na ang alinman sa mga posibleng hugis ay maaaring nakasulat sa teksto alinsunod sa mga sukat o koordinasyon. Para sa isang 3D script, mayroong isang bloke ng mga utos para sa pangunahing mga spatial na hugis, tulad ng: - BLOCK at BRICK - isang parallelepiped na itinayo sa tatlong sukat na may pinagmulan sa point 0 ng coordinate system BLOCK a, b, c BRICK a, b, c

pag-zoom
pag-zoom

- CYLIND - silindro kasama ang Z axis, na may taas na h at radius r CYLIND h, r

- DITO - globo na nakasentro sa pinagmulan at radius r SPHERE r

pag-zoom
pag-zoom

Ang isang ellipse at isang kono ay inilarawan sa isang katulad na paraan. Ang susunod na bloke ng mga numero ay mas kumplikado - ang mga ito ay iba't ibang mga prisma. Inilarawan ang mga ito sa pamamagitan ng isang hanay ng mga coordinate ng point. Ang pinakasimpleng prisma ay natutukoy ng bilang ng mga puntos (n), taas (h) at naglilista ng mga coordinate ng lahat ng mga puntos sa pagkakasunud-sunod. PRISM n, h, x1, y1, … xn, yn

Maraming mga pagkakaiba-iba ng prisma. Ang susunod na view, PRISM_, ay nagbibigay-daan sa iyo upang ipahiwatig ang mga code ng katayuan sa mga coordinate ng mga puntos, na tumutukoy sa kakayahang makita ng mga mukha at gilid, at pinapayagan ka ring lumikha ng mga hubog na prisma at prisma na may mga butas (tingnan ang seksyon Mga Code ng Katayuan sa sangguniang libro). Isa pang uri, BPRISM_, Lumilikha ng isang prisma na baluktot sa paligid ng Y-axis. FPRISM_ bumubuo ng isang prisma na may isang chamfer o fillet sa tuktok na bahagi.

pag-zoom
pag-zoom

Maraming mga utos na naglalarawan ng mas kumplikadong mga hugis na batay sa polyline: NAPAKALAKI, PYRAMID, REVOLVE, RULED, SWEEP, TUBE, COONS, MASS. Ang kanilang paglalarawan sa mga halimbawa ay matatagpuan sa sanggunian. Para sa isang script na 2D, ang mga hugis ay inilarawan ng iba pang mga utos: linya, bilog, rektanggulo, polyline, spline. Ngunit maaari ka ring magparehistro ng isang utos para sa pagbuo ng isang projection mula sa isang 3D script.

Ang paglikha ng 2D o 3D na mga hugis ay bahagi lamang ng pagpapaandar ng GDL. Kung kailangan mo lamang ng isang mesa, mas madali itong itayo sa mga tool ng ARCHICAD mismo. Ang isang bagay ay nakasulat sa kaso kung kinakailangan ng ilang uri ng parametricism: ang kakayahang pumili ng iba't ibang uri ng mga binti ng mesa, ang bilang ng mga binti, baguhin ang laki ng mesa habang pinapanatili ang natitirang mga sukat, kalkulahin ang tabla para sa paggawa, bigat at gastos. Ang object ay maaaring hindi maglaman ng anumang geometry sa lahat, ngunit gumanap lamang ng mga kalkulasyon. Para dito, ginagamit din ang mga Control Claus (Control Operators), tulad ng mga loop, mga kondisyong pahayag, na tumutukoy sa isang tukoy na lugar sa code (subroutine). Pinakamainam na pamilyar ang iyong sarili sa mga siklo at kundisyon sa simula pa lamang - madalas itong ginagamit. Kaya, lahat ng mga halimbawa sa ibaba ay may mga kondisyon na pahayag. HALIMBAWA # 1 - pag-ikot ng object Kadalasang nais ng mga tagadisenyo na gawing naisasara ang isang bagay. Gamit ang simpleng halimbawang ito, titingnan namin ang istraktura ng Item sa Library, pati na rin ang pangunahing mga bintana ng GDL Object Editor. Upang buksan ang anumang bagay na matatagpuan sa puwang ng proyekto (kung ang developer ay hindi naglagay ng isang password dito), kailangan mong piliin ito at pindutin ang key na kombinasyon ng Ctrl + Shift + O. Ang isa pang paraan ay ang paggamit ng File> Mga Aklatan at Mga Bagay> Buksan ang menu ng Bagay. Kung sa sandaling ito walang napiling bagay, pagkatapos ay isang window para sa pagpili ng isang bagay ang magbubukas. Magdagdag tayo ng mga parameter ng pag-ikot, halimbawa, sa isang louver grille (Larawan 1).

pag-zoom
pag-zoom

Kaya, binuksan namin ang window ng GDL Object Editor (Larawan 2). Sa kaliwang tuktok, mayroong isang window para sa pagtingin ng iba't ibang mga view, tulad ng sa karaniwang window ng mga parameter ng object; kahit sa kaliwa ay mga pindutan para sa pagpili ng isang pagtingin - plano, taas, 3D-window at preview. Sa ibaba ay may mga pindutan para sa pagbubukas ng mga talahanayan ng parameter, mga listahan ng data at script. Maaaring buksan ang mga script sa dalawang paraan: mag-click sa pindutan na may pangalan ng script - buksan sa parehong window, mag-click sa pindutan sa kanan gamit ang window icon - magbubukas ang script sa isang hiwalay na window. Maaari itong maging kapaki-pakinabang upang makita ang iba't ibang mga script nang sabay (Larawan 3).

pag-zoom
pag-zoom

Sa tuktok ng window ng anumang script mayroong isang kinakailangang pindutan ng Suriin: kapag na-click mo ito, ipo-prompt ka ng editor kung mayroong anumang mga error sa script. Maglalaman ang mensahe ng dahilan para sa error at numero ng linya kung saan nahanap ang error. Sa seksyong "Mga Detalye", maaari kang pumili ng isang subtype ng object: pasadyang dahon ng pinto, doorknob, frame ng kurtina ng pader, at iba pa. Kaya, ang mga espesyal na bagay (panulat, canvas, frame) ay lilitaw sa kaukulang window para sa pagpili ng mga elementong ito. Kapag napili ang isang uri ng 2D, ang object ay walang windows para sa 3D geometry. Maaari ka ring pumili ng mga uri para sa iba't ibang mga marker - isang node, mga seksyon, mga caption ng pinuno, mga zone; lilitaw din ang mga ito sa kani-kanilang mga tool. Sa seksyong ito, maaari mong punan ang isang paglalarawan ng object at pumili ng isang password. Dagdag dito - "Mga Parameter", kung saan ang lahat ng data na ginagamit sa bagay na ito at kung saan maaaring mabago habang nagtatrabaho sa proyekto ay ipinakita sa anyo ng isang talahanayan. Narito kailangan naming magdagdag ng mga parameter para sa mga pagliko, na gagamitin namin sa paglaon.

pag-zoom
pag-zoom

Pindutin ang Bagong pindutan na matatagpuan sa itaas ng talahanayan (Larawan 4). Lilitaw ang isang bagong hilera kung saan kailangan mong punan ang mga haligi. Ang una sa mga haligi na ito ay Variable. Sinusulat namin ang pangalan ng variable, na gagamitin sa mga script, sa Latin at walang mga puwang. Kailangan mong pangalanan ito upang madali itong matandaan at sa parehong oras madali itong maunawaan kung ano ang responsable para sa variable na ito. Sa aming kaso, kailangan naming lumikha ng dalawang mga variable para sa halaga ng mga anggulo ng pag-ikot kasama ang mga axis ng X at Y (ang bagay ay maaaring paikutin sa paligid ng Z axis pa rin mismo sa plano). Nagpasya akong pangalanan ang mga ito ng anggulo_x at anggulo_y. Sa susunod na haligi, kailangan mong piliin ang uri ng data. Ang mga pagpipilian ay ipinakita sa talahanayan 1.

pag-zoom
pag-zoom

Ang huling dalawang uri ay hindi ginagamit sa pagbuo ng bagay, ngunit kinakailangan para sa higit na kalinawan at kaayusan ng listahan sa window ng mga parameter ng object. Kailangan namin ng isang sulok - ito ang pangalawang icon sa talahanayan. Ang pangatlong haligi ay Pangalan. Dito maaari kang magsulat nang walang mga patakaran sa anumang wika kung ano ang eksaktong nais naming makita sa paglaon sa window ng mga parameter ng object. At ang huling haligi ay Halaga. Ngayon ay maaari kang iwanang 0 dito: nagbabago ang halagang ito sa anumang oras kapwa sa script at sa mga parameter ng mismong object. Ipinapakita ng Larawan 2 kung paano tumingin ang dalawang bagong pagpipilian sa window ng GDL Object Editor. 5. Gamitin ang mga arrow sa simula ng linya upang ilipat ang linya sa isang maginhawang lokasyon.

pag-zoom
pag-zoom

Pagkatapos ay kailangan mong i-save ang bagay sa ilalim ng isang bagong pangalan, dahil ang standard na library ay hardcoded sa lalagyan, at hindi mo maaaring mapagsama ang mga bagay dito. Ang window ng Mga Parameter ng Object ay magiging ganito ngayon (Larawan 6).

pag-zoom
pag-zoom

Mayroong dalawang bagong mga parameter, ang halaga na maaaring mabago anumang oras. Ngunit ngayon walang mangyayari, dahil wala pang nakasulat na mga utos gamit ang mga ito. Ngayon ay kailangan mong buksan ang window ng 3D script. Narito ang isang kumpletong paglalarawan kung paano bumuo ng isang 3D na modelo batay sa mga ibinigay na parameter. Bilang karagdagan, ang iba't ibang mga macros ay maaaring pugad sa object. Bago ang lahat ng mga konstruksyon, kailangan mong paikutin ang coordinate system kung saan itatayo ang bagay. Dito mahalagang maunawaan ang sumusunod na lohika: lahat ng pag-ikot, paggalaw at pag-scale ay nagaganap na naiiba kaysa sa kung nagtatrabaho sa ARCHICAD mismo. Hindi kami kumukuha ng isang elemento at paikutin ito, ngunit paikutin ang pandaigdigang sistema ng coordinate (pagkatapos baguhin ito, naging lokal ito) sa harap pagbuo ng isang bagay. Ang paglipat (ADD Command), Paikutin (ROT), Scale (MUL) ay mga koordinasyon na mga utos ng pagbabago ng system. Ang mga karagdagang pagbabago ay maaaring tanggalin sa script isa-isa, maraming sabay-sabay, o tatanggalin lahat nang sabay-sabay. Inilalarawan ng sangguniang libro ang lahat ng ito sa sapat na detalye at may mga halimbawa. Ang isang halimbawa ng paglipat ng isang coordinate system sa puwang ng 3D kasama ang tatlong mga palakol nang sabay-sabay ay ipinapakita sa Fig. 7. ADD a, b, c

pag-zoom
pag-zoom

Kaya, bago ang lahat ng mga konstruksyon, paikutin namin ang sistema ng coordinate, unang kasama ang isa, pagkatapos ay kasama ang iba pang axis. Ang pag-ikot kasama ang X axis ay ginaganap ng ROTX alphax command, kung saan ang alphax ay ang pakaliwa sa pag-ikot ng anggulo; sa halip na alphax, kailangan mong maglagay ng dating nilikha na variable. Ang pag-ikot kasama ang axis ng Y ay ginaganap sa parehong paraan (Larawan 8).

pag-zoom
pag-zoom

Ngayon ay maaari kang magtakda ng iba't ibang mga anggulo para sa pag-ikot - at ang mga pagbabago sa modelo ng 3D ay magaganap sa viewport na matatagpuan sa kaliwang tuktok (Larawan 9).

pag-zoom
pag-zoom

Ngayon ay maaari kang magtakda ng iba't ibang mga anggulo para sa pag-ikot - at ang mga pagbabago sa modelo ng 3D ay magaganap sa viewport na matatagpuan sa kaliwang tuktok (Larawan 9). Ngunit wala pang nangyayari sa 2D. Sa isang script na 2D, ang isang bagay ay binuo na may magkakahiwalay na mga linya at polyline, kaya't ang pagguhit ng isang bagay sa plano ay mas mabilis nang maraming beses. Sa isang site, hindi ito mahahalata, ngunit kung may daan-daang mga naturang grids sa proyekto, ang pagpepreno ay magiging makabuluhan. Maaari mong kalkulahin ang mga koordinasyon ng mga punto ng mga linyang ito at balangkas ang mga ito tulad ng pagtingin nila sa projection ng pinaikot na bagay, ngunit ito ay hindi gaanong simple at hindi napakabilis. Sa lattice na ito, iminumungkahi ko ang sumusunod na solusyon: kung ang mga anggulo sa X o Y ay hindi katumbas ng zero, kung gayon ang object sa 2D script, iyon ay, para sa plano, ay ibibigay bilang isang projection ng 3D na modelo, at kung hindi man sa dating paraan. Ang projection ng modelo para sa isang 2D script ay binuo ng PROJECT2 projection_code, anggulo, pamamaraan ng utos. Maaari mong basahin kung ano ang ibig sabihin ng projection_code, anggulo, pamamaraan sa sangguniang libro, ngunit makikilala natin ang mas mahalagang utos mula sa seksyon ng KUNG - TAPOS - IBA - ENDIF mga pahayag sa pagkontrol. Ito ang mga kondisyunal na pahayag na makakatulong sa iyo na mabuo ang kondisyunal na sugnay mula sa nakaraang talata. Sa igos 10 Na-highlight ko ang mga idinagdag na utos sa 2D script at idinagdag ang "pagsasalin" na pula sa kanan.

pag-zoom
pag-zoom

Ngayon ay kailangan mo lamang i-save ang bagay at maaari mo itong magamit (Larawan 11). Ang bentahe ng pamamaraang ito sa paglipas ng pag-convert sa morph ay ang object ay mananatiling parametric, mababasa ito sa mga pagtutukoy, dito maaari mong baguhin ang mga sukat ng mga slats, ang laki ng frame, at lahat ng iba pa na nasa orihinal na object.

pag-zoom
pag-zoom

Kaya't sa detalye, gamit ang halimbawang ito, sinuri namin ang mga pangunahing windows at script ng GDL Object Editor. Kung ang bagay na pinili mo para sa pag-ikot ay may mga parameter na hindi sa anyo ng isang listahan, tulad ng sa sala-sala na ito, ngunit sa anyo ng mga larawan at diagram, nangangahulugan ito na ang developer ay nagsulat din ng isang grapikong interface. Kadalasan, ang karaniwang listahan na may mga parameter ay nakatago, tulad ng sa Fig. 12: Walang seksyon na "Lahat ng Mga Parameter" sa dropdown na listahan ng mga pahina ng parameter.

pag-zoom
pag-zoom

Sa kasong ito, kailangan mong pumunta sa mga script ng mga parameter at hanapin ang utos na nagtatago ng lahat ng mga parameter (Larawan 13). Inilalarawan ng script na ito ang lahat ng mga aksyon na nakakaapekto sa mga parameter: - pagtatalaga ng mga pagpipilian o saklaw ng mga posibleng halaga (VALUES); - anumang mga kalkulasyon, ang resulta kung saan ay nakatalaga sa parameter (PARAMETERS); - Mga parameter ng pagtatago o pag-lock (HIDEPARAMETER, LOCK).

pag-zoom
pag-zoom

Ang HIDEPARAMETERS LAHAT na linya ay maaaring tinanggal nang simple o sa pamamagitan ng paglalagay ng isang "!" Sa simula ng linya, gawin itong hindi mabasa (ayon sa syntax ng GDL, ang isang linya na nagsisimula sa isang tandang padamdam ay itinuturing na isang komento. Dagdag dito, magsusulat ako ng mga paglalarawan at ang mga pagsasalin sa mga screenshot pagkatapos ng "!" Mag-sign). Pagkatapos nito, lilitaw ang linya na "Lahat ng mga parameter" sa listahan ng mga pahina ng parameter, at sa pamamagitan ng pagpili nito, makikita mo ang isang karaniwang listahan na may mga parameter, bukod dito ay magkakaroon ng mga bagong linya para sa pag-ikot. HALIMBAWA # 2 - teksto sa isang simbolo Kinukuha ko ang susunod na halimbawa mula sa kasalukuyang proyekto. Kapag nagtatrabaho sa plano ng isang multi-apartment na gusali ng tirahan, kinakailangang ilagay ang titik na "K" sa mga panlabas na yunit ng mga aircon - at upang palagi itong matatagpuan nang patayo. Siyempre, ang liham ay maaaring naidagdag sa tuktok na may teksto o isang panlabas na teksto ng inskripsyon, ngunit pagkatapos, kapag ang aircon ay nakabukas, ang teksto ay maaaring kinailangan ding ilipat. Upang magsimula, nagdagdag ako ng apat na bagong mga parameter (Larawan 14):

pag-zoom
pag-zoom

1. Ipakita ang teksto: ang uri ng parameter ay isang halaga ng boolean, na nagpapahiwatig ng dalawang posibleng halaga: 0 (hindi) at 1 (oo). Kaya, ang teksto ay maaaring i-on o i-off.

2. Espesyal na teksto: uri ng parameter - teksto. Pinapayagan kang magsulat ng anumang teksto sa simbolo (balak kong gumamit ng isang letra upang magkasya ito sa loob ng parihaba ng aircon block).

3. Font: uri - teksto. Mangyaring tandaan na ang ilang mga uri ng pagsulat ng variable na ito ay nagbibigay-daan sa iyo upang pumili ng mga halaga ng font sa haligi mula sa listahan ng mga naka-install sa computer. Awtomatikong tumatawag ang "Fonttype" sa listahang ito, ngunit kung isusulat ko ang "typefont" o "font" lamang, pagkatapos ay kailangan kong isulat nang manu-mano ang pangalan ng font. Napansin ko ang sandaling ito nang nagkataon sa isa sa mga karaniwang bagay.

4. Text pen: uri - panulat. Kaya, ang lahat ay malinaw dito.

Ngayon tingnan natin ang mga icon na na-click ko sa simula ng mga linya. Ang unang linya ay may isang icon na pinindot

Image
Image

na nangangahulugang matapang - matapang. Iyon ay, ang linya na ito sa window ng mga parameter ng object ay magiging matapang. Ang iba pang tatlo ay mayroong pictogram

Image
Image

… Nangangahulugan ito na ang mga linyang ito ay makakasama sa drop-down na listahan sa ilalim ng unang linya. Sa igos Ang 15 ay isang screenshot na naglalarawan kung paano ito nakikita sa Mga Parameter ng Bagay. Upang magsimula, nagdagdag ako ng apat na bagong mga parameter (Larawan 15):

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

At sa igos. 16 - kung ano ang idinagdag ko sa isang 2D script (ayon sa kaugalian na may pagsasalin at mga komento).

pag-zoom
pag-zoom

Fig. 16. Nagdagdag ng mga linya sa isang script na 2D Sa susunod na screenshot (Larawan 17), para sa higit na kalinawan, nai-kulay ko ang iba't ibang mga uri ng mga salita / utos / variable.

pag-zoom
pag-zoom

Ang bagay ay handa na (fig 18).

pag-zoom
pag-zoom

At kung hindi ako nagsulat ng mga linya na may pag-ikot at pag-scale, kung gayon ang bagay ay magiging hitsura ng fig. 19.

pag-zoom
pag-zoom

HALIMBAWA # 3 - pagdedetalye Upang gawing simple ang trabaho sa isang proyekto, kapag sumusulat ng isang bagay, maaari kang magdagdag ng isang parameter ng teksto na may pagpipilian ng maraming mga pagpipilian para sa pagdedetalye (simple, daluyan, detalyado). At sa 3D script, kapag nagtatayo ng iba't ibang maliliit na bahagi, magdagdag ng isang kundisyon ng uri: kung ang antas ng detalye = "detalyado", pagkatapos (paglalarawan ng mga bahagi ng pagbuo) ang pagtatapos ng kundisyon ng Mga Global Variable ay nararapat na espesyal na pansin. Ang mga ito ay 40 mga pahina ang haba sa sanggunian ng manwal at pinagsama ayon sa paksa para sa madaling paghahanap. Sa nakaraang halimbawa, gumamit ako ng ilang data ng orientation ng object sa proyekto. Ang parehong seksyon ng manwal ng sanggunian ay naglalaman ng Mga Global Variable para sa mga coordinate ng lokasyon ng object - ginagamit ang mga ito upang lumikha ng mga bagay tulad ng isang namumuno na may mga coordinate o pagtaas sa isang seksyon / taas. Kadalasan ginagamit ang GLOB_SCALE - ang sukat ng pagguhit (nakasalalay sa view ayon sa kasalukuyang window), sa isang sukat na 1: 100 ay katumbas ng 100, sa isang sukat na 1:20 katumbas ng 20. Ito ay madalas na ginagamit upang i-convert ang laki ng font sa mga modelo ng metro o kabaligtaran. Gayundin, ang parameter na ito ay maaaring magamit upang "mabitay" ang mga pagpipilian sa pagpapakita sa plano. Halimbawa, para sa isang bench, isulat ang sumusunod sa isang 2D script:

KUNG GLOB_SCALE <100 NOON ! kung ang sukat ay mas malaki sa 1: 100, kung gayon
PROJECT2 3, 270, 2 ! bumuo ng isang projection mula sa isang 3D na modelo
IBA PA ! kung hindi man
TAPUSIN KUNG ! pagtatapos ng kundisyon

Kaya sa master plan sa isang sukat na 1: 500, ang mga bangko ay ipapakita bilang mga parihaba, at sa isang fragment na may mas malaking sukat, isang iguhit na detalyadong ilalabas. Ang isang katulad na pamamaraan, ngunit para sa isang tatlong-dimensional na modelo, ay ginagamit sa karaniwang mga puno - kung pinagana mo ang checkbox na uri ng Awtomatikong korona. Sa isang tiyak na distansya mula sa camera, ang uri ng korona ay nagbabago mula sa detalyado hanggang sa simple, at mula sa simple hanggang sa ellipse. Totoo, upang mabasa muli ang mga script ng object, kailangan mong gumawa ng isang bagay sa kanila - halimbawa, pagkatapos baguhin ang pananaw, i-highlight ang lahat ng mga puno, buksan ang window ng mga parameter ng object at, nang hindi binabago ang anumang bagay, i-click lamang ang OK, o i-click at alisan ng check ang checkbox na kapalit ng takip.

Hayaan mo akong ipakita ito gamit ang halimbawa ng tinatayang isang globo. Narito ang sinulat ko sa isang 3D script: 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_By ^ 2 + discam_z = 20 pagkatapos res = 50 kung discam20 pagkatapos res = 20 kung discam30 pagkatapos res = 10 kung discam> 40 pagkatapos res = 5 resol res sphere 1 Sa script ginamit ko ang Global Variables GLOB_EYEPOS_X, GLOB_EYEPOS_Y, GLOB_EYEPOS_Z ang mga coordinate ng lokasyon ng ang camera (mata) sa 3D-window ng proyekto at SYMB_POS_X, SYMB_POS_Y, SYMB_POS_Z ang mga coordinate ng lokasyon ng object sa kalawakan; abs - number module (inaalis ang "-", kung mayroon man); sqr - parisukat na ugat; ^ 2 - pag-square ng isang numero.

Sa window ng 3D, sa iba't ibang mga distansya mula sa camera, igaguhit ang globo na may iba't ibang mga approximations. Para sa kalinawan, binuksan ko ang mode ng wireframe (Larawan 20).

pag-zoom
pag-zoom

Sa pamamagitan ng Mga Global Variable, maaaring makatanggap ang object ng: - data tungkol sa lokasyon ng proyekto (hilaga, latitude, longitude, altitude), naitakda sa kaukulang dialog box; - kasalukuyang palapag at sariling palapag; - ang uri ng kasalukuyang view (halimbawa, sa mga GOST jumper ang sumusunod na kundisyon ay ginagamit: kung ang uri ng pagtingin ay isang listahan, pagkatapos ay bumuo ng isang view ng lumulukso sa isang seksyon na may mga namumuno sa posisyon); sa halimbawa sa isang lattice, maaari mong idagdag ang sumusunod na kundisyon: kung ang uri ng view ay isang listahan, pagkatapos ay huwag paikutin ang coordinate system, upang sa anumang kaso magkakaroon ng frontal view sa listahan ng mga lattices; - Hindi kumpletong pagpapakita ng mga konstruksyon (maaari mong gawin ang object na hindi ipakita ang ilang mga bahagi kung ang core lamang ang napili).

Maaari mong i-drag ang data ng pader sa isang window o object ng pinto. Ang mga callout ay maaaring makakuha ng maraming iba't ibang impormasyon tungkol sa elemento kung saan nauugnay ang mga ito, halimbawa, isang checkbox na may mga layer ng isang multi-layer na istraktura o isang namumuno na may dami ng isang elemento. At iba pa, 40 mga pahina ng magkakaiba at lubhang kapaki-pakinabang sa Mga Global Variable. HALIMBAWA 4 - marker ng zone Tingnan natin kung paano nilikha ang isang marka ng pasadyang zone. Kung lumikha ka ng isang bagong bagay at piliin ang subtype ng Zone Passport para dito sa seksyon ng Mga Detalye, pagkatapos ay sa seksyon ng Mga Parameter ang lahat ng mga tukoy na parameter na ipinapasa ng tool ng Zone sa marker ay ipinapakita sa asul (Larawan 21).

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

Gamit ang utos na TEXT2, maaari kang sumulat ng anuman sa mga variable na ito sa isang 2D script - ito ay kung paano ka makakakuha ng isang marker na binubuo lamang ng teksto (Larawan 22).

pag-zoom
pag-zoom

Gamit ang pangkalahatang mga parameter ng marker ng zone, maaari mong tukuyin ang istilo ng teksto at taas ng linya depende sa taas ng font: TUKURAN NG STYLE "ROOM" AC_TextFont_1, ROOM_LSIZE, 5.0 STYLE "ROOM" row = ROOM_LSIZE / 1000 * GLOB_SCALE * 1.5 text2 0, hilera, ROOM_NUMBER teksto2 0, 0, ROOM_NAME teksto2 0, -row, ROOM_AREA Maaari kang lumikha ng isang bagong parameter upang mapili ang uri ng marker (Larawan 23), magtakda ng mga pagpipilian para dito sa script ng Parameter (Larawan 24) at sa Sumulat ang script ng 2D ng iba't ibang uri ng pag-render ng marker para sa iba't ibang mga uri.

pag-zoom
pag-zoom
pag-zoom
pag-zoom

2D script: kung mt = "marker na may numero" pagkatapos text2 0, 0, ROOM_NUMBER CIRCLE2 0,0, row endif kung mt = "number and area" pagkatapos text2 0, row / 2, ROOM_NUMBER text2 0, -row / 2, Ang mga AREA_TEXT endif kung mt = "pamagat at lugar" pagkatapos ay text2 0, row / 2, ROOM_NAME text2 0, -row / 2, AREA_TEXT endif kung mt = "number, title and area" pagkatapos text2 0, row, ROOM_NUMBER text2 0, 0, ROOM_NAME text2 0, -row, AREA_TEXT endif kung mt = "area only" pagkatapos text2 0, 0, AREA_TEXT endif Sa script na ito, hindi ko ginamit ang paunang natukoy na variable ng lugar bilang isang lugar, ngunit binago ang lugar sa teksto at idinagdag sa unit ito: area = str (ROOM_AREA, 4, 2)! pag-convert ng isang numero sa teksto na may 2 decimal na lugar na AREA_TEXT = lugar + "sq.m." ! pagdaragdag sa halaga ng string ng mga titik na "sq.m." Maaari mong dagdagan ang mga linya sa marker na may mga linya na naghihiwalay sa ilang mga linya. Upang mahanap ang haba ng isang string, gamitin ang utos ng STW. Idagdag natin sa simula ng script: tl1 = stw (ROOM_NUMBER) / 1000 * GLOB_SCALE tl2 = stw (ROOM_NAME) / 1000 * GLOB_SCALE tl3 = stw (AREA_TEXT) / 1000 * GLOB_SCALE kung mt = "number and area" pagkatapos tl = MAX (tl1, tl3) kung mt = "numero, pamagat at lugar" pagkatapos tl = MAX (tl1, tl2) kung mt = "pamagat at lugar" pagkatapos tl = MAX (tl2, tl3) kung mt = "lugar lamang" pagkatapos tl = tl3 AT sa mga pagkakaiba-iba ng mga marker, idagdag ang mga linya na may LINE2 utos (Larawan 25).

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

Kung ang numero ng zone ay binubuo ng maraming mga digit, para sa marker, maaari kang lumikha ng isang parameter para sa radius ng isang bilog, malaya sa taas ng font, o sa halip na isang bilog, ilarawan ang isang hugis na tulad ng ellipse na may haba na katumbas ng haba ng linya ng numero ng zone na nakita namin nang mas maaga: POLY2_ 5, 1 + 2 + 4, -tl1 / 2, row, 1, tl1 / 2, row, 1, tl1 / 2, -row, 1001, -tl1 / 2, -row, 1, -tl1 / 2, row, 1001 Maaari kang magdagdag ng isang bagong parameter para sa uri ng sahig (FLOOR_TYPE) at isang parameter na nagbibigay-daan sa iyo upang itago o ipakita ito (ShowFloorType), at sa isang 2D script magdagdag ng isang tatsulok na may isang polyline at teksto na may uri ng sahig: kung ShowFloorType pagkatapos ay ADD2 0, row * 3 POLY2_ 4, 1, -row * 1.4, -row * 0.8, 1, row * 2.8,60,201, row * 1.4, -row * 0.8, 1, 0,0,700 text2 0,0, FLOOR_TYPE endif Para sa uri ng sahig, kanais-nais na magdagdag ng isang magkakahiwalay na parameter para sa panulat, pati na rin ang mga puntos para sa graphic na pag-edit ng lokasyon ng marker ng sahig. Inilarawan ko nang detalyado kung paano magdagdag ng mga graphic point sa pag-edit sa aking webinar, at gamit ang link sa dulo ng artikulo, maaari kang mag-download ng mga bagay at makita kung paano ito ipinatupad sa partikular na kasong ito.

At sa wakas, isaalang-alang natin ang isa pang napakahalagang subtype ng isang bagay na magbubukas ng magagaling na posibilidad - ang Global Parameter ng Library (Larawan 26).

pag-zoom
pag-zoom

Ang isang bagay na may subtype na ito ay hindi bumubuo o gumuhit ng anumang, tinutukoy nito ang mga parameter sa mga panonood ng modelo. Kaya, doon maaari mong kunin ang mga parameter na nais mong makita na karaniwan para sa bagay, ngunit sa parehong oras ay maaaring magtakda ng iba't ibang mga halaga para sa iba't ibang mga uri.

Ipapakita ko ito sa isang halimbawa ng isang marker ng zone. Natagpuan ko ang mga proyekto kung saan maraming mga hanay ng mga zone sa iba't ibang mga layer para sa iba't ibang mga pananaw. Kung mayroong pangangailangan para sa iba't ibang mga marker, kung gayon ang Library Global Parameter ay ang pinakamahusay na solusyon.

Mayroon akong isang marker kung saan posible na itakda ang uri ng sahig sa isang tatsulok at baguhin ang uri ng pagmamarka (fig 27). At ang dalawang mga parameter na ito ay inilipat sa isang hiwalay na file ng Global Library Parameter subtype (Larawan 28).

pag-zoom
pag-zoom
pag-zoom
pag-zoom

Para sa mga parameter na ito upang maipakita sa dialog box ng Model View Parameter, kailangan mong irehistro ang mga ito sa script ng interface ng object (Larawan 29). Hindi ako magtutuon nang detalyado sa mga espesyal na utos para sa script na ito, inilalarawan ang mga ito sa sapat na detalye at may mga halimbawa sa sangguniang libro. Sasabihin ko lamang na inilalarawan namin dito kung saan matatagpuan ang label na ito o ang pindutan (isang patlang na may pagpipilian ng mga pagpipilian, isang marka ng tseke, atbp.), Ang mga imahe ay maaari ring ipasok sa User Interface. Sa karaniwang silid-aklatan, halos lahat ng bagay ay may isang graphic na interface; maaari mong makita ang lahat ng mga posibilidad at makita kung paano nakasulat ang mga script na ito. Bilang karagdagan sa pindutan ng Suriin, ang script ay mayroon ding isang pindutan ng Tingnan. Sa pamamagitan ng pag-click dito, mabilis mong makikita kung ano ang nangyayari.

pag-zoom
pag-zoom

Maaari mong i-save ang object at tingnan ito sa dialog box ng Mga Pagpipilian sa View ng Modelo (Larawan 30). Dito maaari nating baguhin ang uri ng pagmamarka nang sabay-sabay para sa lahat ng mga zone sa proyekto (kasama ang marker na ito), ngunit magkahiwalay para sa iba't ibang mga uri.

pag-zoom
pag-zoom

Ngayon, sa object ng marker ng zone, kailangan mong tanungin ang bagay para sa mga halaga ng dalawang parameter na ito. Sa Pangunahing Script (na binabasa muna ng bagay, kaya't ang lahat ng mga kalkulasyon at kahulugan ng mga halagang dapat gamitin sa maraming mga script, mas mahusay na magsulat dito) Sumusulat ako ng dalawang linya tulad nito: tagumpay1 = LIBRARYGLOBAL ("LibraryGlobals20 "," ShowFloorType ", ShowFloorType) tagumpay2 = LIBRARYGLOBAL (" LibraryGlobals20 "," mt ", mt)" tagumpay "ay magiging 1 kung ang kahilingan ay matagumpay; kung hindi man ay magiging 0.

Maaari itong magamit upang magsulat ng isang mensahe ng babala sa halip na isang marker ng zone na ang object ng LibraryGlobals20 ay hindi pa na-load sa library.

Pagkatapos ang bagay ay gumagana tulad ng dati, gumagamit ng dalawang bagong mga halaga: kung ang uri ng pagmamarka ay tulad at tulad, pagkatapos ay isulat ang tulad at tulad, at iba pa. Sa artikulong ito, saklaw ko lamang ang isang maliit na bahagi ng mga kakayahan ng GDL. Sa tulong nito, maaari kang lumikha ng parehong napaka-simpleng mga elemento ng disenyo at napaka-kumplikadong mga bagay.

Halimbawa, nakikipag-usap ka sa maliit at simpleng mga bahay na SIP-panel. Mayroon kang isang tukoy na listahan ng mga pagpipilian para sa pagbabago ng proyekto: - ang haba at lapad ng bahay ay maaaring mula 2.4 hanggang 24 metro na may hakbang na 1.2 m; - kung ang lapad ay lumampas sa 6 m, pagkatapos ay dapat mayroong ibang pader sa gitna; - Dalawang pagpipilian para sa taas ng sahig depende sa laki ng panel; - bilang ng mga palapag - isa o dalawang palapag; - Ang mga bintana ay maaaring nasa ilang mga lugar ng mga panel ng isang tiyak na laki; - pagtatapos ng mga facade sa tatlong mga bersyon; - Pang-atip sa tatlong mga bersyon; - kapal ng pader ng maraming mga karaniwang laki at iba pa.

Maaari mong itakda ang lahat ng mga parameter na ito para sa bagay sa pamamagitan ng pagdaragdag ng gastos sa bawat square meter ng panel, bubong, dekorasyon, atbp. At sa 2D at 3D na mga script ng object, ganap na itayo at iguhit ang bahay na ito na may mga variable sa halip na mga static na sukat. Upang ang gumagamit ay hindi malito sa isang mahabang listahan ng mga parameter, maaari kang magsulat ng isang graphic na interface para sa maraming mga pahina na may mga larawan at diagram. Sa Pangunahing Script, kalkulahin ang lahat ng dami at ipakita ang gastos. Posible ring ipakita ang isang talahanayan na may layout ng mga panel sa isang 2D script sa tabi ng plano. Ang pagsulat ng gayong bagay ay kukuha ng maraming oras, kakailanganin mong gumuhit ng isang detalyadong pagtutukoy ng teknikal, magbigay para sa lahat ng mga nuances, ngunit pagkatapos ay makakatanggap ka hindi lamang isang bagay, ngunit halos isang programa kung saan, sa pamamagitan ng pagpili ng mga parameter, ikaw maaaring makakuha ng isang hanay ng isang draft na disenyo na may isang pagkalkula ng mga materyales at gastos para sa customer. Inaasahan kong ang pangkalahatang-ideya na ito ay nagbigay pansin sa isang tao sa mga kakayahan ng GDL. Ang aking kuwento ay nagsimula sa isang masigasig na pagnanais na baguhin ang ilang maliit na detalye sa ilang pamantayang pananda ng zone, at mas nabasa ko ang gabay, mas maraming potensyal ng tool na ito, sa palagay ko, lubhang kapaki-pakinabang para sa isang arkitekto, ay isiniwalat. Mula sa link sa ibaba maaari mong i-download ang lahat ng mga bagay na isinasaalang-alang bilang mga halimbawa sa artikulong ito: Mag-download ng mga halimbawa Tandaan Ginamit ang ARCHICAD 20 upang isulat ang mga bagay na ito, kaya't hindi ito bubuksan sa mga naunang bersyon. Tungkol sa GRAPHISOFT Kumpanya GRAPHISOFT® binago ang BIM noong 1984 kasama ang ARCHICAD® Ang unang solusyon sa BIM ng industriya para sa mga arkitekto sa industriya ng CAD. Ang GRAPHISOFT ay patuloy na namumuno sa merkado ng software ng arkitektura na may mga makabagong produkto tulad ng BIMcloud ™, ang unang real-time na nakikipagtulungan na solusyon sa disenyo ng BIM sa mundo, ang EcoDesigner ™, ang unang ganap na isinamang pagmomodelo ng enerhiya at pagsusuri ng kahusayan ng enerhiya ng mga gusali at BIMx® Ang nangungunang mobile app para sa pagpapakita at pagpapakita ng mga modelo ng BIM. Mula noong 2007, ang GRAPHISOFT ay naging bahagi ng Nemetschek Group.

Inirerekumendang: