3D vs 2D

Prezent si perspective (dorite) īn CAD

De Roberto IOSUPESCU

Cum va evolua lumea CAD-ului este o īntrebare care a nascut multe discutii. Cum va evolua ea la noi este si mai greu de precizat. Sa īncercam - fara sa avem pretentia ca am epuizat subiectul - sa trasam niste repere, iar timpul va confirma, sau infirma, daca īntr-adevar, lumea 3D este viitorul proiectarii asistate de calculator.

Aproape toata lumea care foloseste astazi calculatorul īn lucrari de proiectare a pornit trasānd o linie, un cerc sau un arc de cerc, īntr-un program de CAD cu care s-a īntālnit īntāmplator, sau despre care a auzit cāte ceva de la un prieten, sau a citit īntr-o revista mai mult sau mai putin specializata īn domeniu. Mai departe, īn functie de curiozitatea fiecaruia, lucrurile au avansat, sau s-au oprit aici. Cei care s-au oprit au avut motivele lor s-o faca si nu-i poti condamna. Realitatea este ca la noi, proiectarea asistata de calculator nu a aparut dintr-o necesitate a utilizatorului, deci a proiectantului, ci mai mult dintr-o moda, adusa fiind de valul tranzitiei (… si ce mai val!). Sa nu uitam ca instrumentele CAD sunt instrumente ale eficientei si īn acest context trebuiesc ele judecate: merita sau nu merita. Proiectarea asistata de calculator este folositoare atunci cānd exista un grad relativ ridicat de repetabilitate a proiectului, cānd exista (sau poate fi creata) o baza de date cāt mai completa, sau cānd relatiile contractuale o cer (si aici este cazul multora dintre contractele cu parteneri straini). De multe ori, cel putin īn perioada de implementare a proiectarii asistate de calculator, se īncearca o comparare a unui proiectant clasic (experimentat), cu unul (īncepator) ce lucreaza pe calculator, comparatie neelocventa daca o analizam izolat. Dar daca tinem cont de modificarile ulterioare ale proiectului (si nu exista proiect sa nu aiba), iar apoi la proiectele urmatoare, de refolosirea de elemente deja proiectate, lucrurile par sa se mai echilibreze. Totul trebuie cāntarit īn functie de finalitate.

Dar sa ne īntoarcem la liniile noastre.

Īn proiectarea clasica (si vom numi astfel de acum īncolo proiectarea la planseta) se porneste de la executarea vederilor si sectiunilor unui obiect, avānd permanent īn minte forma reala - 3D - a obiectului. Facem deci o traducere a realitatii, folosind niste conventii. Traducerea este astfel facuta de un om pentru alt om, transmitāndu-i astfel intentiile sale. Cel de-al doilea om, preia informatia si o traduce din nou, de asta data catre o masina. Masina (sau uneori omul direct) preia la rāndul ei informatia astfel prelucrata si transforma ideile īn realitate, creānd obiectul. Ati sesizat sper personajele: primul om este proiectantul (sa folosim aceasta denumire generica), iar al doilea este muncitorul: lacatusul, strungarul, frezorul, turnatorul (nu, nu, nu acela…).

Īncercānd sa vina īn ajutorul oamenilor, programele de CAD au īncercat sa eficientizeze cāt mai mult proiectarea. Initial s-a mutat activitatea de proiectare de la planseta pe calculator, realizāndu-se o "desenare asistata de calculator". Oamenii au vrut īnsa mai mult, au vrut sa scape de activitatile de rutina din proiectare (suruburi, piulite etc.) si sa aiba mai mult timp pentru creatie. Au aparut astfel biblioteci de elemente si diverse unelte (mici programe atasate) ce rezolvau probleme concrete. Toate erau īn 2D, iar finalitatea era un desen pe hārtie.

