{
  "opis": "Adapter 40 mm na miejsce wentylatora 2510 w glowicy Kobra S1. Wartosci DO WERYFIKACJI suwmiarka na wlasnej sztuce.",
  "plate": 46.0,
  "thick": 4.0,
  "bore": 33.0,
  "slots": [
    { "opis": "4 szczeliny narozne pod wentylator 40 mm (rozstaw otworow 32 x 32 -> sruby w promieniu 22,63 mm; sruba M4). Przecinaja naroznik na wylot, wiec toleruja odchylke rozstawu ok. +/-3 mm",
      "cx": 19.45, "cy": 19.45, "len": 15.0, "wid": 4.4, "ang": 45 },
    { "opis": "narozna 2", "cx": -19.45, "cy": 19.45, "len": 15.0, "wid": 4.4, "ang": 135 },
    { "opis": "narozna 3", "cx": -19.45, "cy": -19.45, "len": 15.0, "wid": 4.4, "ang": 135 },
    { "opis": "narozna 4", "cx": 19.45, "cy": -19.45, "len": 15.0, "wid": 4.4, "ang": 45 },

    { "opis": "2 szczeliny na krawedziach poziomych pod oryginalne sruby M2.5 (rozstaw 20 mm wzdluz osi X -> sruby w x = +/-10)",
      "cx": 16.0, "cy": 0, "len": 18.0, "wid": 3.2, "ang": 0 },
    { "opis": "krawedziowa 2", "cx": -16.0, "cy": 0, "len": 18.0, "wid": 3.2, "ang": 0 },

    { "opis": "2 szczeliny na krawedziach pionowych pod oryginalne sruby M2.5 (rozstaw 20 mm wzdluz osi Y -> sruby w y = +/-10)",
      "cx": 0, "cy": 16.0, "len": 18.0, "wid": 3.2, "ang": 90 },
    { "opis": "krawedziowa 4", "cx": 0, "cy": -16.0, "len": 18.0, "wid": 3.2, "ang": 90 }
  ],
  "uwagi": [
    "Rozstaw 32 x 32 mm to standard wentylatorow 40 mm (Noctua NF-A4x10: otwory 32 x 32 mm).",
    "Oryginalny wentylator 2510 (25 x 25 x 10): przyjeto rozstaw srub 20 x 20 mm, M2.5. Szczeliny zrobione w OBU osiach, wiec plytka pasuje niezaleznie od tego, czy oryginalne sruby sa w pionie czy w poziomie.",
    "Wszystkie szczeliny sa otwarte na zewnatrz (przecinaja krawedz/naroznik): druk bez podpor, a otwarte szczeliny kompensuja odchylke rozstawu otworow (przesuwasz sruby w szczelinie).",
    "Uklad wspolrzednych: srodek plytki = (0,0), grubosc od z=0 do z=thick - model gotowy na stol drukarki bez obracania.",
    "Jesli pomiar wyjdzie inny, zmien cx/cy oraz len/wid w tym pliku i uruchom: node cad/make_adapter.mjs"
  ]
}
