Сделал ещё два калькулятора плитки - для стен и фартука. Рассказываю, почему пришлось пилить отдельные
Открыл, посчитал — и понял, что UX превратился в анкету: пользователь должен сначала выбрать тип поверхности, потом ему открываются нужные поля, плюс куча условий «если санузел — спроси про дверь, если фартук — спроси про вытяжку».
Получалась форма на 15 полей, половина из которых для конкретного человека не нужна. Я в маркетинге давно усвоил простую штуку: каждое лишнее поле на форме режет конверсию процентов на десять. А тут их было пять-шесть лишних в каждом сценарии.
Разделил на три отдельных калькулятора. Каждый под свою задачу, с минимумом полей и со своей логикой расчёта запаса.
В чём стены сложнее пола
С полом всё линейно: длина × ширина × коэффициент запаса под способ укладки. Сложности появляются только если в комнате хитрая форма — эркер, ниша.
На стенах базовая формула — периметр × высоту — даёт цифру, от которой ещё нужно вычесть всё, чего на стенах нет. А именно:
- двери (обычно 0,8×2,1 м, но бывают и 0,9, и арки нестандартные);
- окна (если санузел частный дом или квартира с окном в ванной);
- ниши под смеситель, шкаф, стиралку;
- короба с трубами — чаще всего наоборот добавляют площадь, потому что плиткой обкладывают и сам короб.
Я закладывал в логику расчёта возможность добавлять и вычитать произвольные зоны: пользователь забивает свои размеры, калькулятор плюсует или минусует. На полу такое тоже было, но там это редкий сценарий — на стенах это базовый.
Второй момент — раскладка с разной плиткой сверху и снизу. Классическая схема: внизу тёмная, вверху светлая, между ними бордюр. Считается как две разные площади, и калькулятор должен это понимать. Сделал переключатель «одна плитка / две плитки + бордюр» — при выборе второго варианта появляется второй блок с размерами.
Третий — подбор рисунка. Если плитка с крупным декором (мрамор, панно), обрезки нельзя пускать в ход — узор не сойдётся. Это +5% к запасу, и я добавил соответствующий чекбокс. Мелочь, но эти 5% — это одна-две упаковки, реальные деньги.
Почему фартук вообще отдельная сущность
Когда пилил калькулятор стен, попробовал в нём же посчитать фартук на свою кухню. Получилось коряво:
- высота фартука 60 см, а калькулятор стен спрашивает про потолок;
- за плитой и вытяжкой плитка идёт выше — этого в логике стен нет;
- на фартуке всегда розетки, а на стенах ванной их 0–2 максимум;
- любимый формат для фартука — кабанчик 7,5×15, а калькулятор стен под такие мелкие плитки давал странный запас.
Стало ясно, что фартук — это вообще отдельный кейс. Стена там одна, размеры маленькие, но нюансов больше, чем кажется.
Что я добавил конкретно под фартук:
- Заход за плитой и вытяжкой. Отдельные поля «ширина плиты» и «насколько выше идёт плитка». По умолчанию 30 см вверх — это типовой случай, когда вытяжка стоит на 145 см от пола, а фартук остальной комнаты на 145 заканчивается.
- Розетки. Поле «количество розеток на фартуке». Каждая добавляет +1 плитку к запасу — потому что при резе под розетку плитка часто колется.
- Раскладка кабанчика. Если выбран кабанчик и раскладка «вразбежку» — запас автоматом 15%, а не 10%. Половинки на стыках идут в брак чаще, чем кажется.
- Декоративная полоса. Чекбокс «есть полоса мозаики или контрастной плитки» — открывается отдельный блок для расчёта в погонных метрах.
Что планирую дальше
В работе ещё пара калькуляторов.
Параллельно собираю шаблон, чтобы делать новые калькуляторы быстрее — копировать каркас, менять только поля и формулы.
Ссылки
Если кому-то пригодится посмотреть, как реализованы:
- калькулятор плитки на пол — пять способов укладки, визуальная раскладка сверху, расход клея под формат;
- калькулятор плитки на стены — учёт дверей и ниш, две плитки с бордюром, подбор рисунка;
- калькулятор плитки на фартук — заход за плитой, розетки, отдельная логика для кабанчика.