La un moment dat, cineva s-a gāndit ca ceea ce concepe, sa transmita direct masinii. Pentru asta (dar nu numai pentru asta), era nevoie de date suplimentare care sa defineasca realitatea. Cel mai simplu a fost sa defineasca obiectele īn toate cele 3 dimensiuni si s-a trecut astfel la proiectarea 3D. Aceasta a facut sa se schimbe si metodologia proiectarii, pornind de la reprezentarea reala a obiectului īn 3D, spre realizarea vederilor si sectiunilor ce compun documentatia īnsotitoare. Realizarea obiectului īn 3D este, sau cel putin asa pare la prima vedere, mai dificila decāt reprezentarile 2D, cu care oricum proiectantii sunt deja obisnuiti. Dar odata realizat proiectul 3D (modelarea 3D a obiectului cum mai este cunoscuta aceasta operatiune), reprezentarile 2D se pot obtine fara mult efort, avānd de asta data garantia corectitudinii lor (erorile ce frecvent apar la trecerea de la o vedere la alta sunt acum eliminate total). Modul de reprezentare a obiectului, īn 2D sau īn 3D, depinde mult de finalitatea lucrarii si de etapele proiectarii. Astfel, pentru o piesa ce urmeaza a fi prelucrata pe o masina cu comanda numerica, este mult mai avantajoasa realizarea modelului 3D, mai ales ca exista programe specializate de simulare a prelucrarii si de realizare automata a procesorului si postprocesorului pentru un anumit echipament (vezi pachetul de programe al firmei OpenMIND ce rezolva partea de prelucrare pe masini cu comanda numerica din cadrul "Solutiei complete de proiectare asistata de calculator īn domeniul mecanic" propuse de Autodesk). De asemenea, realizarea analizei cu element finit se face mult mai corect si mai aproape de realitate pe un model 3D. De pot face astfel determinari intermediare care sa dea indicatii utile īn proiectarea reperului.

Sunt evident si situatii īn care este suficienta o reprezentare 2D, chiar si pentru o analiza cu element finit. Este cazul pieselor uniforme pe una din directii (a treia), obtinute prin extrudarea unei suprafete īn aceasta directie. Acesta este si exemplul pe care īl dau realizatorii pachetului de programe "Genius", īn care fac o analiza cu element finit a bratului unei pedale de frāna, pe o reprezentare 2D a acesteia. Aproximarea este suficient de buna pentru stadiile intermediare de proiectare, analiza finala facāndu-se totusi pe modelul 3D, cu pachete de programe dedicate acestei activitati.

Definitii 2D - 3D

Īn programele de CAD, reprezentarea obiectelor 3D se face īn trei moduri: prin modele wireframe, reprezentarea prin suprafata exterioara a obiectului - surface - si prin corpuri solide - solid. Sa vedem cāteva caracteristici specifice ale fiecarei reprezentari.

Wireframe: Este primul mod īn care s-au reprezentat obiecte īn trei dimensiuni. Īn acest mod, corpul este compus dintr-o suma de linii, arce si cercuri, ce-l marginesc. Este practic o colivie, care la rāndul ei, nu are proprietati de masa, dar sugereaza bine volumul. Aceasta reprezentare ramāne la stadiul de sugestie a realitatii 3D, deoarece proprietatile corpurilor astfel definite nu respecta legile fizicii (pot ocupa acelasi volum fara sa se deranjeze reciproc, fara a sti unul de altul). Este īnca un mod de reprezentare 3D folosit pentru a pastra compatibilitatea "īn jos", spre versiuni anterioare, dar si pentru ca, din pacate, multe programe īl folosesc ca singurul mod de reprezentare 3D. Singura informatie continuta de corp despre el este dimensiunea acestuia.

Surface: Este cazul īn care un volum este reprezentat prin suprafata sa exterioara, de grosime zero. Similitudinea se poate face cu un ou gol, sau cu un balon umflat. Ca si la reprezentarea wireframe, doua corpuri astfel definite - surface - pot ocupa partial sau total acelasi loc īn spatiu fara sa stie una de alta. Pe lānga propriile dimensiuni, corpurile definite astfel mai au informatii despre aria suprafetei ce le definesc. Deci au o arie. Aceasta forma de reprezentare a obiectelor 3D este avantajoasa pentru ca este usor de manevrat (nu necesita resurse mari) si suprafetei i se poate atasa o textura. Cu alte cuvinte, aceasta metoda este buna cānd este mai important cum arata obiectul decāt cum se comporta.

