Mendys
Období: Týden 14/2026 (od 05.04.) Skupina: tria URL: https://github.com/alexanderFIV/Mendys.git
1. Splnění základních podmínek
| Podmínka | Status |
|---|---|
| Alespoň 3 commity v daném týdnu | ✅ SPLNĚNO |
| Rozestup alespoň 12h mezi 3 commity | ✅ SPLNĚNO |
| Projektová dokumentace (README, projekt.md) | ❌ NESPLNĚNO |
2. Přehled commitů
- 2026-04-05 12:56: documentation grammar fixing :)
- 2026-04-08 06:25: magstripes and an attempt on "3d minimap"
- 2026-04-08 18:29: barcode qr and logo import option addition + minor fixes qr generation unfortunatelly does not work
- 2026-04-11 16:15: another atempt at minimap
3. Výsledky AI analýzy kódu
| Metrika | Hodnota |
|---|---|
| Celkové body (AI) | 17 / 20 b. (85%) |
| Náročnost projektu (Index) | 4 |
| Počet commitů | 4 |
| Změněné soubory | 2 |
| Počet přid./odeb. řádků kódu | 597 |
Komentář a zpětná vazba od AI
Dobrý den, jako tvůj pedagogický asistent jsem prošel tvůj repozitář a kód za uplynulý týden. Je vidět, že jsi na projektu "Project Preview" odvedl kus náročné práce, zejména v oblasti uživatelského rozhraní a integrace grafických prvků.
Zde je tvé hodnocení:
1. Smysluplnost popisů u commitů [3 body]
Zprávy jsou věcné a popisují přesně to, co se v kódu změnilo (např. redesign navigačního panelu, přidání podpory pro loga a QR kódy). Oceňuji upřímnost v commitu z 8. dubna, kde přiznáváš, že generování QR kódů zatím nefunguje. Drobné překlepy v angličtině (atempt, unfortunatelly) nebrání srozumitelnosti.
2. Smysluplnost komentářů v kódu [5 bodů]
V kódu se orientuješ pomocí logických bloků a komentářů, které vysvětlují účel jednotlivých částí (např. # The "Cube" Grid (3x3), # Side Switcher). To je velmi důležité při takto komplexním UI. Bod ubírám za to, že by si komplexnější metody (např. výpočet souřadnic pro grid.addWidget) zasloužily krátké vysvětlení logiky, jak indexuješ pozice v matici.
3. Kvalita a srozumitelnost dokumentace a struktura repozitáře [1 bod]
Struktura repozitáře je příkladná – každý projekt má svou složku, používáš .gitignore.
Vytknout však musím tyto nedostatky:
- V repozitáři máš složku __pycache__ (soubor Ppcolorpallete.cpython-313.pyc). Tyto soubory do verzovacího systému nepatří, uprav si .gitignore.
- Soubor Project preview/Ppcolorpallete.py obsahuje překlep v názvu (správně "palette").
- Dokumentace v Documentation.md je sice velmi podrobná a aktuální, ale hlavní README.md v kořenu je stále velmi strohé a neobsahuje instrukce ke spuštění.
4. Logika řešení a přemýšlení studenta v Pythonu [8 bodů]
Tvůj posun v logice aplikace je vynikající. Přechod z jednoduchého seznamu tlačítek na interaktivní ViewCubeHUD pomocí QGridLayout svědčí o dobrém pochopení práce s frameworkem PySide6.
- Pochvala: Implementace třídy GraphicObject a její následné vykreslování v paintGL pomocí p.drawImage je čisté a rozšiřitelné řešení.
- Chyby a postřehy:
- V souboru Ppmain.py v metodě __init__ máš dvakrát pod sebou self.setModal(True).
- Při vytváření tlačítek v cyklu používáš konstrukci list(self.views.keys()).index(key)//3. To je v Pythonu zbytečně neefektivní (převádíš slovník na seznam v každém kroku cyklu). Lepší by bylo použít enumerate při procházení položek.
- Oceňuji ošetření stran karty (Front/Back) a přepočet rotace kamery.
Celkem získáno bodů: [17 / 85%] ze 20 možných
Slovní hodnocení: Pracuješ na technicky náročném projektu, který kombinuje 3D grafiku (OpenGL) a komplexní GUI (PySide6). Tvůj kód je čistý a postupuješ systematicky. Pokud opravíš drobné chyby v redundantním kódu a vyčistíš repozitář od cache souborů, bude to perfektní. Jen tak dál!
DIFFICULTY_INDEX: [4]
Kontrolní otázka k obhajobě
V metodě
go_totřídyViewCubeHUDsčítášcoords[1] + ry_offset. Proč jsi pro boční pohledy (tlačítka L a R) zvolil v maticiself.viewshodnotu rotace 35 stupňů místo kolmých 90 stupňů, a jak se tato hodnota chová v kombinaci s offsetem 180 stupňů při aktivním režimu „BACK“?