@jjlmoya/utils-diy 1.3.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -1
- package/src/category/i18n/de.ts +12 -0
- package/src/category/i18n/id.ts +12 -0
- package/src/category/i18n/it.ts +12 -0
- package/src/category/i18n/ja.ts +12 -0
- package/src/category/i18n/ko.ts +12 -0
- package/src/category/i18n/nl.ts +12 -0
- package/src/category/i18n/pl.ts +12 -0
- package/src/category/i18n/pt.ts +12 -0
- package/src/category/i18n/ru.ts +12 -0
- package/src/category/i18n/sv.ts +12 -0
- package/src/category/i18n/tr.ts +12 -0
- package/src/category/i18n/zh.ts +12 -0
- package/src/category/index.ts +13 -1
- package/src/index.ts +1 -1
- package/src/tests/category_validation.test.ts +18 -0
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/i18n_coverage.test.ts +36 -0
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/seo_length.test.ts +3 -0
- package/src/tests/slug_language_code_format.test.ts +23 -0
- package/src/tests/slug_uniqueness.test.ts +81 -0
- package/src/tool/balusterCalculator/i18n/de.ts +264 -0
- package/src/tool/balusterCalculator/i18n/id.ts +264 -0
- package/src/tool/balusterCalculator/i18n/it.ts +264 -0
- package/src/tool/balusterCalculator/i18n/ja.ts +264 -0
- package/src/tool/balusterCalculator/i18n/ko.ts +264 -0
- package/src/tool/balusterCalculator/i18n/nl.ts +264 -0
- package/src/tool/balusterCalculator/i18n/pl.ts +264 -0
- package/src/tool/balusterCalculator/i18n/pt.ts +264 -0
- package/src/tool/balusterCalculator/i18n/ru.ts +264 -0
- package/src/tool/balusterCalculator/i18n/sv.ts +264 -0
- package/src/tool/balusterCalculator/i18n/tr.ts +264 -0
- package/src/tool/balusterCalculator/i18n/zh.ts +264 -0
- package/src/tool/balusterCalculator/index.ts +15 -7
- package/src/tool/clayCalculator/i18n/de.ts +183 -0
- package/src/tool/clayCalculator/i18n/id.ts +183 -0
- package/src/tool/clayCalculator/i18n/it.ts +183 -0
- package/src/tool/clayCalculator/i18n/ja.ts +182 -0
- package/src/tool/clayCalculator/i18n/ko.ts +183 -0
- package/src/tool/clayCalculator/i18n/nl.ts +183 -0
- package/src/tool/clayCalculator/i18n/pl.ts +183 -0
- package/src/tool/clayCalculator/i18n/pt.ts +183 -0
- package/src/tool/clayCalculator/i18n/ru.ts +183 -0
- package/src/tool/clayCalculator/i18n/sv.ts +183 -0
- package/src/tool/clayCalculator/i18n/tr.ts +183 -0
- package/src/tool/clayCalculator/i18n/zh.ts +183 -0
- package/src/tool/clayCalculator/index.ts +15 -7
- package/src/tool/concreteCalculator/i18n/de.ts +201 -0
- package/src/tool/concreteCalculator/i18n/id.ts +201 -0
- package/src/tool/concreteCalculator/i18n/it.ts +201 -0
- package/src/tool/concreteCalculator/i18n/ja.ts +201 -0
- package/src/tool/concreteCalculator/i18n/ko.ts +201 -0
- package/src/tool/concreteCalculator/i18n/nl.ts +201 -0
- package/src/tool/concreteCalculator/i18n/pl.ts +201 -0
- package/src/tool/concreteCalculator/i18n/pt.ts +201 -0
- package/src/tool/concreteCalculator/i18n/ru.ts +201 -0
- package/src/tool/concreteCalculator/i18n/sv.ts +201 -0
- package/src/tool/concreteCalculator/i18n/tr.ts +201 -0
- package/src/tool/concreteCalculator/i18n/zh.ts +201 -0
- package/src/tool/concreteCalculator/index.ts +17 -5
- package/src/tool/cutOptimizer/i18n/de.ts +178 -0
- package/src/tool/cutOptimizer/i18n/id.ts +178 -0
- package/src/tool/cutOptimizer/i18n/it.ts +178 -0
- package/src/tool/cutOptimizer/i18n/ja.ts +178 -0
- package/src/tool/cutOptimizer/i18n/ko.ts +178 -0
- package/src/tool/cutOptimizer/i18n/nl.ts +178 -0
- package/src/tool/cutOptimizer/i18n/pl.ts +178 -0
- package/src/tool/cutOptimizer/i18n/pt.ts +178 -0
- package/src/tool/cutOptimizer/i18n/ru.ts +178 -0
- package/src/tool/cutOptimizer/i18n/sv.ts +178 -0
- package/src/tool/cutOptimizer/i18n/tr.ts +178 -0
- package/src/tool/cutOptimizer/i18n/zh.ts +178 -0
- package/src/tool/cutOptimizer/index.ts +17 -5
- package/src/tool/drillCalculator/i18n/de.ts +137 -0
- package/src/tool/drillCalculator/i18n/id.ts +137 -0
- package/src/tool/drillCalculator/i18n/it.ts +137 -0
- package/src/tool/drillCalculator/i18n/ja.ts +137 -0
- package/src/tool/drillCalculator/i18n/ko.ts +137 -0
- package/src/tool/drillCalculator/i18n/nl.ts +137 -0
- package/src/tool/drillCalculator/i18n/pl.ts +137 -0
- package/src/tool/drillCalculator/i18n/pt.ts +137 -0
- package/src/tool/drillCalculator/i18n/ru.ts +137 -0
- package/src/tool/drillCalculator/i18n/sv.ts +137 -0
- package/src/tool/drillCalculator/i18n/tr.ts +137 -0
- package/src/tool/drillCalculator/i18n/zh.ts +137 -0
- package/src/tool/drillCalculator/index.ts +17 -5
- package/src/tool/drillSharpener/i18n/de.ts +120 -0
- package/src/tool/drillSharpener/i18n/id.ts +120 -0
- package/src/tool/drillSharpener/i18n/it.ts +120 -0
- package/src/tool/drillSharpener/i18n/ja.ts +120 -0
- package/src/tool/drillSharpener/i18n/ko.ts +120 -0
- package/src/tool/drillSharpener/i18n/nl.ts +120 -0
- package/src/tool/drillSharpener/i18n/pl.ts +120 -0
- package/src/tool/drillSharpener/i18n/pt.ts +120 -0
- package/src/tool/drillSharpener/i18n/ru.ts +120 -0
- package/src/tool/drillSharpener/i18n/sv.ts +120 -0
- package/src/tool/drillSharpener/i18n/tr.ts +120 -0
- package/src/tool/drillSharpener/i18n/zh.ts +120 -0
- package/src/tool/drillSharpener/index.ts +17 -5
- package/src/tool/epoxyCalculator/i18n/de.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/id.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/it.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/ja.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/ko.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/nl.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/pl.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/pt.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/ru.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/sv.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/tr.ts +118 -0
- package/src/tool/epoxyCalculator/i18n/zh.ts +118 -0
- package/src/tool/epoxyCalculator/index.ts +15 -7
- package/src/tool/furnitureFit/i18n/de.ts +113 -0
- package/src/tool/furnitureFit/i18n/id.ts +113 -0
- package/src/tool/furnitureFit/i18n/it.ts +113 -0
- package/src/tool/furnitureFit/i18n/ja.ts +113 -0
- package/src/tool/furnitureFit/i18n/ko.ts +113 -0
- package/src/tool/furnitureFit/i18n/nl.ts +113 -0
- package/src/tool/furnitureFit/i18n/pl.ts +113 -0
- package/src/tool/furnitureFit/i18n/pt.ts +113 -0
- package/src/tool/furnitureFit/i18n/ru.ts +113 -0
- package/src/tool/furnitureFit/i18n/sv.ts +113 -0
- package/src/tool/furnitureFit/i18n/tr.ts +113 -0
- package/src/tool/furnitureFit/i18n/zh.ts +113 -0
- package/src/tool/furnitureFit/index.ts +17 -5
- package/src/tool/mortarCalculator/i18n/de.ts +129 -0
- package/src/tool/mortarCalculator/i18n/id.ts +129 -0
- package/src/tool/mortarCalculator/i18n/it.ts +129 -0
- package/src/tool/mortarCalculator/i18n/ja.ts +129 -0
- package/src/tool/mortarCalculator/i18n/ko.ts +129 -0
- package/src/tool/mortarCalculator/i18n/nl.ts +129 -0
- package/src/tool/mortarCalculator/i18n/pl.ts +129 -0
- package/src/tool/mortarCalculator/i18n/pt.ts +129 -0
- package/src/tool/mortarCalculator/i18n/ru.ts +129 -0
- package/src/tool/mortarCalculator/i18n/sv.ts +129 -0
- package/src/tool/mortarCalculator/i18n/tr.ts +129 -0
- package/src/tool/mortarCalculator/i18n/zh.ts +129 -0
- package/src/tool/mortarCalculator/index.ts +17 -5
- package/src/tool/passepartoutCalculator/i18n/de.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/id.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/it.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/ja.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/ko.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/nl.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/pl.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/pt.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/ru.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/sv.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/tr.ts +108 -0
- package/src/tool/passepartoutCalculator/i18n/zh.ts +108 -0
- package/src/tool/passepartoutCalculator/index.ts +17 -5
- package/src/tool/stairCalculator/i18n/de.ts +144 -0
- package/src/tool/stairCalculator/i18n/id.ts +144 -0
- package/src/tool/stairCalculator/i18n/it.ts +144 -0
- package/src/tool/stairCalculator/i18n/ja.ts +144 -0
- package/src/tool/stairCalculator/i18n/ko.ts +144 -0
- package/src/tool/stairCalculator/i18n/nl.ts +144 -0
- package/src/tool/stairCalculator/i18n/pl.ts +144 -0
- package/src/tool/stairCalculator/i18n/pt.ts +144 -0
- package/src/tool/stairCalculator/i18n/ru.ts +144 -0
- package/src/tool/stairCalculator/i18n/sv.ts +144 -0
- package/src/tool/stairCalculator/i18n/tr.ts +144 -0
- package/src/tool/stairCalculator/i18n/zh.ts +144 -0
- package/src/tool/stairCalculator/index.ts +17 -5
- package/src/tool/thermalExpansionCalculator/i18n/de.ts +132 -0
- package/src/tool/thermalExpansionCalculator/i18n/id.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/it.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/ja.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/ko.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/nl.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/pl.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/pt.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/ru.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/sv.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/tr.ts +130 -0
- package/src/tool/thermalExpansionCalculator/i18n/zh.ts +130 -0
- package/src/tool/thermalExpansionCalculator/index.ts +17 -5
- package/src/tool/voltageDropCalculator/i18n/de.ts +112 -0
- package/src/tool/voltageDropCalculator/i18n/id.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/it.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/ja.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/ko.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/nl.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/pl.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/pt.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/ru.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/sv.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/tr.ts +110 -0
- package/src/tool/voltageDropCalculator/i18n/zh.ts +110 -0
- package/src/tool/voltageDropCalculator/index.ts +17 -5
- package/src/tools.ts +2 -0
- package/src/types.ts +1 -1
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { BalusterCalculatorUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'kalkulyator-balyasin';
|
|
6
|
+
const title = 'Калькулятор балясин: Точный расчет расстояния для ограждений';
|
|
7
|
+
const description =
|
|
8
|
+
'Рассчитайте точное расстояние между стойками или балясинами для ограждений с соблюдением нормы 10 см. Автоматические чертежи.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Каково максимально допустимое расстояние между балясинами?',
|
|
13
|
+
answer:
|
|
14
|
+
'В большинстве международных строительных норм свободное пространство между элементами ограждения не должно позволять проходить сфере диаметром 10 см во избежание несчастных случаев с детьми.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'Как измеряется расстояние: между центрами или просветами?',
|
|
18
|
+
answer:
|
|
19
|
+
"Наш калькулятор предоставляет оба варианта. 'Свободный просвет' — это реальный зазор между стойками (важно для безопасности), в то время как 'расстояние между центрами' (on-center) указывает, где сверлить или крепить каждую балясину.",
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Что делать, если распределение получается неточным?',
|
|
23
|
+
answer:
|
|
24
|
+
'Калькулятор автоматически корректирует количество стоек так, чтобы первый и последний зазоры были идентичны, гарантируя визуальную симметрию и строгое соблюдение максимально допустимого просвета.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Что лучше: сваривать или привинчивать балясины?',
|
|
28
|
+
answer:
|
|
29
|
+
'Зависит от материала. Для стали сварка обеспечивает максимальную структурную жесткость. Для дерева или алюминия используются механические анкеры или сквозные болты. Важно, чтобы ограждение выдерживало горизонтальную нагрузку не менее 0,8 кН/м.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Измерить общую длину',
|
|
36
|
+
text: 'Измерьте точное расстояние между первым и последним столбом, где будет установлено ограждение.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Определить толщину балясины',
|
|
40
|
+
text: 'Измерьте ширину отдельной стойки (например, 2x2 см для квадратной трубы или диаметр, если она круглая).',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Установить максимальный просвет',
|
|
44
|
+
text: 'Укажите желаемое максимальное расстояние (рекомендуется 10 см для соблюдения норм).',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Получить метки для установки',
|
|
48
|
+
text: 'Просмотрите список точных позиций для сверления отверстий, чтобы обеспечить симметричное и безопасное распределение.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
83
|
+
inLanguage: 'ru',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<BalusterCalculatorUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faqTitle: 'Часто задаваемые вопросы',
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliographyTitle: 'Технические справочники',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{
|
|
95
|
+
name: 'ГОСТ 25772-2021 Ограждения лестниц, балконов и крыш стальные',
|
|
96
|
+
url: 'https://docs.cntd.ru/',
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: 'IRC - International Residential Code (США)',
|
|
100
|
+
url: 'https://codes.iccsafe.org/content/IRC2021',
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
name: 'IBC - International Building Code',
|
|
104
|
+
url: 'https://codes.iccsafe.org/content/IBC2021',
|
|
105
|
+
},
|
|
106
|
+
],
|
|
107
|
+
howTo: howToData,
|
|
108
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
|
+
seo: [
|
|
110
|
+
{
|
|
111
|
+
type: 'title',
|
|
112
|
+
text: 'Полное руководство: Как рассчитать расстояние между балясинами для ограждений',
|
|
113
|
+
level: 2,
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
type: 'paragraph',
|
|
117
|
+
html: 'Проектирование безопасного и эстетически безупречного ограждения — это искусство, сочетающее математическую точность со строительными нормами. Будь то терраса, балкон или внутренняя лестница, правильный расчет балясин (или стоек) — самый важный этап проекта. Ошибка в расчетах не только портит визуальную симметрию, но и может сделать вашу конструкцию незаконной и небезопасной.',
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
type: 'card',
|
|
121
|
+
icon: 'mdi:alert-circle-outline',
|
|
122
|
+
title: 'Почему этот расчет так важен?',
|
|
123
|
+
html: '<p>Речь идет не просто о том, чтобы «заполнить пустоту». Речь идет о соблюдении <strong>Правила 4-дюймовой сферы (10 см)</strong> — международного стандарта безопасности, разработанного для предотвращения несчастных случаев с детьми.</p>',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
type: 'title',
|
|
127
|
+
text: '1. Нормы безопасности: Правило 10 см',
|
|
128
|
+
level: 3,
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'paragraph',
|
|
132
|
+
html: 'Прежде чем отрезать первый кусок дерева или металла, вы должны понять «почему» стоит за математикой. Строительные нормы во многих странах, а также IRC (International Residential Code) в США, устанавливают четкий стандарт: <em>«Свободное пространство между вертикальными элементами не должно позволять проходить сфере диаметром 10 см (4 дюйма)».</em>',
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
type: 'paragraph',
|
|
136
|
+
html: 'Этот размер не случаен. Это средний диаметр головы маленького ребенка (обычно до 1 года). Если тело ребенка может пройти, а голова застрянет, риск удушья чрезвычайно высок. Если голова пройдет, он может упасть вниз. Поэтому цель нашего <strong>Калькулятора балясин</strong> не только эстетическая, но и спасение жизней.',
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: 'title',
|
|
140
|
+
text: '2. Математическая проблема: Ошибка «лишнего столба»',
|
|
141
|
+
level: 3,
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: 'В программировании и строительстве существует классическая проблема, называемая <em>«Fencepost Error»</em> (ошибка лишнего столба). Если вы хотите построить 10-метровый забор со столбами через каждый метр, сколько столбов вам понадобится? Интуитивный ответ — 10, но правильный — 11.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'paragraph',
|
|
149
|
+
html: 'С балясинами происходит нечто подобное, но сложнее, потому что ширина самой балясины занимает место. Формула, которую использует наш инструмент, решает эту систему уравнений за вас:',
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'grid',
|
|
153
|
+
columns: [
|
|
154
|
+
{
|
|
155
|
+
type: 'card',
|
|
156
|
+
icon: 'mdi:calculator',
|
|
157
|
+
title: 'Шаг А: Расчет зазоров',
|
|
158
|
+
html: '<p class="bc-formula">n = (L - g_max) / (w + g_max)</p><p>Сначала мы определяем, сколько балясин теоретически поместится, если использовать максимально допустимое пространство. Мы округляем это число в большую сторону, чтобы убедиться, что результирующие зазоры <em>меньше</em> максимума.</p>',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'card',
|
|
162
|
+
icon: 'mdi:function-variant',
|
|
163
|
+
title: 'Шаг Б: Пересчет точного расстояния',
|
|
164
|
+
html: '<p class="bc-formula">g = (L - n × w) / (n + 1)</p><p>Как только мы узнаем точное количество балясин (n), мы вычисляем, сколько места «остается», если вычесть ширину всего материала, и делим его поровну между зазорами (n+1).</p>',
|
|
165
|
+
},
|
|
166
|
+
],
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
type: 'title',
|
|
170
|
+
text: '3. Пошаговое руководство для идеальной установки',
|
|
171
|
+
level: 3,
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
type: 'paragraph',
|
|
175
|
+
html: 'Получить цифры — это только половина дела. Здесь мы объясним, как перенести эти данные с бумаги (или экрана) в реальность вашей стройки.',
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
type: 'title',
|
|
179
|
+
text: 'Шаг 1: Прецизионное измерение',
|
|
180
|
+
level: 3,
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
type: 'paragraph',
|
|
184
|
+
html: 'Измерьте <strong>внутреннее</strong> расстояние от столба до столба. Не измеряйте от центра столба. Вам нужно знать точный просвет, который вы будете заполнять (L). Если ваше ограждение состоит из нескольких секций, измеряйте каждую индивидуально; конструкции редко бывают идеально прямоугольными, и ошибка в 0,5 см может испортить симметрию.',
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
type: 'title',
|
|
188
|
+
text: 'Шаг 2: Поиск центра',
|
|
189
|
+
level: 3,
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
type: 'paragraph',
|
|
193
|
+
html: 'Ошибка новичка номер один — начинать расстановку балясин от одного края к другому. Это почти всегда приводит к тому, что последний зазор получается странного размера, нарушая визуальную гармонию.<ul><li>Отметьте <strong>точный центр</strong> ограждения (L / 2).</li><li>Решите, хотите ли вы, чтобы в центре была <em>балясина</em> или <em>зазор</em>.</li><li>Если вы хотите балясину в центре: отметьте половину ширины балясины с каждой стороны от вашей центральной метки.</li><li>Если вы хотите зазор в центре: отметьте половину расстояния зазора (g / 2) с каждой стороны.</li></ul>',
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
type: 'title',
|
|
197
|
+
text: 'Шаг 3: Изготовление проставки (шаблона)',
|
|
198
|
+
level: 3,
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
type: 'paragraph',
|
|
202
|
+
html: 'Не используйте рулетку для каждой балясины. Накопленная человеческая ошибка приведет к тому, что последняя балясина отклонится на несколько сантиметров. Профессиональный подход — отрезать деревянный брусок (или два) с точным размером зазора (g), который выдал наш калькулятор.',
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
type: 'paragraph',
|
|
206
|
+
html: 'Используйте этот блок в качестве физического шаблона. Установите одну балясину, приложите блок, прижмите следующую балясину к блоку и закрепите ее. Это гарантирует миллиметровую точность.',
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
type: 'title',
|
|
210
|
+
text: '4. Необходимые материалы и инструменты',
|
|
211
|
+
level: 3,
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
type: 'card',
|
|
215
|
+
icon: 'mdi:tools',
|
|
216
|
+
title: 'Оборудование для профессиональной отделки',
|
|
217
|
+
html: '<ul><li>Высокоточная рулетка</li><li>Карандаш плотника</li><li>Пузырьковый уровень (для вертикальности)</li><li>Торцовочная пила (для чистых резов)</li><li>Дрель и шурупы по дереву</li><li>Дистанционные блоки (сделанные по размеру)</li></ul>',
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
type: 'title',
|
|
221
|
+
text: '5. Дополнительные технические вопросы',
|
|
222
|
+
level: 3,
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
type: 'card',
|
|
226
|
+
icon: 'mdi:help-circle-outline',
|
|
227
|
+
title: 'Что делать, если последний зазор не совпадает?',
|
|
228
|
+
html: '<p>Если вы использовали наш калькулятор, этого не должно произойти. Однако в реальном мире дерево гнется, а столбы не всегда стоят ровно. Если в конце у вас остается или не хватает 1-2 мм, это незаметно. Если не хватает 1 см, проверьте свои дистанционные блоки: скорее всего, ошибка накапливалась на каждом шаге.</p>',
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
type: 'card',
|
|
232
|
+
icon: 'mdi:shield-check-outline',
|
|
233
|
+
title: 'Можно ли ставить балясины реже, если у меня нет детей?',
|
|
234
|
+
html: '<p>Юридически — нет. Строительные нормы применяются к жилью, а не к текущим жильцам. Если вы когда-нибудь решите продать дом, ограждение не по нормативам станет проблемой при проверке. Кроме того, гости (племянники, внуки) могут быть в опасности.</p>',
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
type: 'card',
|
|
238
|
+
icon: 'mdi:wrench-outline',
|
|
239
|
+
title: 'Дерево, металл или стекло?',
|
|
240
|
+
html: '<p>Этот калькулятор работает для <strong>любого повторяющегося вертикального элемента</strong>. Если вы используете горизонтальные тросы, нормы другие (обычно они не должны позволять карабкаться по ним, «эффект лестницы»). Для стекла оно считается сплошной панелью, и здесь применяется не расстояние между элементами, а ударопрочность.</p>',
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
type: 'card',
|
|
244
|
+
icon: 'mdi:format-quote-close',
|
|
245
|
+
title: 'Мис ван дер Роэ',
|
|
246
|
+
html: '<p><em>«Архитектура — это воля эпохи, переведенная в пространство».</em></p><p>Мы надеемся, что этот инструмент поможет вам создавать более безопасные и красивые пространства. Всегда не забывайте сверяться с местными строительными нормами вашего муниципалитета, так как могут существовать специфические требования к минимальной высоте (обычно 90-110 см) или нагрузочным характеристикам.</p>',
|
|
247
|
+
},
|
|
248
|
+
],
|
|
249
|
+
ui: {
|
|
250
|
+
sectionTitle: 'Размеры',
|
|
251
|
+
sectionDesc: 'Введите размеры вашего ограждения',
|
|
252
|
+
labelRailLength: 'Общая длина (L)',
|
|
253
|
+
labelBalusterWidth: 'Ширина балясины (w)',
|
|
254
|
+
labelMaxGap: 'Максимальный зазор (g)',
|
|
255
|
+
blueprintTitle: 'План монтажа',
|
|
256
|
+
blueprintRef: 'REF: BAL-001 // МАСШТАБ: АВТО',
|
|
257
|
+
labelRequired: 'Требуется балясин',
|
|
258
|
+
labelExactGap: 'Точный зазор',
|
|
259
|
+
labelOnCenter: 'По центрам',
|
|
260
|
+
labelTotalSpaces: 'Всего просветов',
|
|
261
|
+
labelCoveredLength: 'Покрытая длина',
|
|
262
|
+
labelDisclaimer: '* Показанные размеры являются приблизительными для визуализации.',
|
|
263
|
+
},
|
|
264
|
+
};
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { BalusterCalculatorUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'baluster-kalkylator';
|
|
6
|
+
const title = 'Baluster kalkylator: Exakt avstånd för räcken';
|
|
7
|
+
const description =
|
|
8
|
+
'Beräkna det exakta avståndet mellan stolpar eller balustrar för räcken enligt 10 cm-regeln. Automatiska ritningar.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Vilket är det högsta tillåtna avståndet mellan balustrar?',
|
|
13
|
+
answer:
|
|
14
|
+
'I de flesta internationella byggregler får det fria utrymmet mellan räckesdelar inte tillåta passage av en sfär med 10 cm diameter för att förhindra olyckor med barn.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'Hur mäts avståndet: mellan centrum eller mellanrum?',
|
|
18
|
+
answer:
|
|
19
|
+
"Vår kalkylator ger båda. 'Fritt mellanrum' är det faktiska hålet mellan stolparna (viktigt för säkerheten), medan 'centrumavstånd' (on-center) anger var du ska borra eller fästa varje baluster.",
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Vad händer om fördelningen inte blir exakt?',
|
|
23
|
+
answer:
|
|
24
|
+
'Kalkylatorn justerar automatiskt antalet stolpar så att det första och sista mellanrummet blir identiska, vilket garanterar visuell symmetri och strikt efterlevnad av det maximalt tillåtna mellanrummet.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Är det bäst att svetsa eller skruva balustrarna?',
|
|
28
|
+
answer:
|
|
29
|
+
'Det beror på materialet. För stål ger svetsning maximal strukturell styvhet. För trä eller aluminium används kemiska ankare eller genomgående skruvar. Det viktiga är att räcket tål en horisontell kraft på minst 0,8 kN/m.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Mät totallängden',
|
|
36
|
+
text: 'Mät det exakta avståndet mellan den första och sista stolpen där räcket ska installeras.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Definiera balusterns tjocklek',
|
|
40
|
+
text: 'Mät bredden på en enskild stolpe (t.ex. 2x2 cm för fyrkantsprofil eller diametern om den är rund).',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Fastställ maximalt mellanrum',
|
|
44
|
+
text: 'Ange önskat maximalt avstånd (rekommenderas 10 cm för att följa reglerna).',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Hämta monteringsmärkningar',
|
|
48
|
+
text: 'Granska listan över exakta positioner för borrning för att säkerställa en symmetrisk och säker fördelning.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
83
|
+
inLanguage: 'sv',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<BalusterCalculatorUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faqTitle: 'Vanliga frågor',
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliographyTitle: 'Tekniska referenser',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{
|
|
95
|
+
name: 'Boverket - Regler för räcken (Sverige)',
|
|
96
|
+
url: 'https://www.boverket.se/',
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: 'IRC - International Residential Code (USA)',
|
|
100
|
+
url: 'https://codes.iccsafe.org/content/IRC2021',
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
name: 'IBC - International Building Code',
|
|
104
|
+
url: 'https://codes.iccsafe.org/content/IBC2021',
|
|
105
|
+
},
|
|
106
|
+
],
|
|
107
|
+
howTo: howToData,
|
|
108
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
|
+
seo: [
|
|
110
|
+
{
|
|
111
|
+
type: 'title',
|
|
112
|
+
text: 'Den definitiva guiden: Hur man beräknar balusteravstånd för räcken',
|
|
113
|
+
level: 2,
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
type: 'paragraph',
|
|
117
|
+
html: 'Att designa ett säkert och estetiskt perfekt räcke är en konst som kombinerar matematisk precision med byggregler. Oavsett om det är för en terrass, en balkong eller en inomhustrappa är den korrekta beräkningen av balustrarna (eller stolparna) projektets mest kritiska steg. Ett räknefel förstör inte bara den visuella symmetrin, utan kan göra din konstruktion olaglig och osäker.',
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
type: 'card',
|
|
121
|
+
icon: 'mdi:alert-circle-outline',
|
|
122
|
+
title: 'Varför är denna beräkning så viktig?',
|
|
123
|
+
html: '<p>Det handlar inte bara om att "fylla utrymmet". Det handlar om att följa <strong>4-tumsregeln (10 cm)</strong>, en internationell säkerhetsstandard utformad för att förhindra barnolyckor.</p>',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
type: 'title',
|
|
127
|
+
text: '1. Säkerhetsregler: 10 cm-regeln',
|
|
128
|
+
level: 3,
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'paragraph',
|
|
132
|
+
html: 'Innan du kapar den första trä- eller metallbiten måste du förstå "varför" bakom matematiken. Byggregler i många länder, liksom IRC (International Residential Code) i USA, fastställer en tydlig norm: <em>"Det fria utrymmet mellan vertikala element får inte tillåta passage av en sfär med 10 cm (4 tum) diameter."</em>',
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
type: 'paragraph',
|
|
136
|
+
html: 'Detta mått är inte godtyckligt. Det är den genomsnittliga huvuddiametern för ett litet barn (vanligtvis under 1 år). Om ett barn kan få igenom kroppen men huvudet fastnar är risken för kvävning extremt hög. Om huvudet kommer igenom kan barnet falla fritt. Därför är målet med vår <strong>Baluster-kalkylator</strong> inte bara estetik, utan att rädda liv.',
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: 'title',
|
|
140
|
+
text: '2. Det matematiska problemet: Stolpfel (Fencepost Error)',
|
|
141
|
+
level: 3,
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: 'Inom programmering och byggnation finns ett klassiskt problem som kallas <em>"Fencepost Error"</em> (stolpfel). Om du vill bygga ett 10 meter långt staket med stolpar varje meter, hur många stolpar behöver du? Det intuitiva svaret är 10, men det korrekta är 11.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'paragraph',
|
|
149
|
+
html: 'Med balustrar händer något liknande, men mer komplext, eftersom bredden på själva balustern tar plats. Formeln som vårt verktyg använder löser detta ekvationssystem åt dig:',
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'grid',
|
|
153
|
+
columns: [
|
|
154
|
+
{
|
|
155
|
+
type: 'card',
|
|
156
|
+
icon: 'mdi:calculator',
|
|
157
|
+
title: 'Steg A: Beräkna mellanrum',
|
|
158
|
+
html: '<p class="bc-formula">n = (L - g_max) / (w + g_max)</p><p>Först bestämmer vi hur många balustrar som teoretiskt får plats om vi använde det maximalt tillåtna utrymmet. Vi avrundar detta antal uppåt för att säkerställa att de resulterande mellanrummen blir <em>mindre</em> än maxmåttet.</p>',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'card',
|
|
162
|
+
icon: 'mdi:function-variant',
|
|
163
|
+
title: 'Steg B: Omberäkna exakt avstånd',
|
|
164
|
+
html: '<p class="bc-formula">g = (L - n × w) / (n + 1)</p><p>När vi väl vet det exakta antalet balustrar (n), beräknar vi hur mycket utrymme som "blir över" om vi drar bort bredden på allt material, och delar det lika mellan mellanrummen (n+1).</p>',
|
|
165
|
+
},
|
|
166
|
+
],
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
type: 'title',
|
|
170
|
+
text: '3. Steg-för-steg-guide för perfekt installation',
|
|
171
|
+
level: 3,
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
type: 'paragraph',
|
|
175
|
+
html: 'Att ha siffrorna är bara hälften av segern. Här förklarar vi hur du överför siffrorna från papperet (eller skärmen) till verkligheten i ditt byggprojekt.',
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
type: 'title',
|
|
179
|
+
text: 'Steg 1: Precisionsmätning',
|
|
180
|
+
level: 3,
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
type: 'paragraph',
|
|
184
|
+
html: 'Mät det <strong>inre</strong> avståndet från stolpe till stolpe. Mät inte från stolpens centrum. Du behöver veta det exakta fria utrymmet som du ska fylla (L). Om ditt räcke har flera sektioner, mät varje sektion individuellt; byggnationer är sällan perfekt vinklade och ett fel på 0,5 cm kan förstöra symmetrin.',
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
type: 'title',
|
|
188
|
+
text: 'Steg 2: Hitta centrum',
|
|
189
|
+
level: 3,
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
type: 'paragraph',
|
|
193
|
+
html: 'Nybörjarfel nummer ett är att börja placera balustrar från ena änden till den andra. Detta resulterar nästan alltid i ett sista mellanrum med en konstig storlek, vilket bryter den visuella harmonin.<ul><li>Markera <strong>exakt centrum</strong> på räcket (L / 2).</li><li>Bestäm om du vill ha en <em>baluster</em> eller ett <em>mellanrum</em> i mitten.</li><li>Om du vill ha en baluster i mitten: markera hälften av balusterns bredd på varje sida av din centrummarkering.</li><li>Om du vill ha ett mellanrum i mitten: markera hälften av mellanrumsavståndet (g / 2) på varje sida.</li></ul>',
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
type: 'title',
|
|
197
|
+
text: 'Steg 3: Tillverka en distanskloss (Spacers)',
|
|
198
|
+
level: 3,
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
type: 'paragraph',
|
|
202
|
+
html: 'Använd inte måttbandet för varje baluster. Det kumulativa mänskliga felet kommer att göra att den sista balustern hamnar flera centimeter fel. Det professionella sättet är att kapa en träkloss (eller två) med det exakta måttet på mellanrummet (g) som vår kalkylator har gett dig.',
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
type: 'paragraph',
|
|
206
|
+
html: 'Använd denna kloss som en fysisk mall. Placera en baluster, lägg klossen, placera nästa baluster tätt mot klossen och fäst den. Detta garanterar en millimeterexsakt konsistens.',
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
type: 'title',
|
|
210
|
+
text: '4. Material och verktyg som behövs',
|
|
211
|
+
level: 3,
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
type: 'card',
|
|
215
|
+
icon: 'mdi:tools',
|
|
216
|
+
title: 'Utrustning för en professionell finish',
|
|
217
|
+
html: '<ul><li>Måttband med hög precision</li><li>Snickarpenna</li><li>Vattenpass (för vertikalitet)</li><li>Gersåg (för rena snitt)</li><li>Borr och träskruv</li><li>Distansklossar (måttbeställda)</li></ul>',
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
type: 'title',
|
|
221
|
+
text: '5. Ytterligare tekniska frågor',
|
|
222
|
+
level: 3,
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
type: 'card',
|
|
226
|
+
icon: 'mdi:help-circle-outline',
|
|
227
|
+
title: 'Vad händer om det sista mellanrummet inte passar?',
|
|
228
|
+
html: '<p>Om du har använt vår kalkylator bör detta inte hända. I den verkliga världen slår sig dock trä och stolpar är inte alltid raka. Om det felar på 1-2 mm när du når slutet är det omärkbart. Om det felar på 1 cm bör du kontrollera dina distansklossar; du har förmodligen tappat millimetrar i varje steg.</p>',
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
type: 'card',
|
|
232
|
+
icon: 'mdi:shield-check-outline',
|
|
233
|
+
title: 'Kan jag sätta balustrarna glesare om jag inte har barn?',
|
|
234
|
+
html: '<p>Juridiskt sett: nej. Byggregler gäller bostaden, inte de nuvarande invånarna. Om du någon gång säljer huset kommer ett räcke som inte följer reglerna att vara ett problem vid besiktningen. Dessutom kan besökare (syskonbarn, barnbarn) vara i fara.</p>',
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
type: 'card',
|
|
238
|
+
icon: 'mdi:wrench-outline',
|
|
239
|
+
title: 'Trä, metall eller glas?',
|
|
240
|
+
html: '<p>Denna kalkylator fungerar för <strong>vilket repetititvt vertikalt element som helst</strong>. Om du använder horisontella stålvajrar är reglerna annorlunda (vanligtvis får de inte vara klättringsbara, "steg-effekt"). För glas betraktas det som en hel skiva och avstånd gäller inte, utan istället slaghållfasthet.</p>',
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
type: 'card',
|
|
244
|
+
icon: 'mdi:format-quote-close',
|
|
245
|
+
title: 'Mies van der Rohe',
|
|
246
|
+
html: '<p><em>"Arkitektur är tidens vilja översatt till rum."</em></p><p>Vi hoppas att detta verktyg hjälper dig att bygga säkrare och vackrare rum. Kom alltid ihåg att kontrollera de lokala byggreglerna i din kommun, eftersom det kan finnas specifika variationer gällande minsta höjd (vanligtvis 90-110 cm) eller belastningskrav.</p>',
|
|
247
|
+
},
|
|
248
|
+
],
|
|
249
|
+
ui: {
|
|
250
|
+
sectionTitle: 'Dimensioner',
|
|
251
|
+
sectionDesc: 'Ange måtten för ditt räcke',
|
|
252
|
+
labelRailLength: 'Totallängd (L)',
|
|
253
|
+
labelBalusterWidth: 'Balusterbredd (w)',
|
|
254
|
+
labelMaxGap: 'Maximalt mellanrum (g)',
|
|
255
|
+
blueprintTitle: 'Monteringsplan',
|
|
256
|
+
blueprintRef: 'REF: BAL-001 // SKALA: AUTO',
|
|
257
|
+
labelRequired: 'Balustrar som krävs',
|
|
258
|
+
labelExactGap: 'Exakt mellanrum',
|
|
259
|
+
labelOnCenter: 'Centrum till centrum',
|
|
260
|
+
labelTotalSpaces: 'Totalt antal mellanrum',
|
|
261
|
+
labelCoveredLength: 'Täckt längd',
|
|
262
|
+
labelDisclaimer: '* De visade dimensionerna är ungefärliga för visualisering.',
|
|
263
|
+
},
|
|
264
|
+
};
|