Solid: Este modul de definire a obiectelor 3D cel mai apropiat de realitate. Atributele ce īnsotesc reprezentarea grafica īi confera obiectului un comportament identic (sau aproape) cu perechea sa din realitate. Astfel, doua (obiecte) solide nu pot ocupa acelasi loc īn spatiu fara sa se deranjeze reciproc, recunoscānd vecinatatea altui corp (vezi operatiile booleene). Īn plus fata de obiectele definite ca suprafete, solidele mai au si proprietate de volum (deci, daca definim un material, si de masa), momente de inertie etc. Reprezentarea prin solide este directia spre care īn prezent merg majoritatea programelor de CAD, dezvoltānd facilitati de manevrare a obiectelor īn acest format.

Scurt istoric 3D - AutoCAD

Īn functie de performantele programelor si ale masinilor pe care rulau programele, reprezentarea 3D a parcurs mai multe etape. Si pentru ca AutoCAD-ul este, īn momentul de fata, cel mai raspāndit program de CAD de la noi, vom urmarii aceasta evolutie, a reprezentarii 3D, la diversele versiuni ale sale.

2D. Initial (pe la 1982…) AutoCAD-ul a pornit ca un instrument de desen 2D. Pe parcursul evolutiei, au īnceput sa apara primele elemente 3D:

Wireframe. Prima versiune de AutoCAD care a continut elemente de 3D a fost Release 10 (si care a fost si prima "emanatie" postrevolutionara cu care am putut lua contact). Aceasta a fost practic prima versiune care a suportat modul wireframe de reprezentare 3D. Este momentul cānd liniile si cercurile puteau avea orice pozitie si orientare īn spatiu; poliliniile puteau avea si ele orice orientare īn spatiu, dar vertexurile erau obligatoriu īntr-un singur plan. Ulterior a aparut ca entitate AutoCAD 3DPOLY, la care vertexurile puteau fi si īn planuri diferite, dar aveau un mare neajuns: nu puteau fi alcatuite decāt din segmente de linie, nu si din arce de cerc.

Surface. Comenzile de baza cu care AutoCAD-ul descrie suprafete 3D sunt: 3dface, Revsurf, Rulesurf, Edgesurf si Tabsurf. Ulterior s-au dezvoltat rutine LISP ce aveau la baza aceste comenzi pentru a construi corpuri geometrice de baza: sfera, con, paralelipiped, tor, piramida, calota sferica, rutine ce au īnsotit apoi permanent pachetul de baza sub numele de 3D Objects.

La baza tuturor acestor figuri geometrice stau doua tipuri de suprafete: 3dface, care este o suprafata cu o singura fata, marginita de trei sau patru laturi (colturi) mesh compus din suprafete multiple (polyface) ce poate avea fatetele primare distribuite īn planuri diferite īn spatiu. Deoarece acesta este singurul mod īn care anumite programe reprezinta corpurile 3D, reprezentarea prin suprafete este mijlocul de exportare a datelor, chiar daca la origine au fost corpuri solide. Īn aceasta situatie, deoarece pot aparea ambiguitati īn definire, este necesar a stabili pentru suprafete fata interioara si cea exterioara, deci conteaza sensul de definire a colturilor: īn sens orar sau īn sens trigonometric. O definire defectuoasa a unei astfel de suprafete 3dface poate duce la aparitia de "goluri" la reprezentarea randata.

AutoCAD-ul a folosit - si foloseste īnca - cu succes acest tip de reprezentare īn zonele de prezentare.

O alta reprezentare 3D - care se situeaza īntre wireframe si surface este cea prin linii cu grosime - thickness. Ca avantaje ar fi rapiditate si usurinta mare īn folosire. De exemplu, pentru īncadrarea īn situl existent a unui anumit proiect (realizat cu toate detaliile necesare cu unelte consacrate), trasarea vecinatatilor se poate face rapid si suficient de sugestiv folosind (poli)linii cu thickness, īn loc de a construii īn detaliu fiecare constructie īnvecinata. Dezavantajul acestui tip de reprezentare este ca nu suporta texturi, iar pāna la versiunea 12 a AutoCAD-ului, era foarte dificil (uneori imposibil) sa se faca referire la puncte particulare (osnap) pe directia extrudarii.

Solid. Notiunea de solid s-a a aparut pentru prima oara la AutoCAD R12 prin introducerea modulului AME - Advanced Modeling Extention. Tot atunci corpurile 3D au primit noi proprietati: volum, masa, moment de inertie, etc. A fost practic primul pas īn reprezentarea 3D īn care obiectele se comportau asemanator realitatii: se puteau reuni sau scadea unul din altul, rezultānd tot corpuri, cu muchii de intersectie reale, adresabile.

