[QGHG-it-dev-list] Zadatak 8 - ucitavanje kompleksa iz fajla

Nenad Korolija nenadko at gmail.com
Thu Nov 10 11:52:17 CET 2022


Zdravo Dušane,

Koliko vidim, snimanje simplicijalnog kompleksa radiš redom.
for (unsigned int lvl = 0; lvl < simpComp->elements.size(); lvl++) {
        for (auto ks : simpComp->elements[lvl]) {
Dakle, verovatno je redosled snimanja i učitavanja isti, tj. nema potrebe
da sortiraš po ID-u ili šta već.
Dakle, trebalo bi da Markov predlog dobro testira snimanje i učitavanje -
poređenje snimljenog sa onim što si nakon toga učitao pa snimio.

Vidimo se,
Nenad

On Wed, Nov 9, 2022 at 10:52 PM Marko Vojinovic <vmarko at ipb.ac.rs> wrote:

>
> Pozdrav Dusane i Nenade,
>
> Evo konacno sam se vratio u Srbiju i uspeo malo da se organizujem. Dosad
> se nisam odazivao jer sam bio bas pretrpan obavezama, nisam stizao da
> pogledam sta ste radili... :-( Ali nadalje cu biti malo bolji sa
> odgovaranjem na mail-ove. ;-)
>
> Dusane, vidim da si poceo da radis na citanju kompleksa iz fajla, i
> otprilike sam bacio pogled na ono sto si stavio u svoj branch dosad. Nisam
> testirao, ali pretpostavljam da radi, tj. da ispisuje na ekran ono sto
> procita? :-) Sto se tice posebne klase za I/O, svakako je napravi ako
> mislis da je potrebna, i Nenad i ja se slazemo. Javi dokle si stigao i kako
> ide.
>
> Btw, fundamentalni test za I/O moze da ide otprilike ovako:
>
> (1) seed-ujes neki kompleks SimpComp *G1 (npr. 5-sferu ili stagod),
>
> (2) snimis G1 u fajl-prvi.xml f-jom za snimanje (koju si napravio),
>
> (3) ucitas fajl-prvi.xml u novi kompleks SimpComp *G2, f-jom za citanje
> (koju sad pravis),
>
> (4) snimis G2 u fajl-drugi.xml f-jom za snimanje,
>
> (5) uporedis fajl-prvi.xml i fajl-drugi.xml (npr. diff-om ili cime god).
>
> Ako su dva fajla uglavnom identicna (do na vrednosti UniqueID brojeva i
> eventualne izmene u redosledu zapisivanja isl), test je prosao, i zadatak
> je resen. ;-)
>
> Osim toga, ako bi uspeo jos da namestis obe f-je (za citanje i snimanje)
> tako da cak i redosled kojim su stavke zapisane u dva fajla bude isti, tj.
> da fajlovi budu potpuno identicni (do na UniqueID-ove), to bi onda bila bas
> prava stvar. :-) Ali to nije obavezno --- redosled stavki u fajlovima u
> principu nije bitan, dokle god mozemo pouzdano da se ubedimo da fajlovi
> zaista sadrze iste podatke.
>
> :-)
> Marko
>
> P.S. Drago mi je da si se lepo proveo u CERN-u, i da postoji mogucnost da
> ides opet, svakako iskoristi priliku ako ti se ukaze...
>
>
> Dr. Marko Vojinovic
> Group for Gravitation, Particles and Fields
> Institute of Physics
> University of Belgrade
> ======================
> home page: www.markovojinovic.com
> e-mail:    vmarko at ipb.ac.rs
>
>
>
> On Mon, 7 Nov 2022, Nenad Korolija wrote:
>
> > Zdravo Dušane,
> >
> > Ja se slažem. Ima smisla izdvojiti celu I/O funkcionalnost u posebnu
> klasu, tj. fajl.
> >
> > Pozdrav,
> > Nenad
> >
> > On Sun, Nov 6, 2022 at 5:16 PM Dušan Cvijetić <
> dusancvijetic2000 at gmail.com> wrote:
> >       Pozdrav,
> >
> >       Predlažem da se za I/O funkcionalnosti napravi nova klasa, pošto
> >       trenutno radim na čitanju kompleksa iz fajla i imam mnogo pomoćnih
> >       funkcija koje sam napravio, a koje trenutno plutaju u etru, pa bi
> bilo
> >       lepše grupisati ih.
> >
> >       Pozdravi,
> >       Dušan
> >
> >       On 30/10/2022 19:58, Dušan Cvijetić wrote:
> >       > Pozdrav,
> >       >
> >       > Radim na čitanju iz fajla, pošto sam konačno prešao na Ubuntu.
> >       >
> >       > Da li treba sada da razmišljam i o hvatanju izuzetaka, ili je to
> tema
> >       > kojoj ćemo kasnije da se posvetimo?
> >       >
> >       > Pozdravi,
> >       > Dušan
> >       >
> >       > On 07/03/2022 06:00, Marko Vojinovic wrote:
> >       >>
> >       >> Vazi. :-)
> >       >>
> >       >> Sto se citanja iz fajla tice, obrati samo paznju kako ces da
> >       >> instanciras UniqueID boje --- moraces "rucno" da im menjas
> vrednosti
> >       >> na osnovu onoga sto procitas iz .xml fajla, jer konstruktor
> >       >> UniqueIDColor::UniqueIDColor() zadaje te id-jeve automatski.
> >       >>
> >       >> Takodje, kad sve zavrsis, treba da setujes vrednost za
> >       >> UniqueIDColor::next_free_uid_number na ono sto bi trebalo da
> bude
> >       >> prvi slobodan id broj. To je valjda id vrednost prvog simpleksa
> u
> >       >> fajlu, jer su oni u fajlu poredjani rastucim redom, a ti
> id-jevi iz
> >       >> fajla ne treba da postoje u konacnoj strukturi u memoriji, pa
> bi prvi
> >       >> od njih trebalo da bude "slobodan" na samom kraju...
> >       >>
> >       >> Jedino nisam siguran kako ce next_free_uid_number da
> funkcionise u
> >       >> kontekstu veceg broja istovremeno instanciranih kompleksa, ali
> to je
> >       >> pitanje dizajna o kome moram jos da razmislim.
> >       >>
> >       >> Ostatak algoritma osmisli sam, kako mislis da je najzgodnije.
> >       >>
> >       >> :-)
> >       >> Marko
> >       >>
> >       >>
> >       >> Dr. Marko Vojinovic
> >       >> Group for Gravitation, Particles and Fields
> >       >> Institute of Physics
> >       >> University of Belgrade
> >       >> ======================
> >       >> home page: www.markovojinovic.com
> >       >> e-mail:    vmarko at ipb.ac.rs
> >       >>
> >       >>
> >       >>
> >       >> On Mon, 7 Mar 2022, Dusan Cvijetic wrote:
> >       >>
> >       >>> Pozdrav,
> >       >>>
> >       >>> S obzirom da sam radio ispis u .xml fajl, preuzeću i učitavanje
> >       >>> kompleksa iz fajla.
> >       >>>
> >       >>> Pozdravi,
> >       >>> Dušan
> >       >>>
> >       >>> пет, 11. феб 2022. у 23:17 Marko Vojinovic <vmarko at ipb.ac.rs>
> је
> >       >>> написао/ла:
> >       >>>
> >       >>>       Implementirati metod u klasi SimpComp koji ce da procita
> dati
> >       >>> fajl i instancira u memoriji simplicijalni kompleks na osnovu
> >       >>> podataka iz fajla:
> >       >>>
> >       >>>          SimpComp* SimpComp::read_complex_from_file( file* f );
> >       >>>
> >       >>>          Input: Pointer na fajl iz koga se citaju podaci.
> >       >>>          Output: pointer na instancirani simplicijalni kompleks
> >       >>> kreiran na osnovu podataka iz fajla.
> >       >>>
> >       >>>       Ovaj zadatak treba da instancira nov prazan kompleks,
> zatim da
> >       >>> cita dati fajl, interpretira sintaksu iz zadatka 7, i da na
> osnovu
> >       >>> tih podataka popuni kompleks odgovarajucim
> >       >>>       simpleksima datih nivoa, a zatim i boje i susede svakog
> >       >>> simpleksa ponaosob. Ovo je u sustini inverzni algoritam u
> odnosu na
> >       >>> zadatak 7, i zavisi od tacne implementacije tog
> >       >>>       zadatka (tj. od tacne sintakse snimljenog fajla), pa ovaj
> >       >>> zadatak treba raditi tek kada budemo sigurni da smo skroz
> zadovoljni
> >       >>> sa radom f-ja za snimanje u fajl.
> >       >>>
> >       >>>       I u ovom slucaju cemo mozda uraditi vise verzija f-je za
> >       >>> citanje, po jednu za svaki format fajla.
> >       >>>
> >       >>>
> >       >>>       :-)
> >       >>>       Marko
> >       >>>
> >       >>>
> >       >>>       Dr. Marko Vojinovic
> >       >>>       Group for Gravitation, Particles and Fields
> >       >>>       Institute of Physics
> >       >>>       University of Belgrade
> >       >>>       ======================
> >       >>>       home page: www.markovojinovic.com
> >       >>>       e-mail:    vmarko at ipb.ac.rs
> >       >>>
> >       >>>
> >       >>>       --
> >       >>>       QGHG-it-dev-list mailing list
> >       >>>       QGHG-it-dev-list at ipb.ac.rs
> >       >>>       http://mail.ipb.ac.rs/mailman/listinfo/qghg-it-dev-list
> >       >>>
> >       >>>
> >       >>>
> >       >>
> >       --
> >       QGHG-it-dev-list mailing list
> >       QGHG-it-dev-list at ipb.ac.rs
> >       http://mail.ipb.ac.rs/mailman/listinfo/qghg-it-dev-list
> >
> >
> >--
> QGHG-it-dev-list mailing list
> QGHG-it-dev-list at ipb.ac.rs
> http://mail.ipb.ac.rs/mailman/listinfo/qghg-it-dev-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.ipb.ac.rs/pipermail/qghg-it-dev-list/attachments/20221110/e2b8d119/attachment-0001.htm>


More information about the QGHG-it-dev-list mailing list