# NFCtag.rs — 24 konceptualna 3D modela

Modeli prate oblike i boje dostavljene fotografije. V3 prati poslednji simbol: tri zakrivljene linije i podebljana velika slova NFC ispod, bez tačke i bez kruga. Slova N, F i C izrađena su kao prava izdignuta geometrija; C je otvoren udesno. Telo, boja, otvori i spoljne mere sačuvani su iz v1. Svaki model sadrži stvarnu 3D geometriju: telo, prolazni otvor za kačenje, izdignut NFC simbol i, kod prvih pet zdravstvenih modela, poseban crveni krst. Beli model u obliku krsta nema dodatni crveni simbol.

- **24 GLB fajla sa materijalima:** `public/models/reference-v3/`. Jedinica je metar. Telo, NFC simbol i crveni krst su odvojeni čvorovi.
- **77 STL fajlova:** 24 tela, 24 NFC simbola, 5 medicinskih krstova i 24 sjedinjena modela. Jedinica je milimetar. STL ne čuva boje; za boje koristite GLB ili zasebne delove.
- **Izmenjivi generator:** `scripts/products/generate_reference_models.py`.
- **Dimenzije i izveštaji:** `manifest.json` i `validation-report.json`.
- **Pregled modela:** `mesh-contact-sheet.png` prikazuje svih 24 GLB modela izračunatim 3D prikazom; ovaj pregled služi za vizuelnu proveru geometrije.

## Dimenzije i pretpostavke

Donji prikaz reference koristi Ø30 mm za okrugli oblik, osnovu debljine 3 mm i izdignut simbol od 0,8 mm. Legenda navodi i NFC prečnik 30 mm; stvarne mere čipa i ležišta treba zasebno potvrditi. Modeli koriste te vrednosti; ukupna visina je 3,8 mm. Konture ostalih oblika, otvor prečnika 2,8 mm, zakošenje ivice od 0,28 mm i materijali/boje predstavljaju projektantske pretpostavke. Tačne spoljne mere za svaki oblik navedene su u manifestu.

Modeli nemaju unutrašnji prostor za NFC čip ili antenu: struktura i stvarne dimenzije elektronike nisu dostavljene. Glatko zakošenje otvora širi ulaz za 0,28 mm; 2,8 mm je prečnik središnjeg prolaznog dela. Oko otvora nominalno ostaje najmanje 1,7 mm materijala.

GLB materijali koriste linearne vrednosti `baseColorFactor`, izračunate iz sRGB heksadecimalnih boja navedenih u manifestu. Osvetljenje prikaza može dodatno promeniti subjektivan izgled boje. Vrhovi zvezde, štita, šestougla i krsta dodatno su zaobljeni poluprečnikom 0,4–0,6 mm.

Ose: X = širina, Y = dužina, Z = debljina. Prednja strana sa simbolom je u smeru +Z. Geometrija GLB-a je skalirana iz milimetara u metre. Za direktni prikaz kao privezak po potrebi rotirajte ceo model oko X ose.

## Provera

Generator proverava da svaki deo predstavlja zatvoren, pravilno orijentisan volumen i da simboli ostaju unutar obrisa tela. Model u jednom komadu spaja telo sa reljefom uz unutrašnje preklapanje od 0,01 mm; spoljašnja ukupna visina ostaje 3,8 mm. Odvojeni STL delovi počinju na originalnoj prednjoj ravni Z = 3 mm.

Nezavisni validator ponovo učitava svaki izvezeni STL i GLB. Proverava zatvorenost, smerove površina, pozitivnu zapreminu, jedinstvenost sastavljenog volumena, bojene GLB čvorove, tri zakrivljene linije i tri zasebna slova NFC bez tačke/kruga, debljinu i prolaz vertikalnog zraka kroz otvor. To je geometrijska provera, a ne potvrda spremnosti za proizvodnju. Čvrstoća, tolerancije, stvarna plastika, štampa, montaža elektronike i NFC funkcionalnost zahtevaju zasebnu proveru i probni fizički uzorak.

## Ponovno generisanje

```sh
python3 -m venv tmp/model-env
tmp/model-env/bin/pip install -r scripts/products/requirements-models.txt
tmp/model-env/bin/python scripts/products/generate_reference_models.py --version reference-v3
tmp/model-env/bin/python scripts/products/validate_reference_models.py --version reference-v3
tmp/model-env/bin/python scripts/products/render_model_contact_sheet.py --version reference-v3
```

Generator piše isključivo u verzionisane direktorijume `reference-v3`. Izmenite parametre ili konture u generatoru i koristite novi naziv verzije pre zamene odobrenih fajlova.
