Kochova pahulja

Teme vezane za console/GUI programiranje u C/C++ jeziku
7 post(ov)a • Stranica: 1/1.

Kochova pahulja

PostPostao/la Navkov » 30 srp 2014, 18:04

Moj prvi post B-)

Pozdrav ljudi, nikako da napišem nešto, pa evo malo praktičnosti. Šaljem u privitku moj prvi C program koji sam napisao prije par mjeseci(objavio sam i na jabucnjak.hr-u), pa možemo malo prokomentirati kod. Program ocrtava Kochovu pahulju, a s tipkama A i B se povećava/smanjuje iteracija.

Koristio sam glfw koji je stvarno jako jednostavan za svoju namjenu, on kreira prozor s OpenGL-om,prima ulazne signale(tipkovnica,miš...) i da naravno, cross-platform je.
Kako u OpenGl-u ne postoji niti jedna funkcija za ocrtavanje teksta, napisao sam traljavu(tek toliko) funkciju koja učitava slovo i ocrtava ga kao bit mapu. Mogao sam implementirati FreeType ali tada nisam imao dovoljno znanja.
Privitak/ci
Kochova_pahulja_kod.zip
(2.95 KiB) Preuzeto 165 put/a.

Re: Kochova pahulja

PostPostao/la Tracer » 30 srp 2014, 23:05

Zanimljiva stvar. Mislio sam malo bolje pogledati zbog implementacije glfw-a ali izgleda da nude implementaciju samo kroz statički dll linking za Visual Studio i mingw, a ja koristim C++ Builder. Šteta.

Re: Kochova pahulja

PostPostao/la gagiD » 31 srp 2014, 00:39

Dobrodosao Navkov :)

Da zanimljiva je pahulja :-BD

Re: Kochova pahulja

PostPostao/la Navkov » 31 srp 2014, 19:51

Tracer je napisao/la:Zanimljiva stvar. Mislio sam malo bolje pogledati zbog implementacije glfw-a ali izgleda da nude implementaciju samo kroz statički dll linking za Visual Studio i mingw, a ja koristim C++ Builder. Šteta.


Ali opet, možeš ga kompajlirati iz izvora. Nisam nikad koristio C++ Builder(prije je bio Borland?) ali zašto bi to bila zapreka. Znam da ima svoj kopajler, koji ljudi govore da je jako loš naspram drugih.

"Statički dll linking" Ne želim biti cjepidlaka ali radi početnika koji čitaju ovaj forum,mislim da bi bilo jasnije reći load-time dynamic linking (po meni precizniji opis) jer ljudima nije jasno kada pročitaju statički,a DLL stoji za Dynamic-link library.

Linkovi ako nekoga zanima:




Mislio sam recenzirati knjigu od Jessea Libertya - "Naučite C++ za 21 dan", jer knjiga je na nekim dijelovima totalno loša, važne stvari nisu spomenute. Ali ono što mi se sviđa su opisi i usporedbe, gdje je vrlo maštovito opisano za početnike(klase,OOP...). Imam prevedenu knjigu, ali prijevod je na nekim dijelovima nekonzistentan, kao da je više ljudi prevodilo(i je,sad pogledao :)) ). Mislim kako neke riječi ne bi trebalo prevoditi, nego jednostavno ostaviti izvorno, jer je kasnije lakše pronaći na internetu traženi pojam. Ali u ovoj knjizi sve je u rasulu, malo prevode kod, pa negdje ostave izvorno u tekstu, a onda u riješenjima drugačije. Netko bi rekao da je to nebitno, ali ja mislim da je za početnike jako bitno.
Detaljnije drugi put :ymcowboy:

Re: Kochova pahulja

PostPostao/la Tracer » 31 srp 2014, 20:53

Navkov je napisao/la:Ali opet, možeš ga kompajlirati iz izvora.
Nema potrebe. Samo me zanimalo iz radoznalosti. C++ Builder ionako ima ugrađenu podršku za HD i 3D aplikacije te cijeli komponentni model u tu svrhu.

Navkov je napisao/la:Nisam nikad koristio C++ Builder(prije je bio Borland?) ali zašto bi to bila zapreka. Znam da ima svoj kopajler, koji ljudi govore da je jako loš naspram drugih.
Nije više Borland. Sada je Embarcadero.

Ma da? Koji su to ljudi? Jer, meni se čini da ti ljudi nemaju pojma pošto je riječ o compileru koji isti code prevodi za Windows, MAC, iOS i Android platforme bez ikakve modifikacije koda. U ono vrijeme kada je Borland bio vlasnik tih alata (Delphi, C++ Builder) moglo bi se reći da je to bilo osrednje, no danas kada to vodi Embarcadero to je sasvim druga priča. C++11, čak i dijelovi C++14 standarda su već podržani sadašnjim compilerom, tako da je stalno up-to-date.

Navkov je napisao/la:"Statički dll linking" Ne želim biti cjepidlaka ali radi početnika koji čitaju ovaj forum,mislim da bi bilo jasnije reći load-time dynamic linking (po meni precizniji opis) jer ljudima nije jasno kada pročitaju statički,a DLL stoji za Dynamic-link library.

Jasno se zna što je statičko dll povezivanje jer prilikom njega se koristi statička lib biblioteka samog dll-a. Stoga, tu nema što biti nejasno. Usto, ta terminologija se koristi i u učenju na fakultetima pa je početnicima svakako preporučljiva.

Re: Kochova pahulja

PostPostao/la Navkov » 31 srp 2014, 21:26

Koliko si platio software, vidim imaju različitih paketa?

Tracer je napisao/la:
Navkov je napisao/la:Jasno se zna što je statičko dll povezivanje jer prilikom njega se koristi statička lib biblioteka samog dll-a. Stoga, tu nema što biti nejasno. Usto, ta terminologija se koristi i u učenju na fakultetima pa je početnicima svakako preporučljiva.


Kod ovoga se možemo do neba raspravljati, ja samo kažem da mi je ono precizniji naziv. Spomenuo sam ga jer sam prije čitao raspravu oko toga. Znam kako ovakve teme završavaju, pa je bolje da ne gubimo vrijeme.

Re: Kochova pahulja

PostPostao/la Tracer » 31 srp 2014, 21:32

Ne želim niti ja ulaziti u neke rasprave oko terminologije, no meni osobno load-time dynamic linking je neprecizno iz razloga jer aplikacija također može pri svom pokretanju automatski napraviti "load" dll funkcija s LoadLibrary, GetProcAddress i FreeLibrary. No velika je razlika koristiti taj pristup ili "adresar" funkcija koji se dobije od statičke lib biblioteke.

No svejedno, svatko ima pravo preferirati sebi prikladniji naziv/pristup ;)

Edit: Ja koristim Profesionalnu verziju C++ Buildera još od 2000.g. Software je poprilično skup (oko 2000 eura za novog korisnika, upgrade 45% cijene), no uz njega se dobije pravo more dodatnih alata i komponenti. Trenutno u paleti imam oko 800 komponenti za što god mi padne na pamet. Probaj si za prvu ruku naći na crno pa isprobaj, a za pravi doživljaj instaliraj i dodatne DevEx i TMS komponente.

Cjenik (izgleda da je sada i jeftiniji):
http://embarcadero.konto.hr/?page_id=216


7 post(ov)a • Stranica: 1/1.

Na mreži

Trenutno korisnika/ca: / i 1 gost.