薄レンズ物体距離計算機
焦点距離と像距離を入れると物体の位置が分かります。f=10で像を15に結ぶなら物体距離は30、倍率は−0.5で、実像の倒立像になります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
処理はブラウザ内で完結します。ファイルは送信されません。無料でご利用いただけます。
この薄レンズ物体距離計算機は、焦点距離と像距離を受け取り、初等幾何光学で用いる薄レンズの式から物体距離と横倍率を返します。恒等式は完全に決定的です。1/f は 1/do と 1/di の和に等しく、do は f と di の積を di から f を引いたもので割った値に整理され、横倍率 m は −di/do です。典型的な確認例として、f が 10 で di が 15 の収束レンズでは実像・倒立で do が 30、m が −0.5 となり、f が 10 で di が −10 の虚像では do が 5、m が 2 となります。エンジンは有限算術のみを使い、ネットワーク呼び出し、標本化、日付に依存する近道はありません。宿題・実験準備・競技練習ではブラウザで無料にご利用いただけます。
計算結果の見方と各項目の意味
薄レンズの式は、光軸上の符号付き長さである物体距離 do、焦点距離 f、像距離 di の三つを関係づけます。未知の物体位置を解くと、do は f と di の積を di から f を引いたもので割った値になります。横倍率 m は −di/do なので、m が負なら倒立像、正なら正立像を意味し、|m| は通常の近軸仮定の下での像高と物体高の比です。
近似的な光線追跡や表面の乱数標本はありません。拒否される例には、f または di の欠落、非有限値、文書化された上限を超える大きさ、ゼロまたは数値的にゼロの焦点距離・像距離、物体が無限遠に退き do が非有限となる di が f に等しい特殊ケースが含まれます。多素子系・厚レンズ主面・収差予算が必要な場合は専用の光学設計ツールをご利用ください。
学習・実験・ソフトウェアでの物体距離確認の位置づけ
学生は、実験や宿題で望ましい像面と既知のレンズが与えられ物体をどこに置けばよいか問われるとき、競技問題が完全な光線図なしで do を求めるとき、あるいは併用の薄レンズ像距離ツールの結果を逆検証するときに、この解に出会います。
教員は、符号規約を黙って切り替えたり m のマイナスを落としたりする不透明な電卓アプリに頼らず、控えめな長さの模範解答を事前生成できます。競技練習では、時間圧力の下でグラフ電卓なしに解答を確認できる、高速でオフラインな物体距離源がしばしば必要です。
製品・教育ツールは、学習者が焦点距離と像距離を入力し、UI が物体の位置・倍率・倒立の有無を示すときにこの解を使います。
活用例
宿題と実験の確認
教科書の f と di から do と m を計算し、光線を描く前に実像/虚像・倒立/正立を確認します。
よくある質問
像距離が焦点距離と等しいとどうなりますか?
di が f に等しいとき do は無限大(逆向きの平行光線)で、結果は非有限です。
なぜ結果は精度で丸められるのですか?
既定精度は小数 10 桁で、precision は 0 から 15 に設定できます。
物体距離はどの式で求めていますか?
薄レンズの式を物体距離について解いた、物体距離=焦点距離×像距離÷(像距離−焦点距離)を使います。符号付きの長さとして扱うため、結果の符号にも意味があります。
実像か虚像かはどう見分けますか?
入力した像距離の符号で決まります。正なら実像、負なら虚像です。例えば焦点距離10、像距離−10なら物体距離は5、倍率は2になります。
倍率の符号は何を意味しますか?
倍率は像距離を物体距離で割って符号を反転した値です。負なら倒立像、正なら正立像で、符号を除いた大きさが像と物体の大きさの比を表します。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/optics/object-distance-thin-lens \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"focal_length":10,"image_distance":15}'const res = await fetch("https://api.kit.forhosting.com/optics/object-distance-thin-lens", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"focal_length": 10,
"image_distance": 15
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/object-distance-thin-lens",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"focal_length": 10,
"image_distance": 15
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/object-distance-thin-lens", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"focal_length":10,"image_distance":15}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"focal_length":10,"image_distance":15}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/object-distance-thin-lens", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"focal_length": 10,
"image_distance": 15
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.object_distance_thin_lens",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_abs_length | 1000000000000000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
CI・学習支援ソフト・授業デモ向けに再現可能な物体距離フィクスチャが必要な場合は、成功したリクエストごとに $0.002 の API をご利用ください。
物体距離の解が返す内容と各フィールドの読み方
本計算機は、入力した正規化済み focal_length と image_distance、要求精度で丸めた object_distance と magnification、di が正なら real・負なら virtual の image_type、m の符号から inverted または upright の orientation、使用した precision、短い formula 文字列、メソッドタグ object_distance_thin_lens を返します。エンジンは対応長さ範囲内で正確な浮動小数の do と m を構築するか、invalid_input で入力を拒否します。このページは単一の物体距離解のみに答え、ワークシート・単体テスト・光線経路を捏造してはならない API 利用者向けに安定した数値出力を提供します。
焦点距離と像距離の読み取りと再現性の保ち方
長さ文字列の先頭の任意のプラス記号と科学表記は有限小数として解釈できる場合に許可され、埋め込み空白・十六進接頭辞・非数値トークンは明確なメッセージで拒否され、悪いセルが誤った物体面にならないようにします。いずれの長さもゼロは決して有効ではありません。推奨フィールドは f の focal_length と di の image_distance ですが、焦点距離には f・focalLength、像距離には di・v・s_i・imageDistance の別名も受け付け、表計算・クエリ文字列・型付きフォームが同じ契約を再利用できます。|f| または |di| がごく小さいイプシロン以下なら、その長さの逆数が未定義のため invalid_input で失敗します。同様に重要なのは、di が f に等しいと分母が消え do の式がゼロ除算になるため、Infinity や NaN を返す代わりに明確な invalid_input でその幾何を拒否することです。このページの無料ブラウザ実行と有料 API を組み合わせれば、物体距離の式を自分で再実装せずに自動化パイプライン内で同一の数学結果を得られます。
学習・実験・ソフトウェアでの物体距離確認の位置づけ
このページでは処理はすべてブラウザ内で行われ、API では成功した照会ごとに $0.002 がかかり、検証失敗は課金されず、応答後に何も保存されません。無料の対話的探索と有料で同一の API という分担は KIT の tier-A カタログ全体と一致し、授業デモから自動化パイプラインへ数学結果を変えずに移れます。薄レンズの像距離・焦点距離ツールや他の数学・科学エンドポイントと組み合わせ、幾何・代数・初等物理向けの無料で決定的な小さなヘルパー群を構築してください。
連携の活用例
決定的なテストフィクスチャ
単体テスト・性質検査・CI アサーション向けに再現可能な object_distance と magnification を生成します。
学習支援と光学ウィジェット
対話型レッスンと物体配置デモのために、利用者入力の焦点距離と像距離を正規化します。
技術的な質問
薄レンズ物体距離計算機の料金はいくらですか?
このページのブラウザでは無料です。API では成功したリクエストが $0.002 で、無効な入力は課金されません。
ここでの物体距離の定義は何ですか?
1/f = 1/do + 1/di から do = f·di/(di − f) です。横倍率は m = −di/do(負は倒立)です。
焦点距離や像距離はゼロでもよいですか?
いいえ。f = 0 または di = 0 は 1/f または 1/di を未定義にし、どちらも invalid_input を返します。