@jjlmoya/utils-diy 1.3.0 → 1.4.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.
Files changed (189) hide show
  1. package/package.json +2 -1
  2. package/src/category/i18n/de.ts +12 -0
  3. package/src/category/i18n/id.ts +12 -0
  4. package/src/category/i18n/it.ts +12 -0
  5. package/src/category/i18n/ja.ts +12 -0
  6. package/src/category/i18n/ko.ts +12 -0
  7. package/src/category/i18n/nl.ts +12 -0
  8. package/src/category/i18n/pl.ts +12 -0
  9. package/src/category/i18n/pt.ts +12 -0
  10. package/src/category/i18n/ru.ts +12 -0
  11. package/src/category/i18n/sv.ts +12 -0
  12. package/src/category/i18n/tr.ts +12 -0
  13. package/src/category/i18n/zh.ts +12 -0
  14. package/src/category/index.ts +13 -1
  15. package/src/tests/faq_count.test.ts +1 -1
  16. package/src/tests/i18n_coverage.test.ts +36 -0
  17. package/src/tests/locale_completeness.test.ts +2 -2
  18. package/src/tests/seo_length.test.ts +3 -0
  19. package/src/tests/slug_uniqueness.test.ts +58 -0
  20. package/src/tool/balusterCalculator/i18n/de.ts +264 -0
  21. package/src/tool/balusterCalculator/i18n/id.ts +264 -0
  22. package/src/tool/balusterCalculator/i18n/it.ts +264 -0
  23. package/src/tool/balusterCalculator/i18n/ja.ts +264 -0
  24. package/src/tool/balusterCalculator/i18n/ko.ts +264 -0
  25. package/src/tool/balusterCalculator/i18n/nl.ts +264 -0
  26. package/src/tool/balusterCalculator/i18n/pl.ts +264 -0
  27. package/src/tool/balusterCalculator/i18n/pt.ts +264 -0
  28. package/src/tool/balusterCalculator/i18n/ru.ts +264 -0
  29. package/src/tool/balusterCalculator/i18n/sv.ts +264 -0
  30. package/src/tool/balusterCalculator/i18n/tr.ts +264 -0
  31. package/src/tool/balusterCalculator/i18n/zh.ts +264 -0
  32. package/src/tool/balusterCalculator/index.ts +15 -7
  33. package/src/tool/clayCalculator/i18n/de.ts +183 -0
  34. package/src/tool/clayCalculator/i18n/id.ts +183 -0
  35. package/src/tool/clayCalculator/i18n/it.ts +183 -0
  36. package/src/tool/clayCalculator/i18n/ja.ts +182 -0
  37. package/src/tool/clayCalculator/i18n/ko.ts +183 -0
  38. package/src/tool/clayCalculator/i18n/nl.ts +183 -0
  39. package/src/tool/clayCalculator/i18n/pl.ts +183 -0
  40. package/src/tool/clayCalculator/i18n/pt.ts +183 -0
  41. package/src/tool/clayCalculator/i18n/ru.ts +183 -0
  42. package/src/tool/clayCalculator/i18n/sv.ts +183 -0
  43. package/src/tool/clayCalculator/i18n/tr.ts +183 -0
  44. package/src/tool/clayCalculator/i18n/zh.ts +183 -0
  45. package/src/tool/clayCalculator/index.ts +15 -7
  46. package/src/tool/concreteCalculator/i18n/de.ts +201 -0
  47. package/src/tool/concreteCalculator/i18n/id.ts +201 -0
  48. package/src/tool/concreteCalculator/i18n/it.ts +201 -0
  49. package/src/tool/concreteCalculator/i18n/ja.ts +201 -0
  50. package/src/tool/concreteCalculator/i18n/ko.ts +201 -0
  51. package/src/tool/concreteCalculator/i18n/nl.ts +201 -0
  52. package/src/tool/concreteCalculator/i18n/pl.ts +201 -0
  53. package/src/tool/concreteCalculator/i18n/pt.ts +201 -0
  54. package/src/tool/concreteCalculator/i18n/ru.ts +201 -0
  55. package/src/tool/concreteCalculator/i18n/sv.ts +201 -0
  56. package/src/tool/concreteCalculator/i18n/tr.ts +201 -0
  57. package/src/tool/concreteCalculator/i18n/zh.ts +201 -0
  58. package/src/tool/concreteCalculator/index.ts +17 -5
  59. package/src/tool/cutOptimizer/i18n/de.ts +178 -0
  60. package/src/tool/cutOptimizer/i18n/id.ts +178 -0
  61. package/src/tool/cutOptimizer/i18n/it.ts +178 -0
  62. package/src/tool/cutOptimizer/i18n/ja.ts +178 -0
  63. package/src/tool/cutOptimizer/i18n/ko.ts +178 -0
  64. package/src/tool/cutOptimizer/i18n/nl.ts +178 -0
  65. package/src/tool/cutOptimizer/i18n/pl.ts +178 -0
  66. package/src/tool/cutOptimizer/i18n/pt.ts +178 -0
  67. package/src/tool/cutOptimizer/i18n/ru.ts +178 -0
  68. package/src/tool/cutOptimizer/i18n/sv.ts +178 -0
  69. package/src/tool/cutOptimizer/i18n/tr.ts +178 -0
  70. package/src/tool/cutOptimizer/i18n/zh.ts +178 -0
  71. package/src/tool/cutOptimizer/index.ts +17 -5
  72. package/src/tool/drillCalculator/i18n/de.ts +137 -0
  73. package/src/tool/drillCalculator/i18n/id.ts +137 -0
  74. package/src/tool/drillCalculator/i18n/it.ts +137 -0
  75. package/src/tool/drillCalculator/i18n/ja.ts +137 -0
  76. package/src/tool/drillCalculator/i18n/ko.ts +137 -0
  77. package/src/tool/drillCalculator/i18n/nl.ts +137 -0
  78. package/src/tool/drillCalculator/i18n/pl.ts +137 -0
  79. package/src/tool/drillCalculator/i18n/pt.ts +137 -0
  80. package/src/tool/drillCalculator/i18n/ru.ts +137 -0
  81. package/src/tool/drillCalculator/i18n/sv.ts +137 -0
  82. package/src/tool/drillCalculator/i18n/tr.ts +137 -0
  83. package/src/tool/drillCalculator/i18n/zh.ts +137 -0
  84. package/src/tool/drillCalculator/index.ts +17 -5
  85. package/src/tool/drillSharpener/i18n/de.ts +120 -0
  86. package/src/tool/drillSharpener/i18n/id.ts +120 -0
  87. package/src/tool/drillSharpener/i18n/it.ts +120 -0
  88. package/src/tool/drillSharpener/i18n/ja.ts +120 -0
  89. package/src/tool/drillSharpener/i18n/ko.ts +120 -0
  90. package/src/tool/drillSharpener/i18n/nl.ts +120 -0
  91. package/src/tool/drillSharpener/i18n/pl.ts +120 -0
  92. package/src/tool/drillSharpener/i18n/pt.ts +120 -0
  93. package/src/tool/drillSharpener/i18n/ru.ts +120 -0
  94. package/src/tool/drillSharpener/i18n/sv.ts +120 -0
  95. package/src/tool/drillSharpener/i18n/tr.ts +120 -0
  96. package/src/tool/drillSharpener/i18n/zh.ts +120 -0
  97. package/src/tool/drillSharpener/index.ts +17 -5
  98. package/src/tool/epoxyCalculator/i18n/de.ts +118 -0
  99. package/src/tool/epoxyCalculator/i18n/id.ts +118 -0
  100. package/src/tool/epoxyCalculator/i18n/it.ts +118 -0
  101. package/src/tool/epoxyCalculator/i18n/ja.ts +118 -0
  102. package/src/tool/epoxyCalculator/i18n/ko.ts +118 -0
  103. package/src/tool/epoxyCalculator/i18n/nl.ts +118 -0
  104. package/src/tool/epoxyCalculator/i18n/pl.ts +118 -0
  105. package/src/tool/epoxyCalculator/i18n/pt.ts +118 -0
  106. package/src/tool/epoxyCalculator/i18n/ru.ts +118 -0
  107. package/src/tool/epoxyCalculator/i18n/sv.ts +118 -0
  108. package/src/tool/epoxyCalculator/i18n/tr.ts +118 -0
  109. package/src/tool/epoxyCalculator/i18n/zh.ts +118 -0
  110. package/src/tool/epoxyCalculator/index.ts +15 -7
  111. package/src/tool/furnitureFit/i18n/de.ts +113 -0
  112. package/src/tool/furnitureFit/i18n/id.ts +113 -0
  113. package/src/tool/furnitureFit/i18n/it.ts +113 -0
  114. package/src/tool/furnitureFit/i18n/ja.ts +113 -0
  115. package/src/tool/furnitureFit/i18n/ko.ts +113 -0
  116. package/src/tool/furnitureFit/i18n/nl.ts +113 -0
  117. package/src/tool/furnitureFit/i18n/pl.ts +113 -0
  118. package/src/tool/furnitureFit/i18n/pt.ts +113 -0
  119. package/src/tool/furnitureFit/i18n/ru.ts +113 -0
  120. package/src/tool/furnitureFit/i18n/sv.ts +113 -0
  121. package/src/tool/furnitureFit/i18n/tr.ts +113 -0
  122. package/src/tool/furnitureFit/i18n/zh.ts +113 -0
  123. package/src/tool/furnitureFit/index.ts +17 -5
  124. package/src/tool/mortarCalculator/i18n/de.ts +129 -0
  125. package/src/tool/mortarCalculator/i18n/id.ts +129 -0
  126. package/src/tool/mortarCalculator/i18n/it.ts +129 -0
  127. package/src/tool/mortarCalculator/i18n/ja.ts +129 -0
  128. package/src/tool/mortarCalculator/i18n/ko.ts +129 -0
  129. package/src/tool/mortarCalculator/i18n/nl.ts +129 -0
  130. package/src/tool/mortarCalculator/i18n/pl.ts +129 -0
  131. package/src/tool/mortarCalculator/i18n/pt.ts +129 -0
  132. package/src/tool/mortarCalculator/i18n/ru.ts +129 -0
  133. package/src/tool/mortarCalculator/i18n/sv.ts +129 -0
  134. package/src/tool/mortarCalculator/i18n/tr.ts +129 -0
  135. package/src/tool/mortarCalculator/i18n/zh.ts +129 -0
  136. package/src/tool/mortarCalculator/index.ts +17 -5
  137. package/src/tool/passepartoutCalculator/i18n/de.ts +108 -0
  138. package/src/tool/passepartoutCalculator/i18n/id.ts +108 -0
  139. package/src/tool/passepartoutCalculator/i18n/it.ts +108 -0
  140. package/src/tool/passepartoutCalculator/i18n/ja.ts +108 -0
  141. package/src/tool/passepartoutCalculator/i18n/ko.ts +108 -0
  142. package/src/tool/passepartoutCalculator/i18n/nl.ts +108 -0
  143. package/src/tool/passepartoutCalculator/i18n/pl.ts +108 -0
  144. package/src/tool/passepartoutCalculator/i18n/pt.ts +108 -0
  145. package/src/tool/passepartoutCalculator/i18n/ru.ts +108 -0
  146. package/src/tool/passepartoutCalculator/i18n/sv.ts +108 -0
  147. package/src/tool/passepartoutCalculator/i18n/tr.ts +108 -0
  148. package/src/tool/passepartoutCalculator/i18n/zh.ts +108 -0
  149. package/src/tool/passepartoutCalculator/index.ts +17 -5
  150. package/src/tool/stairCalculator/i18n/de.ts +144 -0
  151. package/src/tool/stairCalculator/i18n/id.ts +144 -0
  152. package/src/tool/stairCalculator/i18n/it.ts +144 -0
  153. package/src/tool/stairCalculator/i18n/ja.ts +144 -0
  154. package/src/tool/stairCalculator/i18n/ko.ts +144 -0
  155. package/src/tool/stairCalculator/i18n/nl.ts +144 -0
  156. package/src/tool/stairCalculator/i18n/pl.ts +144 -0
  157. package/src/tool/stairCalculator/i18n/pt.ts +144 -0
  158. package/src/tool/stairCalculator/i18n/ru.ts +144 -0
  159. package/src/tool/stairCalculator/i18n/sv.ts +144 -0
  160. package/src/tool/stairCalculator/i18n/tr.ts +144 -0
  161. package/src/tool/stairCalculator/i18n/zh.ts +144 -0
  162. package/src/tool/stairCalculator/index.ts +17 -5
  163. package/src/tool/thermalExpansionCalculator/i18n/de.ts +132 -0
  164. package/src/tool/thermalExpansionCalculator/i18n/id.ts +130 -0
  165. package/src/tool/thermalExpansionCalculator/i18n/it.ts +130 -0
  166. package/src/tool/thermalExpansionCalculator/i18n/ja.ts +130 -0
  167. package/src/tool/thermalExpansionCalculator/i18n/ko.ts +130 -0
  168. package/src/tool/thermalExpansionCalculator/i18n/nl.ts +130 -0
  169. package/src/tool/thermalExpansionCalculator/i18n/pl.ts +130 -0
  170. package/src/tool/thermalExpansionCalculator/i18n/pt.ts +130 -0
  171. package/src/tool/thermalExpansionCalculator/i18n/ru.ts +130 -0
  172. package/src/tool/thermalExpansionCalculator/i18n/sv.ts +130 -0
  173. package/src/tool/thermalExpansionCalculator/i18n/tr.ts +130 -0
  174. package/src/tool/thermalExpansionCalculator/i18n/zh.ts +130 -0
  175. package/src/tool/thermalExpansionCalculator/index.ts +17 -5
  176. package/src/tool/voltageDropCalculator/i18n/de.ts +112 -0
  177. package/src/tool/voltageDropCalculator/i18n/id.ts +110 -0
  178. package/src/tool/voltageDropCalculator/i18n/it.ts +110 -0
  179. package/src/tool/voltageDropCalculator/i18n/ja.ts +110 -0
  180. package/src/tool/voltageDropCalculator/i18n/ko.ts +110 -0
  181. package/src/tool/voltageDropCalculator/i18n/nl.ts +110 -0
  182. package/src/tool/voltageDropCalculator/i18n/pl.ts +110 -0
  183. package/src/tool/voltageDropCalculator/i18n/pt.ts +110 -0
  184. package/src/tool/voltageDropCalculator/i18n/ru.ts +110 -0
  185. package/src/tool/voltageDropCalculator/i18n/sv.ts +110 -0
  186. package/src/tool/voltageDropCalculator/i18n/tr.ts +110 -0
  187. package/src/tool/voltageDropCalculator/i18n/zh.ts +110 -0
  188. package/src/tool/voltageDropCalculator/index.ts +17 -5
  189. package/src/types.ts +1 -1
