l. wsTĘP 2. rnnŚcl PRoGRAMowE
Transkrypt
l. wsTĘP 2. rnnŚcl PRoGRAMowE
---l Renata Anna GORSKA Samodzielna Pracownia Geometrii Wykreślnej i Grafikl Inzynierskiej Politechnika Krakowska KOMPUTEROWA GRAFII(A INZYNIERSKA TREŚCI PRoGRAMowE A RE ALIZACJA l. wsTĘP Do przedmiotow, ktore ksaahują oblicze przyszłego nĄntera' naleĄ niewąĘliwie te, korych wykładowcami są uczefiricy kolejnych, ogolnopolskich seminariow p.t. '' Geometria i komputer''. Nazwy przedmiotow,o ktore idzie należywymienic po kolei: geometriawykreślna'rysunek techniczrry, projektowanie wspomagane komputerowo' graf*'a inżynierska,komputerowa grafika inrynierska, itd. Zastarlałvtamy się często jak daleko ich zakresy, cry racznj zawartosci programowe pokrywają się ze sobą. W wielu uczelniach, D2 niektorych specjalnościach,przedmiot geometria wylcreślnawręcz znilnął, a w jego miejsce pojawił się jeden z przdmiotow wymierriorych powyzej. Prowadzący te przedmioty modyfikują zawartościprogramowe (Koźniewski 94, Błach 94) wprowadzając elementy grafiki komputerowej mającej niejako uatrakcfnic przedmior i prze,maczając cząścEodzu: na zajęcia prry komputerze. lak pisze Błach (94) ,,taki podział (wprowadzenie3 gcdzrn pracy z komputerem . prryp. aut.)jest wska?2ny nawet przy bardzo małej|iczbiegodzlrrw semestr7ś,, . Rowniez Koźniewski (94) omawiając realizację unowocześnionego programu przedmlotu geometna wykreslna na Wydziale Budownictwa i InĄmierii Srodowiska Politechnikl Białostockie.;w relacji, jak podkresla autor, nowetradyc1ine ujęcie, sygnalizuje koniec:rrość prry1ęcianowej logikl wykładu.Na ile logrka ta sprawdza się w praktyce możnabędzie apytać w czasie dyskusji panelowychV Seminanum - Wisła 97. Tematem nrrriejszegoartykufu jest w szc7egolności zawartoścProgramowa przedmiotu Komputerowa graflca inĘnierska prowadzonego przez autorkę opracowania dla studentow 3-go semestru specjalności Zarz.ądz-ane i Markaurg Wydziafu Inzynierii Lądowe.; Polrtechniki Krakowskle.; w vtym.larzelW +lLab. W programretej specjalności nie ma przedmrotugeometriawykreślna.W ramach l.wszego roku studiow studenci uczeshiczą w zajęciach z rysunku technicanego' Nalery dodac iz specjalnoścZarządz.artiei Markalng (dalej. ZIM) zostałauruchomionadopiero przed dwu |aty na wydziale i ksztattuje rnzyniera budownictwa lądowego o profilu menadźEra,a zatem osobę w p rzyszłoś ci zar ządzającąp rocesami ałriązanynu z b udownictwem. 2. rnnŚcl PRoGRAMowE Wykłady z pr?fAmiotu Komputerowa Grafika Inzyniers|<azayvtęrajątreściprogramowe wylistowane ponizej. Głownym załoze em programu jest konsekwentnewprowadzanie Poszczegolnych elementow programu w taki sposob, aby na kolejnych cwlczeniach laboratory1nychrealizowany był wyłozony materiałw formie projektu. Taki sposob rea|izacjiwymaga ścisłe1 koordynacji wykładu z laboratorlum Wtygodniactr, wktorych studencirealizująfuPy programu(P'q.la |,f,3 i a) wykładanesąpodstawy teoreĘczte zagadnie grafiki komputerowej mające zastosowanie w komercfnych pakietach graficznycb i wyrnienionew punkcie 2.2. 2.1. WYKLADY Podstawy teoretyczre. Wprowadnrie do grafiki komputerowejna tle zastosowan ihistorii roałoju. Metody wyprowadzania informacji: grafika wektorowa i grafika rastrorła. Standardy graficzte: GKS (Graphical Kernel System), GKS-3D, system grafic:rry PHIGS (Programmer's Hierarchical lnteractive Graphics System) w ramach ANSI (American National Standards Institute)oraz ISO (lntemational Standards Organization) Standardy przemyslowe: Post Script (firmy Adobe), Open GL (firmy Silicon Graphics) i inne. - 19- KOMPUTEROWA GRAFIKA INZYNIERSKA i RYSUNEK KOMPUTEROV\ry SZKICODRECZNY BUDOWAMODELU3W (o DWZo R oWAIl lE KRA\^ĘDzl oWE) RZUTY I PMEKROJE P R OF I LM OD ELU3 W KO NWERSJA DO O D\AUOROWAN IA TYPU S|ATKA (MESH) EKSPORTPLIKUW FORMACIE I M P OR TOB I EK T U3 W DO PROGRAMU" 3D Studio" PROJEKT 3 PRZYPISANIE MATER|AŁU. TŁA l oŚW|ETLEN|A ł RENDER|NG NA EKMNIE ł MoN|ToRA I R EN D ER I N GN A D Y SK ANIMACJAOBIEKTU Rys. 1 SHEMAT BLOKO\^/ REALIZACJI PROGRAMOWEJ PRZEDMIOTU:KOMPUTEROWA GRAFII(AINZYNIERSI(A 2.2.Teoretycznezagadnienia grafiki komputerowej Elementy matematycanemodelowania geometrycalego.\ł'spotrzędnejednorodne.Przekształcenia2W. Macierze przekształcen:symetria środkowa,symetria osiowa (odbicie lustrzane), obrot, translacja. Przeksaałcenia w przestrzeni 3W' Zastosowanie rachunku macierzowego' Składanieprzekształcen' Algorymy rzrrtowania prostoĘtnego i rzutowania środkowego.Macierze prze|<snałce dla rzutu p erspektyvican ego tar. j ednopunktowego,drvupunktowego,trojpunktowego. Krzywe i powierzchnie stosowane w budownictwie - klasyfikacja. Ogolna teoria paramebyczrych krzywych trzeciego stopnia: krzywe Bezier,a, niejedrrorodnekrrywe sklejane. Ilustracja wygładzarria powierzchni bikubicmej (antenna systemowa programu AutoCAD SLIRFTY"E : 5 dla lovadratowej powierzchni B.sklejanej, :6 dla sześciennejpowierzchni B.sklejanej, SUFJT!"E-7 dla powierzchni Bezier'a) -20- t -I 2.3. PROJEKTY POJEKT 1 - Wykonanie plaskiego rysunku: Rzuty prostokątne kształtki. Wymiarowanie Pakiet AutoCAD r.l2 i jego zastosowanie w projektowaniu inzynierskim. Srodowisko graficme progrilmu i układ wqpohzędrrych ben,tzg|ędnych,wzglę&rych, biegunowych, sferyczrrych, walcowych. Rysoranie elementow podstawowych: Rysowanie precyzyjne. Modyfikacje obiektow nie zrrrleniające oDsUN, KOPIUJ, sz\.K, ZMIEŃ CECHY..) oraz kształru (polecenia PRzEStŃ, oBRoT, znrieniającekształtobiektow (polecenia:SKALA, UTNIJ, PRZERMJ, wYDŁUz, ...). Wymiarowanie obiektÓw rysunkowych. Dostosowanie zrrriennychprogramowych do wymogow PNB 01025 i 01029oraz PN-82/N-011614. PROJEKT 2 - Modelowanie 3W Modelowanie obiektow 3W. Repreztftacja krawędziowa MREFRAME) i powierzchniowa (MESFD obiektow. Wykorrystanie modufu AME dla zbudowania modelu. Metoda SOLID MODELING i zastosowanie algebry Boole'a dla tworzenia modeli złoi:onych Wykorrystarrie prymtyłow bryłowych: kostka, sfera, walec, stożek,torus, klin. operowanie i zrnlanakoloru (modelbarw RGB lub HS$' Zastosowanie obszaru modelu i obszaru papieru dla wykonania rzutow prostoĘtnych. Utułorzeniew rzutniach obiektow typu: PROFIL, PRZEKROJ. Metody obserwacji obiektow 3W: rzut rownoległy (aksonometria) i rzut środkowy.Włamości rzutu rownoległegoi rzutu środkowego.Up ro szczone cieniowanie. PROJEKT 3 . oświetlenie,cieniowanie i animacja . zastosowanieprogralnu 3D Studio. Konwersja obiekru do odwzorowania typu MESH. Eksport obieku u formacie DXF Operowanre walorami: śviatło,kamera. Przypisanie matenafu do obiektu i zdefinlowanie śwratłaWymaczanie lrrtensyvnościoświetlenia. rnterpolacjametodąGourauda lub Phonga (podstawyteoretycme) Rendering z wy]ściemna ekran i na dysk. Zmlana i przypisanie roznych materlałow do obrektu Zagadrrtenta mapowania (podstanoy teoretyczrre) i nakładania teksnrry. Formaty grafi,cme dla renderingu:jpeg, iges, targa, bmp, Wykonanie prostej animacji obiektu i prezentacjamodelu P R O F IL .50 lzol PR ZEK ROJ RZUT7 GOR}' nl KRZWDA GRZEGORZ Zil,|ll roĘ1996/97 \Y|L, Rys. 2. Ra|ty prostokątne ksztaltki,rzuty modelu 3W na obszar papieru. - 2 1- GrzegorzKMYWDA, II ROK, ZIM, WIL Grzegorz TUTAK, I ROK, ZIM, WIL TomaszKLIMALA, II ROK, ZlM, WIL Rys. 3. WYBRANE PRZYKŁADY MODELI 3w ZPRZYPISAjVYM MATERIAŁEM oSWIETLEMOWYN,I I TŁEM RENDERING. -22- progranlobroty: usesg.raph,crt; var t : a r r a y1 [. . 21,. . 2o] f r e a l , 1..4,1.2] of real; p,pk:arrayl x,y,xx,yy:anayllal of integer; teta:real: i nteger; i j,a,tet,ster,tryb: key:char. I t-) (JJ I BEGIN ster:=Detect; :\bP\bg' InitGraph(ster,tryb,'D ), {Czolowka} l2); setcolor( 1,0,6); settextstyle( rtext,toptext)' ustify(cente settextj div 2,getmaxydtv 2 - 25O.'AGATA KRENICH'). outte)iilxy(getmaxx 0,-5); settextstyle(4, czworokata'), div 2,getmaxydtv 2 + 190,'obrot outtextxy(getmaxx Repeat begn l4); setcolor( for i:=l0 to 60 do div 2.i). div 2,getmax1 circle(getmaxx setcolor(green); for i:=60to 120do div 2.i); div 2,getmaxy circle(getmapi setcolor(blue); for i:=120to 180do div 2,getmaxydrv 2,i): circle(getmaxx setcolor(black); for i:=I 80 dott'ntol0 do circle(getrna\xdir' 2,getmaxfdlv 2,i); { delay1l00).) end Until kelpresscd. ke1'.=readkel'. {cleardevlcc.} closcgraph. {*) {Wpi sywanic z klawiatury rvspolrzednychczworokata} u,ri tcl n ('Podaj rvspolrz.ednewi erzchol korv czwo rokata ĄB, C, D.) . rvrite(.Ąr=' ).rcad(p1l, t l ) ;write(.A5_' ),read(p[l, 2 l ) ; u,rite('Bx=');read(p[2,I i ) :writc('B5') ;read(p[2,2]) ; rvrite('Cx=');read(p[3. I ]) ;write('C5'), read(p[3,2J) ; rvrite('Dx=').read(p[4,I ]) ;write(tp5') ;read(p[4,2]) ; rvrite('Poda1kat obrotu czworokata wokol osi OZ w stopruach.teta=').read(tet); {*} st e r.= D e t e ct ;} { InitG raph(ster.tryb,'d:\bP\bgi') , {W spol rz-edneekranowe poczatkowego czworokata } lbr i:=I to 4 do begtn div 2 + 25*p[i,ll); xx[i]:=round(getmarr div 2 - 25*p[i,2]); yy[i]:=round(getmaxy end; {*) REPEAT cleardevtcc, FOR a:=0 to tet do begln {Narysowanie ukladu wspolrzednych} n); setcolor(gree I ,3); setlinestyle(O, line(0,getma.\ydiv 2,getmaL\,getmaxy div 2); line(gctmaxx div 2,O,getnuxx div 2,getmary); line(gctmaxx,getmaxydiv 2,getmaxx-lO,getmaxydiv 2 - l0); f line(getmaxx,getnraxydlv 2,getmaŃ\-l0,getrnaxydiv 2 + l0); div 2 - 10.10): line(getmaxxdiv 2,O,geLmaxx div 2 + 10,10); line(getmaxxdiv 2,O,getmax.r {*} poczatkou,cgo czrvorokata } {Rysow'anie setcolor(blue); line(xxII ],yyII ],xxIf),WIzl), 3],yy[3|); line(xx[2],yyt2l,xlr[ line(xx[3],yy[3],xx[4],y-v [4]); I I,tyII |), line(xx[4],yy[4l,xxI {*} {Macierzobrotuwokol osi OZ} teta.=pi*a/180; t[l,2l :=sin(teta), t[l, l] :=cos(teta); I :=-sin(teta); t[2, I tI2,2l:=cos(teta) ; I t\) Ą ! z macierzaobrotu} {Mnozeniemacierryrvspolrzednych for i::l to 4 do forj::l to 2 do *t[2j]; pktijl :=pli, I I*t[I j]+p[i.2] {Lilori dacja a}Cualnie wysrvietlanego rysunku} setcolor(black); line(x[I],y[Il,x[2],y[2]); line(x[2],y[2],x[3],y[3 I); line(x[3],y[3 ],x[4],y[4]); line(x[4],y[4],x[ I],yII ]); {*} for i:=l to 4 o" *lxt*lrzedne czrvorokata) ekranorve o 25 w x[i]:=trunc(getmaxx dir'2 + 25*pk[i,l]),{pomnoz cclu ) skali} y[i]:=trunc(getrnaxy div 2 - 25*pk[i,2l)',{zwiekszenia end; {Rysowanieczrvorokata} setcolor(lightred); Iine(xI I ],yII],x[2],y[2]); line(x[2 ); ],y[2],x [3],y[3] Iine(.x[3 ].y[3f.xIa],y[aJ); line(x[4],y[4],xI I I,ylll); {*} end; repeatuntil keypressed; kcy:=readkey; UNTIL key:#f1',{ESC} closegraph: {Koncou'esprarvdzeniematematyczne } rvriteln('Wspobzedneczworokatapo obroci e'); writeln(pk[ l, ll :4:2,",pk[1,2] .4.f)', wnteln(pkl2.ll.4 .2,'',pk[2,2] .4:f); rvriteln(pk[3, I J:4:2,",pk[3,2]:4:2); writeln(pk[4,I].4'.2,'',pk[4,2]'.4'.2)', END. Rys.4.Przykładprogramugraficznegow języku Turbo Pascal7.0 realizującego obrÓt czworokątawokołosi z I PROJEKT 4 . Grafika i pme|łsźalceniageometryczne realizowane w języku Turbo Pascal lęzyk Turbo Pascal 7.o i moduł GRAPH w zastosowaniachgrafiorrych. Struktura proglarnu w języlol Turbo Pascal. Typy arriennych. Podstawoł'efuŃcje iprocodury języka. Inicjowanietrybu graficznego: procedura InitGraph oraz zamloięcia'. CloseGraph. Zastosowanieprocedur graficnych dla rysowania ,,wprost'' na ekranie monitora oraz do wykorzystania w prosĘc}r programach realizującycb prznkształceniageometrycme. Stałe:rodzajow linii, grubości,rypehriania konturow, krojÓw pisma, kierunku wyprowadzarria tekstow i rozrrriaruliter. Rysowanie linii, okręgu, hlku, wleloĘta, elipsy. Zastosowanie ję,yka progTamowania do interpretacji przekształcerl geometryczrrych zilustrowano prrykładem przedstawionym na rys.4 idotyczącym obrotu c2$/orokąta,|eĄcego w płaszczyźnieoxy wokoł osi z o dowolny kąt 3. REALIZACJA - PRZYKŁADY PRAC sTUDENTow Na rys. f,3 i 4 pokazarroprrykłady prac realizowanychw czasie ;:jęc przedmlm'owych.Peh'y Proces dydaktycmy zaHada. o a p r7eProw adzxr'ttewykładu wp rowad " ającego p rzłd ka zdą j ednostką cwl czeni ową wykonanie przn,zstudentaw ramach cwiczen laborator;inychprojekow o temaĘce: rzuty prostoĘtne z-adanej ksaałtki z wymiarowaniem. programAutoCAD r.I,2, modelowanie 3W zwykorry,staniemmodufu AME (rys.2), wykorryrstanieobszaru modelu i obszaru papieru dla stworzeniarzutow, przekroju i profilu kształt]<l, prze|<ształcenie modelu w odwzorowaniu siatkowym (MEsrD i eĘort pliku w formacie DXF, praca w programie 3D-Studio, nadaniemateriafu,oswretlenia,dodaniekamery, renderrng,animac.;aobiektu (rys.3), listingu proglamu grafikę zrea|lzowanąw ję"yku programowaniaTurbo Pascal 7 0 (y:rzykład zał'ączono na rys.4), z wybranegozagadnienlarealizowanegow sporządzen|eprzez studentaraportuw formlepisemne.; czas|euJęć 4. TIWAGI DYDAKTYCZNE I PODSUMOWANIE Realizac.;a programu przedmiotu w ciągu ostabrich dwoch lat skłania autorkę do sformułowania p ewnych spostrzezendydaktycmy ch. ograniczenre czasowe do lh laboratoriumnie skłaniado zastosowaniasystemuzajęćpo 2h co dwa tygodnie. W takrm systemie prowadzono zajęcia w pierwszym roku isurienia przedmiotu' W drugim roku pracy zrealizowano program w siatce lh tygodniowo.Z punktu widzenia dydaktykl realizacja w tym system-re . pozwoliła na: staty, corygodnionrykontakt ze studentami, . działałamobilizująco na studentow, . zapobiegała utracie kontaktu studentow z przedmiotem, co starrowilo niebezpieczeristwo w prąrpadku nieobecrrości na jee'ych crriczeniach w cyklu dwuĘgodniowym ( pr,y jedoej nieobecrrości studentnie ma kontaktu z przedmiotemPrlnz cztery tygodnie i po takim czasie musi za,czpac niejako ,,odnowa'). . Realizacja programowa pokrywa się w ogolnym zar1,siez zawartościąprograrnową wykładanego przedmiotuw uczelniachzachodnich(FOLEY95, ROGERS90, PARLETLIN9S, i in.). o \Ą/chwili obecnej,prry zrożnicowanympoziomie prrygotowaniawstglnego studerrtow,zvttaszc7aw zakresie programowania w dowolnym jęryku , na|eĘ w sposob elasĘczrry podchodzic do zagadnieit programowania pozostawiając studentommoź:liwość wyboru midzr wykorrystaniem komercyjnych pakiaow CAD i cAM, a indyvidualnym programowaniemgrafi.ki.Podstawy teoretyczrre$<ładane w czasie kursu stanowić powinny ba,ę dla takidr działa . o Modyfikacja programowa jest i będzie możliwaw miarę przychdzenia studentÓw o odpowiednim zasobie wledzy w zakresieprogramowania. -f5 - Przy.;ęcieksztahek 3W jako modeli do odwzorowania a nastgrnie utworzenia wlrtualnego modelu 3w pozruloliło na zrealizowanie szerokiego zakresu programowego pocrynając od dwuwymiarowego rysunku z wyitarowaniem, przaz utworzenie modelu 3-wymiarowego do animacji i renderingu'Taki proces jest zgodny z nowoczesnątechnologiąprojektowaniai produkcji. Zaobserwowane w rolan akademickim |996197 zaartgażowaniew ra|izację programu, Za szczegolnym uwzgl$nieniem trojetapowego pĄektowania crj" podstawy do stwierdzenia iż, zainteresowaniep rzedmiotemjest duże' BIBLIOGRAFIA I ANGELL, I.0, Wprowadzeniedo grafiki komputerowej,WN-T, Warszawa 1988, 2' BŁACH, A., Miejsce i rola geometrii wykreślnej oraz rysunku techniczrego w kształtowaniu osobowosci urżyniera, Mat' III ogo|nopolskiego Seminarium Nowoczesne metody nauczania geometrii wykreślneji elementowpodstaw konstnlkcji inżynierskich,Wisła |994, 3 GORSKA, R., PTEKARSKI, L., CAM Methods for Shaprng 3D Surface Patches, Zeszyt JubileuszowyPK, Krakow 1995, 4 GORSKA, R., Komputerowagrafika urzynierska,konspektwykładow,(niepubl.), 5 FOLEY, J.D, A. Van DAM, FEINER,S.K., et al., Wprowadzeniedo grafiki komputerowej, tfum..prof.Jan Zabrodzki, WN-T, Warszawa 1995, 6 KOZNIEWSKI, E., Geometna wykreślnalnna niż dawnrej,Mat. lII ogolnopolskiego Seminarium Nowoczesna me|ody nauczania geometrii wykreślne1 i elementow podstaw konstrukcji tnżvnier.ski ch' Wisła 1994, '7 JANKOWSKI, M , Elementygrafiki komputerowej,WN-T, Warszawa 1983 8 MARCINIAK, A , Turbo Pascal 7.0,NAKOM, 199-5, 9 PARLETUN,L.G., FOLLIN, A., FranCAD till PDM, skryptuczelnianyKTH, Stockholrn,1995 l0.ROGERS,D., ADAMS, J., Mathematicalelementsfor computergraphics,McGraw-Hrll Publishing Company, 1990, l l RZEZNICKI, D., 3D Studiow prrykładach, Lynx.Sft, Warszawa |993 12 SWISZCZOWSKI, S., et al , AutoCAD 12 & lfPL., Skrypt uczelnianyPK, l9g4 COMPUTER ENGINTEERING GRAPHICS CI]RRICI]LTJM CONTENTS AND REALISATION In the paper oblectives and aims of the curriculum of ,,ComputerEngrneeringGraphlcs" course are discussed Maur author's idea is not only to presentto Civil Engineeringstudents CAD and CAM techniques& software but ąlso to give them theoretical basis for engineeringgraphics. These basis encourage students to use Turbo Pascal programmlng language fortherealisationofgeometrical transformation Each student, who attendsthe course, has an opportunityto sketch, design a 2D shape and create a 3D-model of the objea. He then transforms it to t.dxf file format and exports from AutoCAD prograrnmeto the3DStudroprograrruneFinally,he rendersit having assignedto the model such propertiesas colour, material,lights. He also preparesanimationof the object.From the didaaic point of view,shortageof time for the project realisationcauses that every srnglehour is significant for the project completion Students very often take advantageof the time of consultationhours for the project realisation -26-