README.md

Документация проекта ведется в obsidian. Для корректного отображения диаграмм рекомендуется использовать desktop-версию.

Описание

Прототип интерфейса приложения для конфигурации оконной конструкции и ее расчета в не метрических системах единиц. Предположительная ENV: Apache Cordova -> APK. Можно перейти с JS на Vue или Quasar, но потом будет больно на поддержке. Основные устройства: android смартфоны/планшеты (v.7+) Клиент не предоставляет референсов и принципов проектирования, не участвует в проектировании, поэтому прототип - есть предложение проекта.

Глоссарий (концептуальная модель)

Прототип создается с учетом достаточной универсальности прикладного решения. Исходная задача: прототипирование оконного конфигуратора-калькулятора. Ввиду того, что оконные конструкции (как и любые световые конструкции) во многом схожи по построению с дверными конструкциями, необходимо было ввести некоторые абстрактные понятия.

  • Створка конструкции (construction casement) - объект конструкции, который может занимать часть проема или весь проем (дверной или оконной) конструкции. Например, одностворчатое окно содержит только 1 створку.
  • Проем конструкции (construction space) - объект, описывающий пространство конструкции, внутри которого размещаются створки(-а).
  • Конструкция (construction) - объект, содержащий створки(-у) конструкции и проем конструкции (пространство), ограничивающее размещение створок.

Управление свойствами конструкции, проема и створок осуществляется с помощью приборных панелей, именуемых тулбар (toolbar).

Единицы измерения

  • Все измерения проводятся и записываются в In, далее для расчетов переводятся в sq ft или lf.
  • Inch (дюйм), краткое обозначение «in»
  • Foot (фут), краткое обозначение «ft» или «‘», 1 ft = 12 * in
  • Square foot (квадратный фут), краткое обозначение «sq ft» или «sf» для расчета площади материала
  • Linear foot (погонный фут), краткое обозначение lf для расчета материала в погонных футах
  • Валюта $

Формулы расчета прямоугольного объекта с длиной и шириной в in:

  • SF = (длина створки * ширина створки) / 144 ^770241
  • LF = (длина окна + ширина окна) / 6 ^a4b2a2

Экспериментально, примем промежуточный коэффициент отображения дюймов на пикселях = 0.02, который можем использовать как коэффициент масштабирования по-умолчанию

Створки конструкции: опции и расчет

Тип створки и вариант открытия (исполнение) обозначаются условно (аббревиатурами):

  • PICTURE WINDOW (PW) – глухарь, тонкий профиль
  • FIXED CASEMENT (FC) – глухарь, толстый профиль
  • CASEMENT (CAS) – открывается наружу, левое и правое открывание
  • AWNING (AWN) – открывается наружу, верхнее и нижнее открывание, только горизонтально
  • SINGLE SLIDER TILT (SST) – слайдер, открывается половина, левое или правое открывание
  • SINGLE HUNG TILT (SHT) - слайдер, открывается половина, верхнее и нижнее открывание
  • END VENT (ENDV) - слайдер, широкий размер, в центре глухарь, стороны открываются к центру 
  • WHOPPER WINDOW (HOP) – открывается внутрь (подвальное)

Итого 12 видов створок: awn_down, awn_up, cas_left, cas_right, endv, fc, hop, pw, sht_down, sht_up, sst_left, sst_right.

Цены створок по типам и диапазонам площадей

