حاسبة العدسة الرقيقة
تأخذ حاسبة العدسة الرقيقة هذه مسافة جسم وبعدًا بؤريًا، وتُعيد مسافة الصورة والتكبير المستعرض من معادلة العدسة الرقيقة المستخدَمة في البصريات الهندسية التمهيدية.
شغّل الأداة مجانًا
المتطابقات حتمية بالكامل: واحد على f يساوي واحدًا على do زائد واحدًا على di، وتُعاد صياغتها إلى di تساوي f مضروبة في do على do ناقص f، والتكبير الجانبي m يساوي سالب di على do. تشمل الفحوص الكلاسيكية عدسة مُجمِّعة ب do تساوي ثلاثين وf تساوي عشرة، فتضع صورة حقيقية مقلوبة عند di تساوي خمسة عشر ب m تساوي سالب نصف، وجسمًا قريبًا ب do تساوي خمسة وf تساوي عشرة، فيعطي صورة افتراضية معتدلة عند di تساوي سالب عشرة ب m تساوي اثنين. يستخدم المحرك حسابًا محدودًا فقط، بلا اتصال بالشبكة وبلا أخذ عينات وبلا اختصارات مرتبطة بالتاريخ. استخدمها مجانًا في المتصفح للواجبات والتحضير للمختبر وتدريبات المسابقات، أو استدعِ واجهة برمجة التطبيقات (API) بتكلفة $0.002 لكل طلب ناجح عندما تحتاج إلى ثوابت عدسة رقيقة قابلة لإعادة الإنتاج في التكامل المستمر أو برمجيات التدريس أو العروض التعليمية.
طريقة الاستخدام
أدخل القيم في النموذج أعلاه. تتحقق الأداة منها قبل الحساب ثم تعرض النتيجة في الصفحة نفسها.
راجع بياناتك
اتبع التسميات والوحدات الموضحة بجانب كل حقل. إذا كانت قيمة مفقودة أو خارج النطاق، توضح الصفحة الحقل الذي يحتاج إلى تصحيح.
أعد الحساب أو نفّذه آليًا
استخدم أداة الويب للفحوص الفردية، واستخدم الواجهة البرمجية عند دمج الإمكانية نفسها في سير عمل آلي.
حالات الاستخدام
احصل على النتيجة الآن
أدخل مجموعة من القيم وشاهد النتيجة من دون إعداد جدول بيانات أو برنامج نصي.
قارن السيناريوهات
غيّر قيمة واحدة في كل مرة وأعد الحساب لمعرفة ما الذي يؤثر في النتيجة.
أتمت العمل المتكرر
استخدم الواجهة البرمجية عندما تحتاج إلى تشغيل الحساب نفسه داخل منتجك أو سير عملك.
الأسئلة الشائعة
كم تكلّف حاسبة العدسة الرقيقة؟
هي مجانية في متصفحك على هذه الصفحة. وعبر واجهة برمجة التطبيقات (API) يكلّف الطلب الناجح $0.002؛ ولا تُفرض رسوم على المدخلات غير الصالحة.
كيف تُعرَّف مسافة الصورة والتكبير؟
من 1/f = 1/do + 1/di تحصل على di = f·do/(do − f). التكبير المستعرض m = −di/do (السالب يعني مقلوبة).
ماذا يحدث إذا كانت مسافة الجسم صفرًا؟
يُرفض الإدخال برمز invalid_input. do = 0 غير معرَّف لمعادلة العدسة الرقيقة ول m = −di/do.
ماذا لو كان الجسم عند النقطة البؤرية؟
عندما تساوي do قيمة f، تكون di لانهائية (أشعة متوازية). ترفض الحاسبة تلك الحالة برمز invalid_input لأن النتيجة غير منتهية.
لماذا تُقرَّب النتائج إلى دقة معينة؟
تحتاج قسمة الفاصلة العائمة إلى عرض عرض ثابت للملفات المرجعية وJSON. الدقة الافتراضية عشر خانات عشرية؛ ويمكنك ضبط الدقة من 0 إلى 15.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/optics/thin-lens \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"object_distance":30,"focal_length":10}'const res = await fetch("https://api.kit.forhosting.com/optics/thin-lens", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"object_distance": 30,
"focal_length": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/thin-lens",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"object_distance": 30,
"focal_length": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/thin-lens", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"object_distance":30,"focal_length":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"object_distance":30,"focal_length":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/thin-lens", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"object_distance": 30,
"focal_length": 10
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.thin_lens",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_abs_length | 1000000000000000 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |