地形断面図の垂直強調率計算ツール
地形断面図では、地表距離と標高に異なる縮尺を使うことが多いため、斜面や地形が実際の比率より高く、または平坦に見える場合があります。この計算ツールは、2つの代表縮尺を比較して垂直強調率を直接算出します。各縮尺は分母だけをご入力ください。たとえば、垂直縮尺が1:10,000なら10000、水平縮尺が1:50,000なら50000と入力します。結果は常に同じ条件で再現でき、わかりやすい説明も表示されるため、等縮尺の表示と断面図がどの程度異なるかを正確に記録できます。
無料で実行
両方の縮尺を代表縮尺の分母でご入力ください
まず標高軸に記載された縮尺と、距離軸に記載された縮尺をご確認ください。先頭の1、コロン、コンマ、単位記号は含めず、それぞれの分母だけをご入力ください。たとえば、垂直縮尺が1:5,000なら5000、水平縮尺が1:25,000なら25000とします。両方の縮尺では、図上の単位と実際の単位が一貫している必要があります。正しく表された代表縮尺は無次元ですので、メートル、フィート、センチメートル、インチのいずれをお使いでも比較できます。標高範囲、断面図の高さ、地図上の距離、換算係数を分母の代わりに入力しないでください。1センチメートルが100メートルを表すような文章式の縮尺は、先に変換します。100メートルは10,000センチメートルなので、代表縮尺は1:10,000、入力する分母は10000です。この正規化により、異なる単位を比較して、もっともらしくても誤った倍率を得るという典型的なミスを防げます。
比率と算出された係数の意味をご確認ください
計算では、水平縮尺の分母を垂直縮尺の分母で割ります。これは垂直縮尺の分数を水平縮尺の分数で割ることと同じで、式では(1÷垂直の分母)÷(1÷水平の分母)です。垂直縮尺が1:10,000、水平縮尺が1:50,000の場合、50000を10000で割るため、係数は5になります。1より大きい係数は、断面図で水平寸法に対して垂直寸法が拡大されていることを示します。そのため、斜面はより急に、起伏はより高く見えます。係数がちょうど1なら両軸は同じ縮尺であり、垂直方向の強調はありません。1未満なら強調ではなく垂直方向の圧縮ですが、縮小された比率を明示する有用な結果です。本ツールは記録に十分な小数精度を保ちながら不要な末尾の0を除き、解釈した両方の縮尺も表示しますので、意図した分母が処理されたかをご確認いただけます。
地形を読む際は垂直強調を適切にお扱いください
垂直強調は表示上の性質であり、測定標高を補正するものではありません。長い地域断面で小さな起伏を見やすくできる一方、すべての斜面の見かけの角度を変え、緩やかな地形を極端に見せることがあります。読者が視覚的な強調と実際の形状を区別できるよう、断面図の近くに係数をご記載ください。複数の断面図を比較する場合は、可能であれば同じ係数をお使いください。目的に応じて異なる縮尺が必要な場合は、各断面図に明確な表示を付けます。係数だけでは、実際の勾配、見通し、切土・盛土量、地質構造の傾斜、移動の難易度は計算できません。これらには、互換性のある単位で表した元の水平・垂直測定値が必要です。非常に大きな係数では、わずかな標高ノイズ、補間の乱れ、線の太さも目立つため、特にご注意ください。本ツールは縮尺比だけを計算し、標高モデル、測量、地図、デジタル化した断面図の精度は評価しません。APIでは係数、正規化した縮尺、説明を1回$0.002で取得できます。
活用例
地形断面図に係数を表示する
断面図の横に係数を算出して掲載し、起伏が視覚的にどの程度強調されているかを示せます。
比較前に断面図を確認する
見かけの斜面や地形を比較する前に、2つの断面図が同じ垂直比率を使っているか確認できます。
GISの出力を記録する
地図レイアウト、現地報告書、教材、生成した断面図に、検証可能な縮尺比と説明を追加できます。
よくある質問
どの計算式を使用しますか?
水平縮尺の分母を垂直縮尺の分母で割ります。垂直が1:10,000、水平が1:50,000なら係数は5です。
係数が1とはどういう意味ですか?
両方の軸が同じ縮尺であり、地形は垂直方向の強調も圧縮もなく表示されています。
結果が1未満になることはありますか?
はい。1未満の場合、標高軸が水平軸に対して垂直方向に圧縮されていることを示します。
2つの縮尺は同じ単位でなければなりませんか?
代表縮尺は両辺に同じ単位を使えば無次元です。文章式の縮尺は、有効な代表縮尺へ変換してから分母をご入力ください。
APIでの計算料金はいくらですか?
APIは1回$0.002です。同じ決定論的な計算をブラウザーでは無料でご利用いただけます。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/geo/vertical-exaggeration \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"vertical_scale_denominator":10000,"horizontal_scale_denominator":50000}'const res = await fetch("https://api.kit.forhosting.com/geo/vertical-exaggeration", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"vertical_scale_denominator": 10000,
"horizontal_scale_denominator": 50000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/vertical-exaggeration",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"vertical_scale_denominator": 10000,
"horizontal_scale_denominator": 50000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/vertical-exaggeration", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"vertical_scale_denominator":10000,"horizontal_scale_denominator":50000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"vertical_scale_denominator":10000,"horizontal_scale_denominator":50000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/vertical-exaggeration", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"vertical_scale_denominator": 10000,
"horizontal_scale_denominator": 50000
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.vertical_exaggeration",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |