mirror of
https://github.com/Matysh/houseplan-card
synced 2026-09-29 03:09:36 +00:00
docs: one limits section, and Resize does raise a toast (#329 M2, M3)
The Russian guide carried the junction-limits section twice, word for word. And both guides described Resize as silently stopping, in contrast to a toast from drawing and Thickness — it stops AND names the rule once per gesture (resize.limit_stopped, pinned by the smoke). Wording follows the code. Issue: #329 User-Visible: no
This commit is contained in:
+3
-2
@@ -404,8 +404,9 @@ another wall) is not forbidden by the distance rule.
|
||||
The check runs on writes only. An already saved plan is never re-judged:
|
||||
migration, import and backup restore are never blocked, and an edit that does
|
||||
not touch the offending element passes as usual. The refusal appears where you
|
||||
work: drawing and Thickness raise a toast naming the rule, while Resize stops
|
||||
the wall at the last allowed position.
|
||||
work: drawing and Thickness leave the value unapplied and raise a toast naming
|
||||
the rule, while Resize stops the wall at the last allowed position and, once
|
||||
per gesture, names the rule the next step would break.
|
||||
|
||||
### HA area binding
|
||||
|
||||
|
||||
+3
-27
@@ -439,33 +439,9 @@ Undo оптимизации.
|
||||
Проверка работает только на записи. Уже сохранённый план не переоценивается:
|
||||
миграция, импорт и восстановление из бэкапа не блокируются никогда, а правка,
|
||||
не трогающая нарушающий элемент, проходит как обычно. Отказ виден там, где вы
|
||||
работаете: рисование и «Толщина» показывают тост с названием правила, а
|
||||
Resize останавливает стену в последней разрешённой позиции.
|
||||
|
||||
### Ограничения стыков стен
|
||||
|
||||
Чтобы план оставался физически осмысленным, редактор отказывает в записи,
|
||||
которая создала бы невозможный стык. Пороги абсолютные — они не зависят от
|
||||
масштаба `cell_cm`:
|
||||
|
||||
| Правило | Порог |
|
||||
|---|---|
|
||||
| Угол между соседними стенами одного узла | не меньше 15° |
|
||||
| Стен в одном узле | не больше 6 |
|
||||
| Длина стены | не меньше 20 см и не меньше собственной толщины |
|
||||
| Расстояние между несмежными узлами и от узла до чужой стены | не меньше 5 см |
|
||||
| Внутренний просвет комнаты после вычета кладки | не меньше 25 см² |
|
||||
|
||||
Длина меряется по СТЕНЕ, а не по отдельному участку контура: короткий
|
||||
доборный отрезок, компенсирующий перепад толщин соседних стен, законен, если
|
||||
стена целиком длиннее 20 см. Т-стык (конец стены упирается в середину чужой)
|
||||
правилом дистанции не запрещён.
|
||||
|
||||
Проверка работает только на записи. Уже сохранённый план не переоценивается:
|
||||
миграция, импорт и восстановление из бэкапа не блокируются никогда, а правка,
|
||||
не трогающая нарушающий элемент, проходит как обычно. Отказ виден там, где вы
|
||||
работаете: рисование и «Толщина» показывают тост с названием правила, а
|
||||
Resize останавливает стену в последней разрешённой позиции.
|
||||
работаете: рисование и «Толщина» не применяют значение и показывают тост с
|
||||
названием правила, а Resize останавливает стену в последней разрешённой
|
||||
позиции и один раз за жест поясняет тостом, какое правило дальше нарушится.
|
||||
|
||||
### Связь с HA-зоной
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"version": 1,
|
||||
"fixture": "synthetic-only",
|
||||
"chromium": "151.0.7922.34",
|
||||
"sourceFingerprint": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceFingerprint": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"captureScriptSha256": "ce2e9542fed9dade3085be87d16f69adb2ac8262893ad78ad966b1b9673f2983",
|
||||
"command": "npm run build && node demo/docs/capture.mjs",
|
||||
"scenarios": {
|
||||
@@ -14,7 +14,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "0ca982495a7749907c48ebbddfd089c54385a4347f79f64e94af2c5a8d5c03eb"
|
||||
},
|
||||
"view-touch": {
|
||||
@@ -25,7 +25,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "1c8e28ff34736b936ba7c9ec047d1da27aaf6fbb01411155f2d5c05282c02c41"
|
||||
},
|
||||
"space-create": {
|
||||
@@ -36,7 +36,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "a55b463055a565892ca139014e314a8f63fb5301c87fff2e48d7e69210fe9b6c"
|
||||
},
|
||||
"room-contour-close": {
|
||||
@@ -47,7 +47,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "dfad9a27371cfa397a3fd8dce7005f42d24649743f5322105ee894067d3a9f16"
|
||||
},
|
||||
"plan-context-tray": {
|
||||
@@ -58,7 +58,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "b75f348c632296da5c2fc142d53df613f757e1516acac315be50f5b4557729cc"
|
||||
},
|
||||
"device-editor": {
|
||||
@@ -69,7 +69,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "6b9cd281450e7782cff292f11efc58d227bedd0df86afc3be987feb2edec9dc3"
|
||||
},
|
||||
"device-display-preview": {
|
||||
@@ -80,7 +80,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "6f628abe6b89d7c4b352e6d73ac0b126526f6fdba5927bb774c5b884e484ca19"
|
||||
},
|
||||
"background-editor": {
|
||||
@@ -91,7 +91,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "a1d1a905f1410f73231d2ea5d1dfbd8ae79c2fe8b0a79cff87ebb977ac7a3103"
|
||||
},
|
||||
"room-card": {
|
||||
@@ -102,7 +102,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "48a5685039a5e0de2a28190d857b193c86e2e63606e3c7a8c40fc9d2b190da4e"
|
||||
},
|
||||
"device-info": {
|
||||
@@ -113,7 +113,7 @@
|
||||
},
|
||||
"theme": "dark",
|
||||
"language": "en",
|
||||
"sourceSha256": "fbb90504645a375ae23c8073e12b73b897fa64ed1820c9c230c2ff2c6e6643d1",
|
||||
"sourceSha256": "3a81ad744dfb6f19f9cfc7dd90c2b5e06f0a784356d5daf2d3a112f6ff3f6617",
|
||||
"imageSha256": "29a342811aaedaebc54ba337792d60cb454a7cf4c3063b210f6c4bafe0a4d87b"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user