{"_readme":"Модели конфигуратора по коллекциям (ключ - адрес страницы /katalogproduktsii/<ключ>). Для каждой модели: name - название, src - картинка двери (дверь по центру на светлом фоне; подписи по углам не мешают), price - цена комплекта в рублях или null. Геометрию (коробка, стекло, ручка) конфигуратор находит на картинке сам. materials: ral - цвета RAL, veneer - шпон. glass - стекло вручную, если конфигуратор не нашёл его сам: список прямоугольников [x, y, ширина, высота] в долях кадра двери (0..1); края подгоняются к рамке. Можно {\"r\": [...], \"bars\": [колонки, ряды]} - раскладка, \"snap\": false - без подгонки. Пустой список - стекла нет. casing: false - дверь без наличников. {\"r\": [...], \"hold\": true} - участок «не трогать»: там дверь остаётся как на фото, даже внутри стекла (\"oval\": true - овал/круг в рамке r, край ровный). Рисуется в редакторе стёкол. {\"r\": [...], \"wall\": true, \"rot\": градусы} - рамка «не заливать» (с поворотом): внутри неё стекла нет, дверь как на фото; если рамки лежат на стекле с cross, свой крест не рисуется (планки уже обведены на фото). На уровне коллекции: glass - \"keep\" (стекло/витраж всегда как на фото) или \"none\" (стекла нет); detectMetal: false - не искать ручку/петли (для шпона). \"lines\": [колонки, ряды] - тонкая латунная решётка поверх стекла; \"keep\": true - этот проём как на фото (витраж). facet: true - у стекла скошенная кромка (фацет), она тоже стекло. seed: [x, y, ширина, высота] - откуда начинать заливку стекла (для стекла с вырезом); flood: false - стекло с отражением, без заливки. cross: true - косой крест из планок цвета полотна. glazed - есть ли у модели стекло (true/false): по нему модели во вкладке «Модель» делятся на «Без остекления» и «С остеклением». Проставлено по разбору фото; если поля нет - конфигуратор решает сам. smoothPaint: true — сглаживать шум исходного фото при окраске RAL/NCS; древесный рисунок шпона сохраняется. highlightStrength — сила светлых бликов (0..1). hardware — точная маска ручек и петель в долях обрезанного кадра двери: rect [x,y,ширина,высота] или ellipse [центрX,центрY,радиусX,радиусY]; radius — скругление прямоугольника в долях ширины кадра. При полной ручной разметке detectMetal: false исключает ложное сохранение теней и бликов полотна.","collections":{"realta-2":{"models":[{"name":"Реалта 1","src":"images/modeli/realta/price/realta1.jpg","price":33630,"glazed":false,"hardware":[{"ellipse":[0.15632754342431762,0.5313152400835073,0.03300248138957817,0.013883089770354906]},{"rect":[0.15632754342431762,0.5292275574112735,0.11910669975186104,0.010438413361169102]},{"rect":[0.8982630272952854,0.12212943632567849,0.011166253101736972,0.055323590814196244]},{"rect":[0.8982630272952854,0.8402922755741128,0.011166253101736972,0.05636743215031315]}],"hardwareExact":true},{"name":"Реалта 3","src":"images/modeli/realta/price/realta3.jpg","price":33630,"glazed":false,"hardware":[{"ellipse":[0.170316301703163,0.5360125260960334,0.03236009732360098,0.013883089770354906]},{"rect":[0.170316301703163,0.5334029227557411,0.11192214111922141,0.010438413361169102]},{"rect":[0.8832116788321168,0.13569937369519833,0.010948905109489052,0.054279749478079335]},{"rect":[0.8832116788321168,0.837160751565762,0.010948905109489052,0.055323590814196244]}],"hardwareExact":true},{"name":"Реалта 4","src":"images/modeli/realta/price/realta4.jpg","price":33630,"glass":[[0.3,0.1,0.47,0.55]],"glazed":true,"hardware":[{"ellipse":[0.1694915254237288,0.5375782881002088,0.03220338983050847,0.013883089770354906]},{"rect":[0.1694915254237288,0.535490605427975,0.11380145278450363,0.010438413361169102]},{"rect":[0.8813559322033898,0.13569937369519833,0.010895883777239709,0.054279749478079335]},{"rect":[0.8813559322033898,0.837160751565762,0.010895883777239709,0.055323590814196244]}],"hardwareExact":true},{"name":"Реалта 9","src":"images/modeli/realta/price/realta9.jpg","price":33630,"glazed":false,"hardware":[{"ellipse":[0.17061611374407584,0.5501043841336117,0.03151658767772512,0.013883089770354906]},{"rect":[0.17061611374407584,0.5480167014613778,0.11137440758293839,0.010438413361169102]},{"rect":[0.8815165876777251,0.13987473903966596,0.01066350710900474,0.055323590814196244]},{"rect":[0.8815165876777251,0.8611691022964509,0.01066350710900474,0.05636743215031315]}],"hardwareExact":true},{"name":"Реалта 11","src":"images/modeli/realta/price/realta11.jpg","price":33630,"glazed":false,"hardware":[{"ellipse":[0.17772511848341233,0.5360125260960334,0.03151658767772512,0.013883089770354906]},{"rect":[0.17772511848341233,0.5334029227557411,0.10900473933649289,0.010438413361169102]},{"rect":[0.8720379146919431,0.13569937369519833,0.01066350710900474,0.054279749478079335]},{"rect":[0.8720379146919431,0.837160751565762,0.01066350710900474,0.055323590814196244]}],"hardwareExact":true},{"name":"Реалта 12","src":"images/modeli/realta/price/realta12.jpg","price":33630,"glass":[[0.24,0.34,0.54,0.43]],"glazed":true,"hardware":[{"ellipse":[0.17061611374407584,0.5480167014613778,0.03151658767772512,0.013883089770354906]},{"rect":[0.17061611374407584,0.5469728601252609,0.10426540284360189,0.010438413361169102]},{"rect":[0.8815165876777251,0.13987473903966596,0.01066350710900474,0.055323590814196244]},{"rect":[0.8815165876777251,0.8590814196242171,0.01066350710900474,0.055323590814196244]}],"hardwareExact":true},{"name":"Реалта 13","src":"images/modeli/realta/price/realta13.jpg","price":33630,"glazed":false,"hardware":[{"ellipse":[0.1630669546436285,0.5255741127348643,0.028725701943844495,0.013883089770354906]},{"rect":[0.1630669546436285,0.524008350730689,0.10043196544276457,0.010438413361169102]},{"rect":[0.8920086393088553,0.13465553235908143,0.009719222462203024,0.054279749478079335]},{"rect":[0.8920086393088553,0.8465553235908142,0.009719222462203024,0.054279749478079335]}],"hardwareExact":true}],"room":{"src":"room-realta-2-optimized-20261015.webp","w":1672,"h":941,"top":84,"bottom":828,"open":[719.9999999999999,185.00000000000003,954.9999999999999,773],"focus":[0.7,0.5],"light":false},"defaultRal":"7021","defaultModel":"Реалта 13","defaultNcs":"S 7502-Y","highlightStrength":0.45,"smoothPaint":true,"detectMetal":false,"enamel":{"strength":0.14}}}}