Dar lucrul cu AME era foarte greoi si necesita resurse mari, mult mai mari decāt modulul de baza AutoCAD, (poate unul din motivele pentru care se comercializa separat de modulul de caza AutoCAD), cu program propriu de instalare.

Pe lānga asta, o serie de alte neajunsuri au facut ca utilizarea pachetului AME sa fie limitata. Dintre acestea:

Īn AutoCAD R13, modulul AME a fost īnlocuit de nucleul ACIS, de data aceasta inclus īn pachetul de baza. Acesta este mult mai rapid, devenind practic standardul īn modelare 3D. Acesta a rezolvat din neajunsurile AME-ului, dar a venit cu propriile neajunsuri unul fiind faptul ca nu mai exista comanda Solmesh, ceea ce creeaza probleme la exportul solidelor catre programe ce nu suporta decāt suprafete.

Pentru modelele create cu AME, exista posibilitate transformarii lor īn noul format (se pierd īnsa ceva informatii: culori etc.).

Īn loc de concluzie

Modelarea 3D este directia īn care merge proiectarea asistata de calculator. Avantajele acestui mod de lucru sunt mari, dar nici efortul de a lucra astfel nu este de neglijat. Mereu trebuie gasit optimul dintre efort si efect. Se pot de exemplu face combinatii intre cele doua moduri de lucru: un post de lucru realizeaza modelarea si analiza 3D, furnizānd apoi vederi si sectiuni 2D pentru alte posturi de lucru care realizeaza documentatia, completeaza eventual desenul cu cote, note, indicator etc.

Un mod īn care proiectarea 3D ar fi foarte utila ar fi realizarea catre furnizorii de produse din industrie a modelelor 3D pentru piesele din productia proprie. Astfel, un catalog de produse ar putea fi īnsotit de o biblioteca de modele 3D pe care un utilizator le-ar insera direct īn propriul proiect alaturi de alte repere, cu o economie de energie īn favoarea creativitatii (si unde mai puneti ca īnsisi furnizorii ar fi interesati sa ofere aceste modele, realizate prin efort propriu sau apelānd la firme specializate; deci de lucru pentru toata lumea!).

Alegerea modului de lucru, pentru a avea rezultate, trebuie corelata cu finalitatea lucrarii. Am avut placerea sa iau parte la un seminar unde se prezentau o serie de programe de simulare pentru industrie (ambutisare, turnare si forjare). Prezentarea a fost frumoasa si interesanta, discutiile tehnice s-au pornit, pāna cānd, cineva a īntrebat de pret, moment īn care s-a facut liniste. Toata lumea s-a speriat de pretul mare al produsului, fara sa-l coreleze cu eventualele efecte pe care le-ar putea obtine folosindu-l: de exemplu pretul pe care-l implica introducerea unei noi linii de matrite pentru o caroserie auto noua; o socoteala simpla, globala, ne arata ca investitia este repede amortizata (nu este mai putin adevarat ca daca urmatoarea matrita se face peste 30 de ani, programul nu mai este la fel de util!). Iar daca la asta mai adaugam si aspectele ecologice, destul de greu de cāntarit īn bani, utilitatea acestui mod de lucru este si mai evidenta.

Si vorbind despre simulari, un alt exemplu īn care modelarea 3D este avantajoasa este montajul unei instalatii. Avānd modelul 3D al instalatiei este acum posibila stabilirea unui grafic de interventie la instalatie, cu determinarea precisa a reperelor ce trebuiesc demontate pentru o anumita situatie si ordinea executarii lucrarilor.

Ca forma de implementare a acestui mod de lucru, cele mai bune rezultate s-au obtinut cānd s-a lucrat direct pe proiecte reale - la īnceput s-au ales unele mai mici si cu un grad scazut de risc - din care s-au putut trage concluzii pentru pasii urmatori.

Nu ramāne decāt sa īncercati. Masinile sunt acum destul de puternice si de accesibile, programele au avansat si ele, a ramas doar utilizatorul sa se convinga de utilitatea modelarii 3D. Sper ca macar un pic v-am convins.


(C) Copyright Computer Press Agora