Стоимость за 1 единицу площади из диапазона площадей ( [[README#^770241|SF]] x price )

price (SF/$) (0..6] (6..7] (7..8] (8..9] (9..10] (10..11] (11..12] (12..13] (13..14] >14
PW 75,33 71,43 67,50 62,44 60,20 58,00 56,67 56,46 56,29 55
FC 83,33 80,86 72,88 67,22 65,90 62,91 60,83 60,31 60,14 60
CAS 99,33 94,00 84,50 79,11 75,00 71,45 68,67 67,54 67,29 65
AWN 107,67 99,00 89,38 81,00 78,70 74,55 71,83 71,38 69,64 70
SST 90,00 81,43 74,25 70,78 65,80 64,73 60,75 59,00 59,43 60
SHT 90,83 83,43 75,63 71,67 66,50 65,91 61,67 59,38 60,57 61
ENDV - - - - 83,70 76,64 72,00 69,38 69,86 63
HOP 99,33 94,00 84,50 79,11 75,00 71,45 68,67 67,54 67,29 70

Цены на опции стекло-пакета створки

Тип стеклопакета:

  • Triple Pane Glass Single LowE 8071/CLEAR/CLEAR - 8$/SF
  • Triple Pane Glass Double LowE 8071/Low E 8071/CLEAR - 12$/SF
  • Double Pane Glass Single LowE 8071/CLEAR - 0$/SF
  • Double Pane Glass Double 8071/Low E8071 - 3.5$/SF

Опция приватности:

  • Frosted Privacy Glass Satin - 7$/SF
  • Frosted Privacy Glass Pinhead - 7$/SF

Варианты заполнения газом:

  • Argon Gas Single Fill - 0$/SF
  • Argon Gas Double Fill - 0$/SF

Проем: опции и расчеты

Стоимость за 1 единицу погонного фута ( [[README#^a4b2a2|LF]] * price )

Jamb Extension (внутренние откосы):

  • none - 0$/LF
  • Vinyl Jamb Extension 1 3/8 - 8$/LF
  • Vinyl Jamb Extension 2 3/8 - 8$/LF
  • Vinyl Jamb Extension 3 3/8 - 8$/LF
  • Vinyl Jamb Extension 4 3/8 - 8$/LF
  • Vinyl Jamb Extension >6 3/8 - 16$/LF

Casing (обналичка внутри):

  • none - 0$/LF
  • Vinyl Casing 2 3/8 Colonial - 4$/LF
  • Vinyl Casing 3 3/8 Colonial - 4.5$/LF
  • Vinyl Casing 2 3/8 Flat - 4$/LF
  • Vinyl Casing 3 3/8 Flat - 4.5$/LF
  • MDF Casing 2 3/8 Colonial - 3$/LF
  • MDF Casing 3 3/8 Colonial - 3.5$/LF
  • MDF Casing 2 3/8 Flat - 3$/LF
  • MDF Casing 3 3/8 Flat - 3.5$/LF

Brickmold (обналичка снаружи):

  • none - 0$/LF
  • Vinyl Brickmold 3/16 - 3$/LF
  • Vinyl Brickmold 3/4 - 3.5$/LF
  • Vinyl Brickmold 1 3/8 - 3$/LF
  • Vinyl Brickmold 1 5/8 - 3.5$/LF
  • Vinyl Brickmold 2 - 3.5$/LF
  • Vinyl Brickmold Nail Fin - 1$/LF

Формула расчета стоимости конструкции

P = SF x ∑1..n ( p(tC) + p(tPG) + p(tPr) + p(tA) ) + LF x ( p(tJE) + p(tCs) + p(tB) ) , где:

  • P - итоговая стоимость конструкции
  • SF = (w x h / 144) - площадь створки в кв.футах (w - ширина, h - высота)
  • ∑1..n() - сумматор по створкам, где n - количество створок
  • p(tC) - функция цены от типа створки на единицу из диапазона площади (кв.фут)
  • p(tPG) - функция цены от типа стекло-пакета на единицу площади (кв.фут)
  • p(tPr) - функция цены от типа приватности на единицу площади (кв.фут)
  • p(tA) - функция цены от варианта заполнения газом на единицу площади (кв.фут)
  • LF = (W x H / 6) - площадь проема в погонных футах (W - ширина, H - высота)
  • p(tJE) - функция цены от типа откосов на единицу погонного фута
  • p(tCs) - функция цены от типа внутренней обналички на единицу погонного фута
  • p(tB) - функция цены от типа внешней обналички на единицу погонного фута

Предварительные функциональные требования

  • Применение конфигурации створки ко всем створкам окна
  • Сохранение конфигурации окна (с наличием превью и комментария) со створками и возможностью редактирования
  • Удаление и копирование созданной створки
  • Смена типа створки

Draft UX/UI

![[ux-prototype.svg]]

Вспомогательные библиотеки

В процессе подбора решений по управлению элементами внутри редактора, были найдены и использованы некоторые JS-библиотеки

  • https://anseki.github.io/plain-draggable/ (active, не поддерживает не метрическую СИ)
  • https://interactjs.io/ (no-free, не поддерживает не метрическую СИ)
  • https://github.com/nichollascarter/subjx (не поддерживает не метрическую СИ)
  • https://github.com/AlexeyBoiko/DgrmJS (не поддерживает не метрическую СИ)
Описание

Прототип оконного конфигуратора (drag&drop, resize, привязки как в CAD)

Конвейеры
0 успешных
0 с ошибкой