@@ -0,0 +1,178 @@
1
+ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { CutOptimizerUI } from '../ui';
4
+
5
+ const slug = 'cut-optimizer';
6
+ const title = '木材与板材切割优化计算器';
7
+ const description =
8
+ '免费的木材、金属或管道切割优化计算器。通过 1D 和 2D 装箱算法最小化损耗。木工、金工及 DIY 装修的理想选择。';
9
+
10
+ const faqData = [
11
+ {
12
+ question: '什么是 1D 切割优化?',
13
+ answer:
14
+ '这是一种使用数学算法(如装箱问题 - Bin Packing Problem)来确定如何从标准长度的原材料(方木、型材、管道)中切割出较小零件,并使损耗降至最低的工具。',
15
+ },
16
+ {
17
+ question: '为什么要包含锯缝宽度 (Kerf)?',
18
+ answer:
19
+ '锯子每次切割材料时,都会损耗几毫米(通常根据锯片不同在 2mm 到 4mm 之间)。如果不计算这个空间,您列表中的最后几个零件将会比计划的要短。',
20
+ },
21
+ {
22
+ question: '我可以混合不同长度的零件吗?',
23
+ answer:
24
+ '可以,我们的计算器接受任何长度和数量的组合。算法将评估所有可能的组合,并优先考虑原材料的最大化利用。',
25
+ },
26
+ {
27
+ question: '如何保存我的切割计划?',
28
+ answer:
29
+ '优化完成后,您可以打印该页面或对可视化图表进行截图。这将在车间作业时作为物理指南,以免搞乱切割顺序。',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: '定义原材料 (Stock)',
36
+ text: '输入可用方木或型材的总长度(例如 2400mm 或 6000mm)。',
37
+ },
38
+ {
39
+ name: '设置锯缝宽度 (Kerf)',
40
+ text: '设置锯片每次切割时移除的毫米数,以确保计算达到毫米级精度。',
41
+ },
42
+ {
43
+ name: '列出所需零件',
44
+ text: '输入项目中每个所需零件的长度和数量。',
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: 'zh',
84
+ };
85
+
86
+ export const content: ToolLocaleContent<CutOptimizerUI> = {
87
+ slug,
88
+ title,
89
+ description,
90
+ faqTitle: '常见问题',
91
+ faq: faqData,
92
+ bibliographyTitle: '技术参考',
93
+ bibliography: [
94
+ {
95
+ name: 'Cutting Stock Problem: Wikipedia',
96
+ url: 'https://en.wikipedia.org/wiki/Cutting_stock_problem',
97
+ },
98
+ {
99
+ name: 'Bin Packing Problem: Wolfram MathWorld',
100
+ url: 'https://mathworld.wolfram.com/BinPackingProblem.html',
101
+ },
102
+ ],
103
+ howTo: howToData,
104
+ schemas: [faqSchema, howToSchema, appSchema],
105
+ seo: [
106
+ {
107
+ type: 'title',
108
+ text: '切割优化终极指南',
109
+ level: 2,
110
+ },
111
+ {
112
+ type: 'paragraph',
113
+ html: '切割优化(技术上称为<strong>原材料切割问题 - Cutting Stock Problem</strong>)是工业工程中最引人入胜的物流挑战之一。对于包含 20 个零件和 5 个库存排样的项目,存在数百万种可能的组合。计算机算法可以在几毫秒内找到最佳解决方案,将通常 15% 的损耗降至 5% 以下。',
114
+ },
115
+ {
116
+ type: 'title',
117
+ text: '1D 线性切割与 2D 板材切割',
118
+ level: 3,
119
+ },
120
+ {
121
+ type: 'card',
122
+ icon: 'mdi:arrow-expand-horizontal',
123
+ title: '方木与型材的线性切割',
124
+ html: '<p>在<strong>线性切割 (1D)</strong> 中,优化仅在长度这单一维度上进行。材料的宽度被视为常数。它是方木、梁材、金属和铝型材、PVC 或铜管以及丝杆的理想选择。</p>',
125
+ },
126
+ {
127
+ type: 'card',
128
+ icon: 'mdi:view-grid',
129
+ title: '板材与薄板的板材切割',
130
+ html: '<p>在<strong>板材切割 (2D)</strong> 中,管理宽度和长度两个维度。该工具有基于断截式切削算法,每次切割都贯穿边缘。非常适合各种人造板(MDF、刨花板)、胶合板、玻璃、亚克力和金属板材。</p>',
131
+ },
132
+ {
133
+ type: 'title',
134
+ text: '关键因素:锯缝宽度 (Kerf)',
135
+ level: 3,
136
+ },
137
+ {
138
+ type: 'paragraph',
139
+ html: '<strong>Kerf</strong> 是每次切割时移除的材料。标准的台锯锯片每次切割消耗 3.0mm 到 3.2mm。手持圆锯消耗 1.5 到 2.5mm。亚克力的激光切割仅消耗 0.1 到 0.3mm。在 2400mm 的方木上进行 10 次切割的项目中,忽略锯缝宽度可能会导致您损失 30mm 到 32mm 的可用材料。',
140
+ },
141
+ {
142
+ type: 'title',
143
+ text: 'Best Fit Decreasing 算法',
144
+ level: 3,
145
+ },
146
+ {
147
+ type: 'card',
148
+ icon: 'mdi:chip',
149
+ title: '优化计算器的内部运作原理',
150
+ html: '<p>优化器的核心使用 <strong>Best Fit Decreasing (BFD)</strong> 策略:首先将所有零件按长度从大到小排序(较大的零件更难安置)。然后,针对每个零件,寻找现有的余料中能够容纳它并留下最少剩余空间的合适位置。只有当任何余料都无法容纳时,才会启用新的原材料。与随机选择相比,这一过程能显著降低损耗。',
151
+ },
152
+ ],
153
+ ui: {
154
+ modeLinearLabel: '线性 (排条)',
155
+ modePanelLabel: '板材 (排版)',
156
+ configTitle: '材料配置',
157
+ labelStockLength: '材料长度 (mm)',
158
+ labelStockWidth: '材料宽度 (mm)',
159
+ labelKerf: '锯片厚度 / 锯缝 (mm)',
160
+ cutsTitle: '切割列表',
161
+ placeholderLength: '长',
162
+ placeholderWidth: '宽',
163
+ placeholderQty: '数量',
164
+ btnRemoveTitle: '删除',
165
+ statStockUsed: '使用材料',
166
+ statTotalCuts: '总切割数',
167
+ statWaste: '总损耗',
168
+ statEfficiency: '效率',
169
+ vizTitle: '切割可视化',
170
+ emptyState: '添加零件并点击计算以查看切割计划。',
171
+ noValidCuts: '无法生成有效的切割。请检查尺寸。',
172
+ noValidPanels: '无法生成有效的排版。请检查零件是否超出板材尺寸。',
173
+ stockLabel: '材料',
174
+ panelLabel: '板材',
175
+ wasteLabel: '损耗:',
176
+ effLabel: '效率:',
177
+ },
178
+ };
@@ -10,14 +10,26 @@ export {
10
10
  CutOptimizerBibliography,
11
11
  };
12
12
 
13
- const es = async () => (await import('./i18n/es')).content;
14
- const en = async () => (await import('./i18n/en')).content;
15
- const fr = async () => (await import('./i18n/fr')).content;
16
-
17
13
  export const cutOptimizer: DiyToolEntry<CutOptimizerUI> = {
18
14
  id: 'cut-optimizer',
19
15
  icons: { bg: 'mdi:saw-blade', fg: 'mdi:ruler' },
20
- i18n: { es, en, fr },
16
+ i18n: {
17
+ de: () => import('./i18n/de').then((m) => m.content),
18
+ en: () => import('./i18n/en').then((m) => m.content),
19
+ es: () => import('./i18n/es').then((m) => m.content),
20
+ fr: () => import('./i18n/fr').then((m) => m.content),
21
+ id: () => import('./i18n/id').then((m) => m.content),
22
+ it: () => import('./i18n/it').then((m) => m.content),
23
+ ja: () => import('./i18n/ja').then((m) => m.content),
24
+ ko: () => import('./i18n/ko').then((m) => m.content),
25
+ nl: () => import('./i18n/nl').then((m) => m.content),
26
+ pl: () => import('./i18n/pl').then((m) => m.content),
27
+ pt: () => import('./i18n/pt').then((m) => m.content),
28
+ ru: () => import('./i18n/ru').then((m) => m.content),
29
+ sv: () => import('./i18n/sv').then((m) => m.content),
30
+ tr: () => import('./i18n/tr').then((m) => m.content),
31
+ zh: () => import('./i18n/zh').then((m) => m.content),
32
+ },
21
33
  };
22
34
 
23
35
  export const CUT_OPTIMIZER_TOOL: ToolDefinition = {
@@ -0,0 +1,137 @@
1
+ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { DrillCalculatorUI } from '../ui';
4
+
5
+ const slug = 'drehzahlrechner-bohren-fraesen';
6
+ const title = 'Drehzahlrechner Bohren und Fräsen';
7
+ const description = 'Berechnen Sie die idealen Umdrehungen pro Minute (U/min) für Ihre Bohrmaschine oder Fräse basierend auf Material und Werkzeugdurchmesser.';
8
+
9
+ const faqData = [
10
+ {
11
+ question: 'Warum verbrennen Bohrer beim Bohren?',
12
+ answer: 'Hauptsächlich durch zu hohe Drehzahlen (U/min). Wenn der Bohrer schneller dreht, als das Material die Wärme ableiten kann, steigt die Temperatur über die Anlassgrenze des Stahls, wodurch die Schneide weich wird und nicht mehr schneidet.',
13
+ },
14
+ {
15
+ question: 'Was ist die Schnittgeschwindigkeit (Vc)?',
16
+ answer: 'Es ist die lineare Geschwindigkeit in Metern pro Minute, mit der die Werkzeugschneide über die Materialoberfläche fährt. Jedes Material hat eine empfohlene Vc, die unabhängig vom Bohrerdurchmesser ist.',
17
+ },
18
+ {
19
+ question: 'Wann sollte ich Hartmetall-Werkzeuge (VHM/Widia) verwenden?',
20
+ answer: 'Verwenden Sie Hartmetall, wenn Sie mit viel höheren Geschwindigkeiten arbeiten müssen, in der industriellen Fertigung oder wenn das zu bohrende Material extrem hart ist. Für normales Heimwerken ist HSS ausreichend und bruchfester bei Biegung.',
21
+ },
22
+ {
23
+ question: 'Ist Schmiermittel immer notwendig?',
24
+ answer: 'Bei Metallen fast immer empfehlenswert. Bei Aluminium verhindert es das Verkleben des Materials am Bohrer, bei Stählen reduziert es die Hitze. Bei Holz und Kunststoffen ist es besser trocken zu arbeiten und den Bohrer häufig zu lüften.',
25
+ },
26
+ {
27
+ question: 'Wie berechne ich den Vorschub ohne CNC-Maschine?',
28
+ answer: 'An einer Handbohrmaschine spürt man den Vorschub durch den Druck. Es sollten konstante und saubere Späne entstehen. Wenn nur Staub kommt, ist der Druck zu gering oder die Drehzahl zu hoch. Wenn der Span sehr dick ist und die Maschine sich quält, ist der Druck zu hoch.',
29
+ },
30
+ ];
31
+
32
+ const howToData = [
33
+ { name: 'Material wählen', text: 'Geben Sie an, welches Material Sie bohren oder fräsen möchten (Stahl, Aluminium, Holz etc.). Jedes hat eine andere Härte und thermische Kapazität.' },
34
+ { name: 'Durchmesser eingeben', text: 'Geben Sie den exakten Durchmesser Ihres Bohrers oder Fräsers in Millimetern ein. Denken Sie daran: Je größer der Durchmesser, desto geringer die Drehzahl.' },
35
+ { name: 'Werkzeugtyp wählen', text: 'Bestimmen Sie, ob Ihr Bohrer aus HSS oder Hartmetall (VHM) besteht. Hartmetall hält viel höhere Geschwindigkeiten aus.' },
36
+ { name: 'Drehzahl an der Maschine einstellen', text: 'Stellen Sie Ihre Maschine auf den berechneten Wert ein. Wenn Ihre Maschine feste Gänge hat, nutzen Sie unsere Auswahlhilfe für die sicherste Riemenposition.' },
37
+ ];
38
+
39
+ const faqSchema: WithContext<FAQPage> = {
40
+ '@context': 'https://schema.org',
41
+ '@type': 'FAQPage',
42
+ mainEntity: faqData.map((item) => ({
43
+ '@type': 'Question',
44
+ name: item.question,
45
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
46
+ })),
47
+ };
48
+
49
+ const howToSchema: WithContext<HowToThing> = {
50
+ '@context': 'https://schema.org',
51
+ '@type': 'HowTo',
52
+ name: title,
53
+ description,
54
+ step: howToData.map((step, i) => ({
55
+ '@type': 'HowToStep',
56
+ position: i + 1,
57
+ name: step.name,
58
+ text: step.text,
59
+ })),
60
+ };
61
+
62
+ const appSchema: WithContext<SoftwareApplication> = {
63
+ '@context': 'https://schema.org',
64
+ '@type': 'SoftwareApplication',
65
+ name: title,
66
+ description,
67
+ applicationCategory: 'UtilityApplication',
68
+ operatingSystem: 'All',
69
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
70
+ inLanguage: 'de',
71
+ };
72
+
73
+ export const content: ToolLocaleContent<DrillCalculatorUI> = {
74
+ slug,
75
+ title,
76
+ description,
77
+ faqTitle: 'Häufig gestellte Fragen',
78
+ faq: faqData,
79
+ bibliographyTitle: 'Technische Referenzen',
80
+ bibliography: [
81
+ { name: 'Sandvik Coromant: Formeln für Schnittgeschwindigkeit und Vorschub', url: 'https://www.sandvik.coromant.com/de-de/knowledge/machining-formulas-definitions/general-turning-formulas-definitions' },
82
+ { name: 'Tabellenbuch Metall', url: 'https://www.europa-lehrmittel.de/' },
83
+ ],
84
+ howTo: howToData,
85
+ schemas: [faqSchema, howToSchema, appSchema],
86
+ seo: [
87
+ { type: 'title', text: 'Die Bedeutung der Umdrehungen pro Minute in der Zerspanung', level: 2 },
88
+ { type: 'paragraph', html: 'Die richtige Berechnung der Umdrehungen pro Minute ist der Unterschied zwischen perfekter Arbeit und einer teuren Katastrophe. Es geht nicht darum, den Bohrer so schnell wie möglich zu drehen, sondern die physikalischen Gesetze von Reibung und Materialwiderstand zu beachten. Unser Rechner optimiert die Leistung Ihrer Werkzeuge und die Qualität Ihrer Oberflächen.' },
89
+ { type: 'title', text: 'Die Schnittgeschwindigkeit verstehen', level: 3 },
90
+ { type: 'card', icon: 'mdi:math-log', title: 'Berechnungsformel für U/min', html: '<p>Die Schnittgeschwindigkeit ist ein Wert in Metern pro Minute, der angibt, mit welcher idealen Geschwindigkeit die Schneide durch das Material fahren sollte. Die Formel lautet: <code>U/min = (Vc × 1000) / (π × D)</code>, wobei D der Durchmesser in Millimetern ist.' },
91
+ { type: 'title', text: 'HSS vs. Hartmetall', level: 3 },
92
+ { type: 'paragraph', html: '<strong>Schnellarbeitsstahl (HSS)</strong> Werkzeuge sind günstig und belastbar, haben aber eine begrenzte thermische Beständigkeit. <strong>Hartmetall (VHM)</strong> erlaubt 3- bis 5-mal höhere Schnittgeschwindigkeiten, ist aber spröder. Der Rechner passt die Parameter automatisch an den Werkzeugtyp an.' },
93
+ { type: 'title', text: '3 häufige Fehler beim Bohren', level: 3 },
94
+ { type: 'paragraph', html: '<strong>Zu hohe Drehzahl:</strong> Verursacht Überhitzung und Enthärtung des Stahls. <strong>Zu niedrige Drehzahl:</strong> Der Bohrer vibriert und kann durch Ermüdung brechen. <strong>Keine Kühlung:</strong> Hitze verkürzt die Werkzeuglebensdauer erheblich.' },
95
+ ],
96
+ ui: {
97
+ labelMaterial: 'Werkstoff',
98
+ matSteel: 'Baustahl',
99
+ matInox: 'Edelstahl',
100
+ matAlu: 'Aluminium',
101
+ matBrass: 'Messing',
102
+ matCastIron: 'Gusseisen',
103
+ matWood: 'Holz',
104
+ matPlastic: 'Kunststoff',
105
+ coolSteel: 'Kühlschmiermittel/Öl',
106
+ coolInox: 'Schneidöl spezial',
107
+ coolAlu: 'Spiritus / Paraffin',
108
+ coolBrass: 'Trocken / Luft',
109
+ coolCastIron: 'Trocken',
110
+ coolWood: 'Nur Absaugung',
111
+ coolPlastic: 'Druckluft',
112
+ labelTool: 'Werkzeugtyp',
113
+ typeHss: 'HSS (Schnellarbeitsstahl)',
114
+ typeWidia: 'Hartmetall (VHM)',
115
+ labelDiameter: 'Durchmesser',
116
+ unitMm: 'mm',
117
+ unitInch: 'Zoll',
118
+ modeColumnDrill: 'Säulenbohrmaschine',
119
+ labelAdvanced: 'Vorschub-Parameter',
120
+ labelLips: 'Anzahl Schneiden (z)',
121
+ labelFz: 'Vorschub/Zahn (fz)',
122
+ labelMachine: 'Drehzahlen Ihrer Maschine',
123
+ presetStandard: 'Standard',
124
+ presetCnc: 'CNC',
125
+ addRpmManual: 'RPM manuell hinzufügen...',
126
+ addButton: '+',
127
+ resultRpm: 'Optimale Drehzahl',
128
+ resultCooling: 'Kühlung',
129
+ resultFeed: 'Vorschubwert',
130
+ resultClosest: 'Empfohlene Einstellung',
131
+ rpmUnit: 'Umdrehungen / Minute',
132
+ recommendedLabel: 'Empfohlene Einstellung',
133
+ recommendedHint: 'Stellen Sie den Wahlschalter Ihrer Maschine auf diese Position',
134
+ statusLimitActive: 'Maschinenlimit aktiv',
135
+ statusOutOfRange: 'Bereich außerhalb des gewerblichen Standards',
136
+ },
137
+ };
@@ -0,0 +1,137 @@
1
+ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { DrillCalculatorUI } from '../ui';
4
+
5
+ const slug = 'kalkulator-kecepatan-bor-frais';
6
+ const title = 'Kalkulator RPM Pemesinan dan Bor';
7
+ const description = 'Hitung putaran per menit (RPM) ideal untuk bor atau mesin frais Anda berdasarkan material dan diameter mata bor. Hindari kerusakan alat Anda.';
8
+
9
+ const faqData = [
10
+ {
11
+ question: 'Mengapa mata bor terbakar saat mengebor?',
12
+ answer: 'Terutama karena putaran (RPM) yang berlebihan. Ketika mata bor berputar lebih cepat daripada kemampuan material menyerap panas, gesekan meningkatkan suhu di atas batas pengerasan baja, membuat mata potong menjadi lunak dan berhenti memotong.',
13
+ },
14
+ {
15
+ question: 'Apa itu kecepatan potong (Vc)?',
16
+ answer: 'Adalah kecepatan linier dalam meter per menit di mana mata potong alat bergerak di permukaan material. Setiap material memiliki Vc yang direkomendasikan yang tidak bergantung pada diameter mata bor.',
17
+ },
18
+ {
19
+ question: 'Kapan saya harus menggunakan alat Karbida (Widia)?',
20
+ answer: 'Anda harus menggunakan karbida ketika membutuhkan kecepatan yang jauh lebih tinggi, dalam produksi industri, atau ketika material yang akan dibor sangat keras. Untuk DIY umum, HSS sudah cukup dan lebih tahan terhadap patah karena kelenturannya.',
21
+ },
22
+ {
23
+ question: 'Apakah pelumas selalu diperlukan?',
24
+ answer: 'Pada logam, hampir selalu direkomendasikan. Pada aluminium mencegah material menempel pada mata bor, dan pada baja mengurangi panas. Pada kayu dan plastik, lebih baik dikerjakan kering dengan sering mengeluarkan mata bor untuk membuang sisa potongan.',
25
+ },
26
+ {
27
+ question: 'Bagaimana cara menghitung gerak makan (feed) jika saya tidak memiliki mesin CNC?',
28
+ answer: 'Pada bor manual, gerak makan dirasakan melalui tekanan. Anda harus melihat tatal (gram) yang keluar secara konstan dan bersih. Jika yang keluar adalah bubuk, berarti tekanan kurang atau RPM terlalu tinggi. Jika tatal terlalu tebal dan mesin bor tampak kepayahan, berarti tekanan terlalu kuat.',
29
+ },
30
+ ];
31
+
32
+ const howToData = [
33
+ { name: 'Pilih material', text: 'Tentukan material apa yang akan Anda bor atau frais (baja, aluminium, kayu, dll.). Masing-masing memiliki kekerasan dan kapasitas termal yang berbeda.' },
34
+ { name: 'Masukkan diameter', text: 'Tulis diameter tepat mata bor atau pisau frais Anda dalam milimeter. Ingat bahwa semakin besar diameter, semakin rendah kecepatan putarannya.' },
35
+ { name: 'Pilih jenis alat', text: 'Tentukan apakah mata bor Anda terbuat dari baja kecepatan tinggi (HSS) atau karbida (Widia). Karbida tahan terhadap kecepatan yang jauh lebih tinggi.' },
36
+ { name: 'Atur RPM di mesin Anda', text: 'Konfigurasikan bor atau mesin frais Anda dengan nilai yang dihitung. Jika mesin Anda memiliki posisi tetap, gunakan alat kecepatan terdekat kami untuk memilih posisi puli yang paling aman.' },
37
+ ];
38
+
39
+ const faqSchema: WithContext<FAQPage> = {
40
+ '@context': 'https://schema.org',
41
+ '@type': 'FAQPage',
42
+ mainEntity: faqData.map((item) => ({
43
+ '@type': 'Question',
44
+ name: item.question,
45
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
46
+ })),
47
+ };
48
+
49
+ const howToSchema: WithContext<HowToThing> = {
50
+ '@context': 'https://schema.org',
51
+ '@type': 'HowTo',
52
+ name: title,
53
+ description,
54
+ step: howToData.map((step, i) => ({
55
+ '@type': 'HowToStep',
56
+ position: i + 1,
57
+ name: step.name,
58
+ text: step.text,
59
+ })),
60
+ };
61
+
62
+ const appSchema: WithContext<SoftwareApplication> = {
63
+ '@context': 'https://schema.org',
64
+ '@type': 'SoftwareApplication',
65
+ name: title,
66
+ description,
67
+ applicationCategory: 'UtilityApplication',
68
+ operatingSystem: 'All',
69
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
70
+ inLanguage: 'id',
71
+ };
72
+
73
+ export const content: ToolLocaleContent<DrillCalculatorUI> = {
74
+ slug,
75
+ title,
76
+ description,
77
+ faqTitle: 'Pertanyaan Umum',
78
+ faq: faqData,
79
+ bibliographyTitle: 'Referensi Teknis',
80
+ bibliography: [
81
+ { name: 'Sandvik Coromant: Cutting Speed and Feed Rate Formulae', url: 'https://www.sandvik.coromant.com/en-gb/knowledge/machining-formulas-definitions/general-turning-formulas-definitions' },
82
+ { name: 'Mesin. Perhitungan Bengkel — A.L. Casillas', url: 'https://www.google.com/search?q=Casillas+Maquinas+Calculos+de+taller' },
83
+ ],
84
+ howTo: howToData,
85
+ schemas: [faqSchema, howToSchema, appSchema],
86
+ seo: [
87
+ { type: 'title', text: 'Pentingnya RPM dalam Pemesinan', level: 2 },
88
+ { type: 'paragraph', html: 'Perhitungan RPM yang benar adalah perbedaan antara pekerjaan yang sempurna dan kegagalan yang mahal. Ini bukan tentang memutar mata bor secepat mungkin, tetapi tentang menghormati hukum fisika yang diterapkan pada gesekan dan ketahanan material. Kalkulator kami dirancang untuk mengoptimalkan kinerja alat Anda dan kualitas hasil akhir Anda.' },
89
+ { type: 'title', text: 'Memahami Kecepatan Potong', level: 3 },
90
+ { type: 'card', icon: 'mdi:math-log', title: 'Formula Perhitungan RPM', html: '<p>Kecepatan potong adalah nilai dalam meter per menit yang menunjukkan kecepatan ideal mata potong melewati material. Formula yang digunakan adalah: <code>RPM = (Vc × 1000) / (π × D)</code> di mana D adalah diameter dalam milimeter. Perhitungan ini tidak bergantung pada diameter material yang kita potong.' },
91
+ { type: 'title', text: 'HSS vs Karbida', level: 3 },
92
+ { type: 'paragraph', html: 'Alat <strong>Baja Kecepatan Tinggi (HSS)</strong> ekonomis dan tahan terhadap benturan, tetapi memiliki ketahanan termal yang terbatas. <strong>Karbida (Carbide/Widia)</strong> memungkinkan kecepatan potong 3 hingga 5 kali lebih tinggi, tetapi lebih rapuh. Kalkulator secara otomatis menyesuaikan parameter sesuai dengan jenis alat.' },
93
+ { type: 'title', text: '3 Kesalahan Umum saat Mengebor', level: 3 },
94
+ { type: 'paragraph', html: '<strong>RPM terlalu tinggi:</strong> Menyebabkan kelebihan panas dan hilangnya kekerasan baja. <strong>RPM terlalu rendah:</strong> Mata bor bergetar dan bisa patah karena kelelahan material. <strong>Tanpa pendinginan:</strong> Panas mengurangi masa pakai alat secara signifikan.' },
95
+ ],
96
+ ui: {
97
+ labelMaterial: 'Material benda kerja',
98
+ matSteel: 'Baja Lunak',
99
+ matInox: 'Stainless Steel',
100
+ matAlu: 'Aluminium',
101
+ matBrass: 'Kuningan',
102
+ matCastIron: 'Besi Tuang',
103
+ matWood: 'Kayu',
104
+ matPlastic: 'Plastik',
105
+ coolSteel: 'Cairan Pendingin atau Oli',
106
+ coolInox: 'Oli Potong EP',
107
+ coolAlu: 'Alkohol / Parafin',
108
+ coolBrass: 'Kering / Udara',
109
+ coolCastIron: 'Kering',
110
+ coolWood: 'Hanya Aspirasi',
111
+ coolPlastic: 'Semburan Udara',
112
+ labelTool: 'Jenis Alat',
113
+ typeHss: 'Baja (HSS)',
114
+ typeWidia: 'Karbida (Widia)',
115
+ labelDiameter: 'Diameter',
116
+ unitMm: 'mm',
117
+ unitInch: 'inci',
118
+ modeColumnDrill: 'Mode Mesin Bor Meja',
119
+ labelAdvanced: 'Parameter Gerak Makan',
120
+ labelLips: 'Jml. Mata Potong (z)',
121
+ labelFz: 'Gerak makan/gigi (Fz)',
122
+ labelMachine: 'Kecepatan Mesin Anda',
123
+ presetStandard: 'Standar',
124
+ presetCnc: 'CNC',
125
+ addRpmManual: 'Tambah RPM manual...',
126
+ addButton: '+',
127
+ resultRpm: 'Kecepatan Optimal',
128
+ resultCooling: 'Pendinginan',
129
+ resultFeed: 'Gerak Makan Hasil',
130
+ resultClosest: 'Pengaturan disarankan',
131
+ rpmUnit: 'Putaran / Menit',
132
+ recommendedLabel: 'Pengaturan disarankan',
133
+ recommendedHint: 'Atur selektor mesin Anda ke posisi ini',
134
+ statusLimitActive: 'Batas mesin aktif',
135
+ statusOutOfRange: 'Rentang di luar standar komersial',
136
+ },
137
+ };
@@ -0,0 +1,137 @@
1
+ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { DrillCalculatorUI } from '../ui';
4
+
5
+ const slug = 'calcolatore-giri-trapano-fresa';
6
+ const title = 'Calcolatore RPM Lavorazione e Perforazione';
7
+ const description = 'Calcola i giri al minuto ideali per il tuo trapano o fresa secondo il materiale e il diametro della punta. Evita di bruciare i tuoi strumenti.';
8
+
9
+ const faqData = [
10
+ {
11
+ question: 'Perché le punte si bruciano durante la foratura?',
12
+ answer: 'Principalmente per un eccesso di giri al minuto (RPM). Quando la punta gira più velocemente di quanto il materiale permetta di dissipare il calore, l\'attrito innalza la temperatura sopra il limite di tempra dell\'acciaio, rendendo il tagliente morbido e incapace di tagliare.',
13
+ },
14
+ {
15
+ question: 'Cos\'è la velocità di taglio (Vc)?',
16
+ answer: 'È la velocità lineare in metri al minuto alla quale il tagliente dell\'utensile percorre la superficie del materiale. Ogni materiale ha una Vc raccomandata che non dipende dal diametro della punta.',
17
+ },
18
+ {
19
+ question: 'Quando devo usare un utensile in Metallo Duro (Widia)?',
20
+ answer: 'Devi usare il metallo duro quando hai bisogno di lavorare a velocità molto più elevate, in produzioni industriali o quando il materiale da forare è estremamente duro. Per il fai-da-te comune, l\'HSS è sufficiente e più resistente alle rotture per flessione.',
21
+ },
22
+ {
23
+ question: 'È sempre necessario usare il lubrificante?',
24
+ answer: 'Sui metalli è quasi sempre consigliabile. Sull\'alluminio evita che il materiale si attacchi alla punta, e sugli acciai riduce il calore. Su legni e plastiche è meglio lavorare a secco con scarichi frequenti della punta.',
25
+ },
26
+ {
27
+ question: 'Come calcolo l\'avanzamento se non ho una fresa CNC?',
28
+ answer: 'In un trapano manuale, l\'avanzamento si sente dalla pressione. Devi vedere che esce un truciolo costante e pulito. Se esce polvere, stai premendo poco o gli RPM sono eccessivi. Se il truciolo è molto spesso e il trapano soffre, stai premendo troppo.',
29
+ },
30
+ ];
31
+
32
+ const howToData = [
33
+ { name: 'Seleziona il materiale', text: 'Indica quale materiale intendi forare o fresare (acciaio, alluminio, legno, ecc.). Ognuno ha una durezza e capacità termica diversa.' },
34
+ { name: 'Inserisci il diametro', text: 'Scrivi il diametro esatto della tua punta o fresa in millimetri. Ricorda che maggiore è il diametro, minore deve essere la velocità di rotazione.' },
35
+ { name: 'Scegli il tipo di utensile', text: 'Determina se la tua punta è in acciaio rapido (HSS) o in metallo duro (Carburo/Widia). Quelli in metallo duro sopportano velocità molto più elevate.' },
36
+ { name: 'Imposta gli RPM sulla tua macchina', text: 'Configura il tuo trapano o fresa con il valore calcolato. Se la tua macchina ha posizioni fisse, usa il nostro strumento di velocità vicina per scegliere la posizione della puleggia più sicura.' },
37
+ ];
38
+
39
+ const faqSchema: WithContext<FAQPage> = {
40
+ '@context': 'https://schema.org',
41
+ '@type': 'FAQPage',
42
+ mainEntity: faqData.map((item) => ({
43
+ '@type': 'Question',
44
+ name: item.question,
45
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
46
+ })),
47
+ };
48
+
49
+ const howToSchema: WithContext<HowToThing> = {
50
+ '@context': 'https://schema.org',
51
+ '@type': 'HowTo',
52
+ name: title,
53
+ description,
54
+ step: howToData.map((step, i) => ({
55
+ '@type': 'HowToStep',
56
+ position: i + 1,
57
+ name: step.name,
58
+ text: step.text,
59
+ })),
60
+ };
61
+
62
+ const appSchema: WithContext<SoftwareApplication> = {
63
+ '@context': 'https://schema.org',
64
+ '@type': 'SoftwareApplication',
65
+ name: title,
66
+ description,
67
+ applicationCategory: 'UtilityApplication',
68
+ operatingSystem: 'All',
69
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
70
+ inLanguage: 'it',
71
+ };
72
+
73
+ export const content: ToolLocaleContent<DrillCalculatorUI> = {
74
+ slug,
75
+ title,
76
+ description,
77
+ faqTitle: 'Domande Frequenti',
78
+ faq: faqData,
79
+ bibliographyTitle: 'Riferimenti Tecnici',
80
+ bibliography: [
81
+ { name: 'Sandvik Coromant: Cutting Speed and Feed Rate Formulae', url: 'https://www.sandvik.coromant.com/en-gb/knowledge/machining-formulas-definitions/general-turning-formulas-definitions' },
82
+ { name: 'Macchine. Calcoli d\'officina — A.L. Casillas', url: 'https://www.google.com/search?q=Casillas+Maquinas+Calculos+de+taller' },
83
+ ],
84
+ howTo: howToData,
85
+ schemas: [faqSchema, howToSchema, appSchema],
86
+ seo: [
87
+ { type: 'title', text: 'L\'importanza dei Giri al Minuto nella lavorazione meccanica', level: 2 },
88
+ { type: 'paragraph', html: 'Il calcolo corretto dei giri al minuto fa la differenza tra un lavoro perfetto e un disastro costoso. Non si tratta di far girare una punta il più velocemente possibile, ma di rispettare le leggi della fisica applicate all\'attrito e alla resistenza dei materiali. Il nostro calcolatore è progettato per ottimizzare le prestazioni dei tuoi utensili e la qualità delle tue finiture.' },
89
+ { type: 'title', text: 'Capire la Velocità di Taglio', level: 3 },
90
+ { type: 'card', icon: 'mdi:math-log', title: 'Formula di Calcolo degli RPM', html: '<p>La velocità di taglio è un valore in metri al minuto che indica la velocità ideale alla quale il tagliente deve passare sul materiale. La formula che usiamo è: <code>RPM = (Vc × 1000) / (π × D)</code> dove D è il diametro in millimetri. Questo calcolo è indipendente dal diametro del materiale che stiamo tagliando.' },
91
+ { type: 'title', text: 'HSS vs Metallo Duro', level: 3 },
92
+ { type: 'paragraph', html: 'Gli utensili in <strong>Acciaio Rapido (HSS)</strong> sono economici e resistenti agli urti, ma hanno una resistenza termica limitata. Il <strong>Metallo Duro (Carburo)</strong> permette velocità di taglio da 3 a 5 superiori, ma sono più fragili. Il calcolatore adatta automaticamente i parametri secondo il tipo di utensile.' },
93
+ { type: 'title', text: '3 Errori Comuni durante la Foratura', level: 3 },
94
+ { type: 'paragraph', html: '<strong>RPM troppo alti:</strong> Causano surriscaldamento e perdita di tempra dell\'acciaio. <strong>RPM troppo bassi:</strong> La punta vibra e può rompersi per fatica. <strong>Senza refrigerante:</strong> Il calore riduce significativamente la vita utile dell\'utensile.' },
95
+ ],
96
+ ui: {
97
+ labelMaterial: 'Materiale del pezzo',
98
+ matSteel: 'Acciaio Dolce',
99
+ matInox: 'Inossidabile',
100
+ matAlu: 'Alluminio',
101
+ matBrass: 'Ottone',
102
+ matCastIron: 'Ghisa',
103
+ matWood: 'Legni',
104
+ matPlastic: 'Plastiche',
105
+ coolSteel: 'Olio da taglio o Emulsione',
106
+ coolInox: 'Olio da Taglio EP',
107
+ coolAlu: 'Alcool / Paraffina',
108
+ coolBrass: 'A secco / Aria',
109
+ coolCastIron: 'A secco',
110
+ coolWood: 'Solo Aspirazione',
111
+ coolPlastic: 'Getto d\'Aria',
112
+ labelTool: 'Tipo di Utensile',
113
+ typeHss: 'Acciai (HSS)',
114
+ typeWidia: 'Metallo Duro (Widia)',
115
+ labelDiameter: 'Diametro',
116
+ unitMm: 'mm',
117
+ unitInch: 'pollici',
118
+ modeColumnDrill: 'Modalità Trapano a Colonna',
119
+ labelAdvanced: 'Parametri di Avanzamento',
120
+ labelLips: 'Nº di Taglienti (z)',
121
+ labelFz: 'Avanzamento/dente (Fz)',
122
+ labelMachine: 'Velocità della tua Macchina',
123
+ presetStandard: 'Standard',
124
+ presetCnc: 'CNC',
125
+ addRpmManual: 'Aggiungi RPM manuali...',
126
+ addButton: '+',
127
+ resultRpm: 'Velocità Ottimale',
128
+ resultCooling: 'Refrigerazione',
129
+ resultFeed: 'Avanzamento Risultante',
130
+ resultClosest: 'Regolazione consigliata',
131
+ rpmUnit: 'Giri / Minuto',
132
+ recommendedLabel: 'Regolazione consigliata',
133
+ recommendedHint: 'Imposta il selettore della tua macchina su questa posizione',
134
+ statusLimitActive: 'Limite macchina attivo',
135
+ statusOutOfRange: 'Intervallo fuori dagli standard commerciali',
136
+ },
137
+ };