@jjlmoya/utils-nautical 1.22.0 → 1.23.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 +1 -1
- package/src/category/index.ts +2 -1
- package/src/data.ts +1 -0
- package/src/entries.ts +4 -1
- package/src/index.ts +1 -0
- package/src/tests/i18n_coverage.test.ts +6 -1
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/tool_validation.test.ts +7 -4
- package/src/tool/hullSpeed/bibliography.astro +14 -0
- package/src/tool/hullSpeed/bibliography.ts +12 -0
- package/src/tool/hullSpeed/component.astro +116 -0
- package/src/tool/hullSpeed/controller.ts +204 -0
- package/src/tool/hullSpeed/dom-views.ts +141 -0
- package/src/tool/hullSpeed/entry.ts +32 -0
- package/src/tool/hullSpeed/evaluator.ts +20 -0
- package/src/tool/hullSpeed/hull-draw.ts +185 -0
- package/src/tool/hullSpeed/i18n/de.ts +199 -0
- package/src/tool/hullSpeed/i18n/en.ts +199 -0
- package/src/tool/hullSpeed/i18n/es.ts +199 -0
- package/src/tool/hullSpeed/i18n/fr.ts +199 -0
- package/src/tool/hullSpeed/i18n/id.ts +199 -0
- package/src/tool/hullSpeed/i18n/it.ts +199 -0
- package/src/tool/hullSpeed/i18n/ja.ts +199 -0
- package/src/tool/hullSpeed/i18n/ko.ts +199 -0
- package/src/tool/hullSpeed/i18n/nl.ts +199 -0
- package/src/tool/hullSpeed/i18n/pl.ts +199 -0
- package/src/tool/hullSpeed/i18n/pt.ts +199 -0
- package/src/tool/hullSpeed/i18n/ru.ts +199 -0
- package/src/tool/hullSpeed/i18n/sv.ts +199 -0
- package/src/tool/hullSpeed/i18n/tr.ts +199 -0
- package/src/tool/hullSpeed/i18n/zh.ts +199 -0
- package/src/tool/hullSpeed/index.ts +11 -0
- package/src/tool/hullSpeed/logic.test.ts +105 -0
- package/src/tool/hullSpeed/logic.ts +116 -0
- package/src/tool/hullSpeed/presets.ts +17 -0
- package/src/tool/hullSpeed/sailboat-hull-speed-calculator.css +504 -0
- package/src/tool/hullSpeed/seo.astro +15 -0
- package/src/tool/hullSpeed/storage.test.ts +23 -0
- package/src/tool/hullSpeed/storage.ts +65 -0
- package/src/tool/hullSpeed/ui.ts +43 -0
- package/src/tools.ts +3 -0
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { HullSpeedLocaleContent, HullSpeedUI } from '../index';
|
|
3
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
4
|
+
|
|
5
|
+
const slug = 'calcolatore-velocita-scafo';
|
|
6
|
+
const title = 'Calcolatore di velocità dello scafo';
|
|
7
|
+
const description =
|
|
8
|
+
'Trova la velocità di scafo teorica dalla lunghezza al galleggiamento, confronta un log e vedi quando uno scafo a dislocamento scala la propria onda di prua.';
|
|
9
|
+
|
|
10
|
+
const ui: HullSpeedUI = {
|
|
11
|
+
metric: 'Metrico',
|
|
12
|
+
imperial: 'Imperiale',
|
|
13
|
+
unitGroup: 'Unità',
|
|
14
|
+
sceneLabel: 'Galleggiamento e onda di prua',
|
|
15
|
+
hullSpeedLabel: 'Velocità di scafo',
|
|
16
|
+
knotsUnit: 'kn',
|
|
17
|
+
kmhUnit: 'km/h',
|
|
18
|
+
mphUnit: 'mph',
|
|
19
|
+
ratioLabel: 'S/L',
|
|
20
|
+
froudeLabel: 'Fr',
|
|
21
|
+
lwlLabelMetric: 'Lunghezza al galleggiamento',
|
|
22
|
+
lwlLabelImperial: 'Lunghezza al galleggiamento',
|
|
23
|
+
lwlUnitM: 'm',
|
|
24
|
+
lwlUnitFt: 'ft',
|
|
25
|
+
observedLabel: 'Velocità al log',
|
|
26
|
+
observedHint: 'Lascia 0 per disegnare l onda teorica. Inserisci un log per vedere se sei ancora seduto nel cavo.',
|
|
27
|
+
stretchHint: 'Trascina lo scafo per allungare il galleggiamento',
|
|
28
|
+
hullKindLabel: 'Forma di scafo',
|
|
29
|
+
displacement: 'Dislocamento',
|
|
30
|
+
semi: 'Semidislocante',
|
|
31
|
+
planing: 'Planante',
|
|
32
|
+
boatsLabel: 'Galleggiamenti di esempio',
|
|
33
|
+
dinghy: 'Dinghy',
|
|
34
|
+
daysailer: 'Daysailer',
|
|
35
|
+
cruiser: 'Crociera',
|
|
36
|
+
bluewater: 'Daltura',
|
|
37
|
+
workboat: 'Lavoro',
|
|
38
|
+
bandBelow: 'Ancora un onda corta',
|
|
39
|
+
bandNear: 'Vicino alla barriera d onda',
|
|
40
|
+
bandAt: 'Sull onda di prua',
|
|
41
|
+
bandAbove: 'Cerca di scalare l onda',
|
|
42
|
+
bandPlane: 'In planata, oltre la velocità di scafo',
|
|
43
|
+
planingNote:
|
|
44
|
+
'Uno scafo planante può lasciarsi alle spalle quest onda. La velocità di scafo è un riferimento, non un muro.',
|
|
45
|
+
displacementNote:
|
|
46
|
+
'Uno scafo a dislocamento paga caro quando raggiunge la propria scia. Trattala come tetto pratico, non come bersaglio GPS.',
|
|
47
|
+
semiNote:
|
|
48
|
+
'I semidislocanti possono superare un po il rapporto classico con abbastanza potenza, a costo di un salto netto di resistenza.',
|
|
49
|
+
waveLegend: 'Onda di prua',
|
|
50
|
+
waterLegend: 'Galleggiamento',
|
|
51
|
+
markLegend: 'Velocità di scafo',
|
|
52
|
+
faqTitle: 'Domande sulla velocità di scafo',
|
|
53
|
+
bibliographyTitle: 'Riferimenti',
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
const faq: HullSpeedLocaleContent['faq'] = [
|
|
57
|
+
{
|
|
58
|
+
question: 'Che cos è la velocità di scafo di una barca a vela?',
|
|
59
|
+
answer:
|
|
60
|
+
'È la velocità a cui uno scafo a dislocamento viaggia con un onda di prua lunga quasi quanto il proprio galleggiamento. In unità nautiche si stima come 1.34 volte la radice della lunghezza al galleggiamento in piedi. È una velocità critica, non un arresto fisico duro.',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
question: 'Come si calcola la velocità di scafo?',
|
|
64
|
+
answer:
|
|
65
|
+
'Converti il galleggiamento in piedi, prendi la radice e moltiplica per 1.34 per avere i nodi. Un galleggiamento di 10 m è circa 32.8 ft, quindi vicino a 7.7 kn. Lo stesso punto corrisponde a un numero di Froude vicino a 0.40.',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
question: 'La velocità di scafo vale per le plananti?',
|
|
69
|
+
answer:
|
|
70
|
+
'La formula descrive ancora l onda che lo scafo farebbe se restasse in dislocamento. Le plananti e molti semidislocanti sono nati per scalare quell onda. Usa il numero come riferimento e leggi la nota sulla forma.',
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
question: 'Devo usare il galleggiamento o la lunghezza fuori tutto?',
|
|
74
|
+
answer:
|
|
75
|
+
'Usa la lunghezza al galleggiamento (LWL), la lunghezza immersa che genera davvero l onda. Fuori tutto, bompressi e sbalzi non fissano la lunghezza d onda. Misura la LWL in acqua, non il LOA del depliant.',
|
|
76
|
+
},
|
|
77
|
+
];
|
|
78
|
+
|
|
79
|
+
const howTo: HullSpeedLocaleContent['howTo'] = [
|
|
80
|
+
{
|
|
81
|
+
name: 'Allunga il galleggiamento',
|
|
82
|
+
text: 'Trascina lo scafo, sposta il rail del galleggiamento o scegli dal dinghy al battello da lavoro. La velocità di scafo è 1.34 volte la radice di quella lunghezza in piedi.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
name: 'Scegli la forma di scafo',
|
|
86
|
+
text: 'Dislocamento, semidislocante o planante cambia la chiglia e se la barca può uscire dalla propria onda.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
name: 'Leggi il cavo',
|
|
90
|
+
text: 'Alla velocità di scafo l onda di prua e quella di poppa distano un galleggiamento e la barca siede nel cavo. Quella è la barriera.',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: 'Confronta un log',
|
|
94
|
+
text: 'Inserisci la velocità sull acqua. Un onda più corta significa che spingi ancora a buon mercato. Un onda più lunga significa che stai scalando il cavo.',
|
|
95
|
+
},
|
|
96
|
+
];
|
|
97
|
+
|
|
98
|
+
const seo: HullSpeedLocaleContent['seo'] = [
|
|
99
|
+
{
|
|
100
|
+
type: 'title',
|
|
101
|
+
text: 'Cosa ti sta dicendo davvero la velocità di scafo',
|
|
102
|
+
level: 2,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'paragraph',
|
|
106
|
+
html: 'Uno scafo a dislocamento spinge un onda dalla prua e un altra dalla poppa. Quando quelle creste distano circa un galleggiamento, la barca viaggia con la propria scia. La potenza in più ammassa acqua invece di comprare velocità. Quella condizione è ciò che i marinai chiamano velocità di scafo.',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
type: 'paragraph',
|
|
110
|
+
html: 'Il calcolatore usa il rapporto amatoriale usuale di 1.34 nodi per radice dei piedi di galleggiamento. Gli scafi fini e lunghi possono stare un po più in alto, i pontoni più in basso. Tratta il risultato come un segno di studio e confrontalo con un log vero.',
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'title',
|
|
114
|
+
text: 'Esempi di galleggiamento risolti',
|
|
115
|
+
level: 2,
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'table',
|
|
119
|
+
headers: ['Galleggiamento', 'Velocità di scafo', 'Barca tipica'],
|
|
120
|
+
rows: [
|
|
121
|
+
['4.2 m / 13.8 ft', '5.0 kn', 'Dinghy'],
|
|
122
|
+
['6.5 m / 21.3 ft', '6.2 kn', 'Daysailer'],
|
|
123
|
+
['10 m / 32.8 ft', '7.7 kn', 'Crociera familiare'],
|
|
124
|
+
['13.5 m / 44.3 ft', '8.9 kn', 'Yacht daltura'],
|
|
125
|
+
['18 m / 59.1 ft', '10.3 kn', 'Piccolo battello da lavoro'],
|
|
126
|
+
],
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
type: 'title',
|
|
130
|
+
text: 'Come leggere l onda di prua',
|
|
131
|
+
level: 2,
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
type: 'list',
|
|
135
|
+
items: [
|
|
136
|
+
'Sotto il segno l onda è corta e la barca è ancora economica da spingere.',
|
|
137
|
+
'Vicino al segno l onda di prua si fa ripida e carburante o vela comprano meno velocità.',
|
|
138
|
+
'Sul segno la lunghezza d onda eguaglia la LWL. Uno scafo a dislocamento è alla barriera classica.',
|
|
139
|
+
'Sopra, uno scafo a dislocamento scala la scia. Uno planante può essere già sollevato.',
|
|
140
|
+
],
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
type: 'tip',
|
|
144
|
+
title: 'Misura la LWL, non il LOA',
|
|
145
|
+
html: 'La lunghezza da depliant include gli sbalzi. All onda importa il galleggiamento immerso. Se hai solo il LOA, la velocità di scafo calcolata sarà ottimista.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'title',
|
|
149
|
+
text: 'Il numero di Froude in una frase',
|
|
150
|
+
level: 2,
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'paragraph',
|
|
154
|
+
html: 'La velocità di scafo è un impacco comodo di un numero di Froude vicino a 0.40: velocità divisa per la radice di gravità per lunghezza. Per questo i galleggiamenti più lunghi sono più veloci anche se la forma dello scafo resta uguale. Allungare la LWL è il modo pulito di alzare il limite di dislocamento; aggiungere cavalli no.',
|
|
155
|
+
},
|
|
156
|
+
];
|
|
157
|
+
|
|
158
|
+
const schemas: HullSpeedLocaleContent['schemas'] = [
|
|
159
|
+
{
|
|
160
|
+
'@context': 'https://schema.org',
|
|
161
|
+
'@type': 'SoftwareApplication',
|
|
162
|
+
name: title,
|
|
163
|
+
description,
|
|
164
|
+
applicationCategory: 'UtilityApplication',
|
|
165
|
+
operatingSystem: 'Web',
|
|
166
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
167
|
+
} as WithContext<SoftwareApplication>,
|
|
168
|
+
{
|
|
169
|
+
'@context': 'https://schema.org',
|
|
170
|
+
'@type': 'FAQPage',
|
|
171
|
+
mainEntity: faq.map((item) => ({
|
|
172
|
+
'@type': 'Question',
|
|
173
|
+
name: item.question,
|
|
174
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
175
|
+
})),
|
|
176
|
+
} as WithContext<FAQPage>,
|
|
177
|
+
{
|
|
178
|
+
'@context': 'https://schema.org',
|
|
179
|
+
'@type': 'HowTo',
|
|
180
|
+
name: `Come usare ${title}`,
|
|
181
|
+
step: howTo.map((step) => ({
|
|
182
|
+
'@type': 'HowToStep',
|
|
183
|
+
name: step.name,
|
|
184
|
+
text: step.text,
|
|
185
|
+
})),
|
|
186
|
+
} as WithContext<HowTo>,
|
|
187
|
+
];
|
|
188
|
+
|
|
189
|
+
export const content: HullSpeedLocaleContent = {
|
|
190
|
+
slug,
|
|
191
|
+
title,
|
|
192
|
+
description,
|
|
193
|
+
ui,
|
|
194
|
+
seo,
|
|
195
|
+
faq,
|
|
196
|
+
bibliography,
|
|
197
|
+
howTo,
|
|
198
|
+
schemas,
|
|
199
|
+
};
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { HullSpeedLocaleContent, HullSpeedUI } from '../index';
|
|
3
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
4
|
+
|
|
5
|
+
const slug = 'sailboat-hull-speed-calculator';
|
|
6
|
+
const title = '帆船の船体速度計算機';
|
|
7
|
+
const description =
|
|
8
|
+
'喫水線長さから理論上の船体速度を求め、実測のログと比べ、排水型船体が自分の船首波に乗り上げる瞬間を見ます。';
|
|
9
|
+
|
|
10
|
+
const ui: HullSpeedUI = {
|
|
11
|
+
metric: 'メートル法',
|
|
12
|
+
imperial: 'ヤードポンド法',
|
|
13
|
+
unitGroup: '単位',
|
|
14
|
+
sceneLabel: '喫水線と船首波',
|
|
15
|
+
hullSpeedLabel: '船体速度',
|
|
16
|
+
knotsUnit: 'kn',
|
|
17
|
+
kmhUnit: 'km/h',
|
|
18
|
+
mphUnit: 'mph',
|
|
19
|
+
ratioLabel: 'S/L',
|
|
20
|
+
froudeLabel: 'Fr',
|
|
21
|
+
lwlLabelMetric: '喫水線長さ',
|
|
22
|
+
lwlLabelImperial: '喫水線長さ',
|
|
23
|
+
lwlUnitM: 'm',
|
|
24
|
+
lwlUnitFt: 'ft',
|
|
25
|
+
observedLabel: 'ログ速度',
|
|
26
|
+
observedHint: '理論波を描くなら 0 のまま。くぼみに座っているかを見るならログを入力します。',
|
|
27
|
+
stretchHint: '船体をドラッグして喫水線を伸ばす',
|
|
28
|
+
hullKindLabel: '船体形状',
|
|
29
|
+
displacement: '排水型',
|
|
30
|
+
semi: '半排水型',
|
|
31
|
+
planing: '滑走型',
|
|
32
|
+
boatsLabel: '喫水線の例',
|
|
33
|
+
dinghy: 'ディンギー',
|
|
34
|
+
daysailer: 'デイセーラー',
|
|
35
|
+
cruiser: 'クルーザー',
|
|
36
|
+
bluewater: '外洋',
|
|
37
|
+
workboat: '作業船',
|
|
38
|
+
bandBelow: 'まだ短い波',
|
|
39
|
+
bandNear: '波の壁に接近',
|
|
40
|
+
bandAt: '船首波に乗っている',
|
|
41
|
+
bandAbove: '波を登ろうとしている',
|
|
42
|
+
bandPlane: '滑走中、船体速度を超えている',
|
|
43
|
+
planingNote:
|
|
44
|
+
'滑走型はこの波を後ろに残せます。船体速度は目安であり壁ではありません。',
|
|
45
|
+
displacementNote:
|
|
46
|
+
'排水型は自分の航跡に追いつくと急に高くつきます。GPS目標ではなく実用の天井として扱ってください。',
|
|
47
|
+
semiNote:
|
|
48
|
+
'半排水型は十分な出力があれば古典比を少し超えられますが、抵抗は急に上がります。',
|
|
49
|
+
waveLegend: '船首波',
|
|
50
|
+
waterLegend: '喫水線',
|
|
51
|
+
markLegend: '船体速度',
|
|
52
|
+
faqTitle: '船体速度の質問',
|
|
53
|
+
bibliographyTitle: '参考文献',
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
const faq: HullSpeedLocaleContent['faq'] = [
|
|
57
|
+
{
|
|
58
|
+
question: '帆船の船体速度とは何ですか?',
|
|
59
|
+
answer:
|
|
60
|
+
'排水型船体が、ほぼ自分の喫水線と同じ長さの船首波を連れて走る速度です。航海単位では喫水線長さ(フィート)の平方根に 1.34 を掛けて見積もります。臨界速度であり、物理的な完全停止ではありません。',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
question: '船体速度はどう計算しますか?',
|
|
64
|
+
answer:
|
|
65
|
+
'喫水線をフィートに直し、平方根を取り、1.34 を掛けてノットにします。10 m の喫水線は約 32.8 ft なので、およそ 7.7 kn です。同じ点はフルード数 0.40 付近に対応します。',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
question: '滑走艇にも船体速度は使えますか?',
|
|
69
|
+
answer:
|
|
70
|
+
'式は排水モードのままなら船体が作る波をなお説明します。滑走型や多くの半排水型は、その波を乗り越えるために設計されています。数値は目安にし、船体形状の注記を読んでください。',
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
question: '喫水線長さと全長のどちらを使いますか?',
|
|
74
|
+
answer:
|
|
75
|
+
'実際に波を作る没水長さである喫水線長さ (LWL) を使います。全長、バウスプリット、オーバーハングは波長を決めません。パンフレットの LOA ではなく、水の中の LWL を測ってください。',
|
|
76
|
+
},
|
|
77
|
+
];
|
|
78
|
+
|
|
79
|
+
const howTo: HullSpeedLocaleContent['howTo'] = [
|
|
80
|
+
{
|
|
81
|
+
name: '喫水線を伸ばす',
|
|
82
|
+
text: '船体をドラッグし、レールを動かし、ディンギーから作業船まで選びます。船体速度はその長さ(フィート)の平方根の 1.34 倍です。',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
name: '船体形状を選ぶ',
|
|
86
|
+
text: '排水型、半排水型、滑走型でキールが変わり、自分の波から抜け出せるかも変わります。',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
name: 'くぼみを読む',
|
|
90
|
+
text: '船体速度では船首波と船尾波が喫水線ひとつ分離れ、船は谷に座ります。それが壁です。',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: 'ログを比べる',
|
|
94
|
+
text: '対水速度を入れます。短い波はまだ安く押せる合図です。長い波はくぼみを登っている合図です。',
|
|
95
|
+
},
|
|
96
|
+
];
|
|
97
|
+
|
|
98
|
+
const seo: HullSpeedLocaleContent['seo'] = [
|
|
99
|
+
{
|
|
100
|
+
type: 'title',
|
|
101
|
+
text: '船体速度が本当に伝えていること',
|
|
102
|
+
level: 2,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'paragraph',
|
|
106
|
+
html: '排水型船体は船首と船尾から波を押し出します。その峰がだいたい喫水線ひとつ分空くと、船は自分の航跡と一緒に進みます。余った出力は速力を買うより水を積み上げます。船乗りが船体速度と呼ぶ状態です。',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
type: 'paragraph',
|
|
110
|
+
html: 'この計算機は、フィート喫水線の平方根あたり 1.34 ノットという一般的なアマチュア比を使います。細長い船体は少し高く、はしけは低くなります。結果は学習用の印として扱い、実際のログと比べてください。',
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'title',
|
|
114
|
+
text: '計算した喫水線の例',
|
|
115
|
+
level: 2,
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'table',
|
|
119
|
+
headers: ['喫水線', '船体速度', '典型的な船'],
|
|
120
|
+
rows: [
|
|
121
|
+
['4.2 m / 13.8 ft', '5.0 kn', 'ディンギー'],
|
|
122
|
+
['6.5 m / 21.3 ft', '6.2 kn', 'デイセーラー'],
|
|
123
|
+
['10 m / 32.8 ft', '7.7 kn', 'ファミリークルーザー'],
|
|
124
|
+
['13.5 m / 44.3 ft', '8.9 kn', '外洋ヨット'],
|
|
125
|
+
['18 m / 59.1 ft', '10.3 kn', '小型作業船'],
|
|
126
|
+
],
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
type: 'title',
|
|
130
|
+
text: '船首波の読み方',
|
|
131
|
+
level: 2,
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
type: 'list',
|
|
135
|
+
items: [
|
|
136
|
+
'印より下では波は短く、船はまだ安く押せます。',
|
|
137
|
+
'印の近くでは船首波が急になり、燃料や帆が買う速力は減ります。',
|
|
138
|
+
'印の上では波長が LWL と一致します。排水型は古典的な壁にいます。',
|
|
139
|
+
'それより上では排水型は航跡を登ります。滑走型はすでに浮いていることがあります。',
|
|
140
|
+
],
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
type: 'tip',
|
|
144
|
+
title: 'LWL を測り、LOA は使わない',
|
|
145
|
+
html: 'パンフレットの長さはオーバーハングを含みます。波が気にするのは没水した喫水線です。LOA しかないと、計算した船体速度は楽観的になります。',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'title',
|
|
149
|
+
text: '一文でフルード数',
|
|
150
|
+
level: 2,
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'paragraph',
|
|
154
|
+
html: '船体速度はフルード数 0.40 付近を扱いやすく包んだものです。速さ割る重力かける長さの平方根です。だから船体形状が同じでも、長い喫水線は速くなります。排水限界を上げるきれいな方法は LWL を伸ばすことであり、馬力を足すことではありません。',
|
|
155
|
+
},
|
|
156
|
+
];
|
|
157
|
+
|
|
158
|
+
const schemas: HullSpeedLocaleContent['schemas'] = [
|
|
159
|
+
{
|
|
160
|
+
'@context': 'https://schema.org',
|
|
161
|
+
'@type': 'SoftwareApplication',
|
|
162
|
+
name: title,
|
|
163
|
+
description,
|
|
164
|
+
applicationCategory: 'UtilityApplication',
|
|
165
|
+
operatingSystem: 'Web',
|
|
166
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
167
|
+
} as WithContext<SoftwareApplication>,
|
|
168
|
+
{
|
|
169
|
+
'@context': 'https://schema.org',
|
|
170
|
+
'@type': 'FAQPage',
|
|
171
|
+
mainEntity: faq.map((item) => ({
|
|
172
|
+
'@type': 'Question',
|
|
173
|
+
name: item.question,
|
|
174
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
175
|
+
})),
|
|
176
|
+
} as WithContext<FAQPage>,
|
|
177
|
+
{
|
|
178
|
+
'@context': 'https://schema.org',
|
|
179
|
+
'@type': 'HowTo',
|
|
180
|
+
name: `${title}の使い方`,
|
|
181
|
+
step: howTo.map((step) => ({
|
|
182
|
+
'@type': 'HowToStep',
|
|
183
|
+
name: step.name,
|
|
184
|
+
text: step.text,
|
|
185
|
+
})),
|
|
186
|
+
} as WithContext<HowTo>,
|
|
187
|
+
];
|
|
188
|
+
|
|
189
|
+
export const content: HullSpeedLocaleContent = {
|
|
190
|
+
slug,
|
|
191
|
+
title,
|
|
192
|
+
description,
|
|
193
|
+
ui,
|
|
194
|
+
seo,
|
|
195
|
+
faq,
|
|
196
|
+
bibliography,
|
|
197
|
+
howTo,
|
|
198
|
+
schemas,
|
|
199
|
+
};
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { HullSpeedLocaleContent, HullSpeedUI } from '../index';
|
|
3
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
4
|
+
|
|
5
|
+
const slug = 'sailboat-hull-speed-calculator';
|
|
6
|
+
const title = '세일보트 선체속도 계산기';
|
|
7
|
+
const description =
|
|
8
|
+
'흘수선 길이로 이론 선체속도를 구하고 로그와 비교하며, 배수형 선체가 제 선수파를 타고 오르는 순간을 봅니다.';
|
|
9
|
+
|
|
10
|
+
const ui: HullSpeedUI = {
|
|
11
|
+
metric: '미터법',
|
|
12
|
+
imperial: '야드파운드법',
|
|
13
|
+
unitGroup: '단위',
|
|
14
|
+
sceneLabel: '흘수선과 선수파',
|
|
15
|
+
hullSpeedLabel: '선체속도',
|
|
16
|
+
knotsUnit: 'kn',
|
|
17
|
+
kmhUnit: 'km/h',
|
|
18
|
+
mphUnit: 'mph',
|
|
19
|
+
ratioLabel: 'S/L',
|
|
20
|
+
froudeLabel: 'Fr',
|
|
21
|
+
lwlLabelMetric: '흘수선 길이',
|
|
22
|
+
lwlLabelImperial: '흘수선 길이',
|
|
23
|
+
lwlUnitM: 'm',
|
|
24
|
+
lwlUnitFt: 'ft',
|
|
25
|
+
observedLabel: '로그 속도',
|
|
26
|
+
observedHint: '이론 파를 그리려면 0으로 두세요. 아직 골에 앉아 있는지 보려면 로그를 입력하세요.',
|
|
27
|
+
stretchHint: '선체를 끌어 흘수선을 늘리세요',
|
|
28
|
+
hullKindLabel: '선체 형상',
|
|
29
|
+
displacement: '배수형',
|
|
30
|
+
semi: '반배수형',
|
|
31
|
+
planing: '활주형',
|
|
32
|
+
boatsLabel: '흘수선 예시',
|
|
33
|
+
dinghy: '딩기',
|
|
34
|
+
daysailer: '데이세일러',
|
|
35
|
+
cruiser: '크루저',
|
|
36
|
+
bluewater: '외양',
|
|
37
|
+
workboat: '작업선',
|
|
38
|
+
bandBelow: '아직 짧은 파',
|
|
39
|
+
bandNear: '파 장벽에 가까움',
|
|
40
|
+
bandAt: '선수파를 타고 있음',
|
|
41
|
+
bandAbove: '파를 오르려 함',
|
|
42
|
+
bandPlane: '활주 중, 선체속도를 넘김',
|
|
43
|
+
planingNote:
|
|
44
|
+
'활주형 선체는 이 파를 뒤에 남길 수 있습니다. 선체속도는 기준이지 벽이 아닙니다.',
|
|
45
|
+
displacementNote:
|
|
46
|
+
'배수형 선체는 제 항적을 따라잡으면 값이 가파르게 오릅니다. GPS 목표가 아니라 실용 천장으로 보세요.',
|
|
47
|
+
semiNote:
|
|
48
|
+
'반배수형은 출력이 충분하면 고전 비를 조금 넘을 수 있지만 저항이 급히 오릅니다.',
|
|
49
|
+
waveLegend: '선수파',
|
|
50
|
+
waterLegend: '흘수선',
|
|
51
|
+
markLegend: '선체속도',
|
|
52
|
+
faqTitle: '선체속도 질문',
|
|
53
|
+
bibliographyTitle: '참고문헌',
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
const faq: HullSpeedLocaleContent['faq'] = [
|
|
57
|
+
{
|
|
58
|
+
question: '세일보트의 선체속도는 무엇인가요?',
|
|
59
|
+
answer:
|
|
60
|
+
'배수형 선체가 제 흘수선과 거의 같은 길이의 선수파를 끌고 가는 속도입니다. 항해 단위로는 흘수선 길이(피트)의 제곱근에 1.34를 곱해 어림합니다. 임계 속도이지 단단한 물리 정지는 아닙니다.',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
question: '선체속도는 어떻게 계산하나요?',
|
|
64
|
+
answer:
|
|
65
|
+
'흘수선을 피트로 바꾸고 제곱근을 취한 뒤 1.34를 곱해 노트를 얻습니다. 10 m 흘수선은 약 32.8 ft이므로 대략 7.7 kn입니다. 같은 점은 프루드 수 0.40 근처에 해당합니다.',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
question: '활주선에도 선체속도가 적용되나요?',
|
|
69
|
+
answer:
|
|
70
|
+
'식은 배수 모드에 머물렀을 때 선체가 만들 파를 여전히 설명합니다. 활주형과 많은 반배수형은 그 파 위로 오르도록 설계됩니다. 숫자는 기준으로 쓰고 선체 형상 설명을 읽으세요.',
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
question: '흘수선 길이와 전장 중 무엇을 쓰나요?',
|
|
74
|
+
answer:
|
|
75
|
+
'실제로 파를 만드는 잠긴 길이인 흘수선 길이(LWL)를 쓰세요. 전장, 선수돌이, 오버행은 파장을 정하지 않습니다. 안내책 LOA가 아니라 물속의 LWL을 재세요.',
|
|
76
|
+
},
|
|
77
|
+
];
|
|
78
|
+
|
|
79
|
+
const howTo: HullSpeedLocaleContent['howTo'] = [
|
|
80
|
+
{
|
|
81
|
+
name: '흘수선을 늘리기',
|
|
82
|
+
text: '선체를 끌고, 레일을 움직이고, 딩기부터 작업선까지 고르세요. 선체속도는 그 길이(피트) 제곱근의 1.34배입니다.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
name: '선체 형상 고르기',
|
|
86
|
+
text: '배수형, 반배수형, 활주형은 킬을 바꾸고 배가 제 파에서 빠져나올 수 있는지도 바꿉니다.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
name: '골 읽기',
|
|
90
|
+
text: '선체속도에서는 선수파와 선미파가 흘수선 하나만큼 떨어지고 배는 골에 앉습니다. 그것이 장벽입니다.',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: '로그 비교하기',
|
|
94
|
+
text: '대물 속도를 넣으세요. 더 짧은 파는 아직 싸게 민다는 뜻입니다. 더 긴 파는 골을 오르고 있다는 뜻입니다.',
|
|
95
|
+
},
|
|
96
|
+
];
|
|
97
|
+
|
|
98
|
+
const seo: HullSpeedLocaleContent['seo'] = [
|
|
99
|
+
{
|
|
100
|
+
type: 'title',
|
|
101
|
+
text: '선체속도가 실제로 말하는 것',
|
|
102
|
+
level: 2,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'paragraph',
|
|
106
|
+
html: '배수형 선체는 선수와 선미에서 파를 밀어냅니다. 그 마루가 대략 흘수선 하나만큼 떨어지면 배는 제 항적과 함께 갑니다. 여분 출력은 속력을 사기보다 물을 쌓습니다. 선원이 선체속도라 부르는 상태입니다.',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
type: 'paragraph',
|
|
110
|
+
html: '이 계산기는 피트 흘수선 제곱근당 1.34노트의 흔한 아마추어 비를 씁니다. 가늘고 긴 선체는 조금 높고 바지선은 낮습니다. 결과는 학습 표시로 보고 실제 로그와 비교하세요.',
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'title',
|
|
114
|
+
text: '계산한 흘수선 예',
|
|
115
|
+
level: 2,
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'table',
|
|
119
|
+
headers: ['흘수선', '선체속도', '전형적인 배'],
|
|
120
|
+
rows: [
|
|
121
|
+
['4.2 m / 13.8 ft', '5.0 kn', '딩기'],
|
|
122
|
+
['6.5 m / 21.3 ft', '6.2 kn', '데이세일러'],
|
|
123
|
+
['10 m / 32.8 ft', '7.7 kn', '가족 크루저'],
|
|
124
|
+
['13.5 m / 44.3 ft', '8.9 kn', '외양 요트'],
|
|
125
|
+
['18 m / 59.1 ft', '10.3 kn', '소형 작업선'],
|
|
126
|
+
],
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
type: 'title',
|
|
130
|
+
text: '선수파 읽는 법',
|
|
131
|
+
level: 2,
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
type: 'list',
|
|
135
|
+
items: [
|
|
136
|
+
'표시 아래에서는 파가 짧고 배는 아직 싸게 밀립니다.',
|
|
137
|
+
'표시 근처에서는 선수파가 가팔라지고 연료나 돛이 사는 속력이 줄어듭니다.',
|
|
138
|
+
'표시 위에서는 파장이 LWL과 맞습니다. 배수형은 고전 장벽에 있습니다.',
|
|
139
|
+
'그보다 위에서는 배수형이 항적을 오릅니다. 활주형은 이미 떠 있을 수 있습니다.',
|
|
140
|
+
],
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
type: 'tip',
|
|
144
|
+
title: 'LWL을 재고 LOA는 쓰지 마세요',
|
|
145
|
+
html: '안내책 길이는 오버행을 포함합니다. 파가 신경 쓰는 것은 잠긴 흘수선입니다. LOA만 있으면 계산된 선체속도는 낙관적입니다.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'title',
|
|
149
|
+
text: '한 문장으로 프루드 수',
|
|
150
|
+
level: 2,
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'paragraph',
|
|
154
|
+
html: '선체속도는 프루드 수 0.40 근처를 다루기 쉽게 싼 값입니다. 속력을 중력 곱하기 길이의 제곱근으로 나눈 것입니다. 그래서 선체 형상이 같아도 더 긴 흘수선이 더 빠릅니다. 배수 한계를 올리는 깨끗한 방법은 LWL을 늘리는 것이지 마력을 더하는 것이 아닙니다.',
|
|
155
|
+
},
|
|
156
|
+
];
|
|
157
|
+
|
|
158
|
+
const schemas: HullSpeedLocaleContent['schemas'] = [
|
|
159
|
+
{
|
|
160
|
+
'@context': 'https://schema.org',
|
|
161
|
+
'@type': 'SoftwareApplication',
|
|
162
|
+
name: title,
|
|
163
|
+
description,
|
|
164
|
+
applicationCategory: 'UtilityApplication',
|
|
165
|
+
operatingSystem: 'Web',
|
|
166
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
167
|
+
} as WithContext<SoftwareApplication>,
|
|
168
|
+
{
|
|
169
|
+
'@context': 'https://schema.org',
|
|
170
|
+
'@type': 'FAQPage',
|
|
171
|
+
mainEntity: faq.map((item) => ({
|
|
172
|
+
'@type': 'Question',
|
|
173
|
+
name: item.question,
|
|
174
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
175
|
+
})),
|
|
176
|
+
} as WithContext<FAQPage>,
|
|
177
|
+
{
|
|
178
|
+
'@context': 'https://schema.org',
|
|
179
|
+
'@type': 'HowTo',
|
|
180
|
+
name: `${title} 사용법`,
|
|
181
|
+
step: howTo.map((step) => ({
|
|
182
|
+
'@type': 'HowToStep',
|
|
183
|
+
name: step.name,
|
|
184
|
+
text: step.text,
|
|
185
|
+
})),
|
|
186
|
+
} as WithContext<HowTo>,
|
|
187
|
+
];
|
|
188
|
+
|
|
189
|
+
export const content: HullSpeedLocaleContent = {
|
|
190
|
+
slug,
|
|
191
|
+
title,
|
|
192
|
+
description,
|
|
193
|
+
ui,
|
|
194
|
+
seo,
|
|
195
|
+
faq,
|
|
196
|
+
bibliography,
|
|
197
|
+
howTo,
|
|
198
|
+
schemas,
|
|
199
|
+
};
|