حاسبة قدم العمود
اعثر على أقرب نقطة من المستقيم إلى نقطة معلومة: العمود النازل من نقطة الأصل على المستقيم 3x + 4y − 5 = 0 يقع عند (0.6، 0.8) وعلى مسافة 1. وترى أيضًا إن كانت النقطة على المستقيم أصلًا. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- A
- 3
- B
- 4
- C
- -5
- X
- 0
- Y
- 0
- موضع العمود (x)
- 0.6
- موضع العمود (y)
- 0.8
- المسافة
- 1
- المقام
- 25
قدم العمود هو النقطة الفريدة على مستقيم لانهائي الأقرب إلى نقطة خارجية معطاة. يستخدمه المساحون عند إسقاط معلم على حد ملكية، ويحتاجه الطلاب عندما يطلب الكتاب إحداثيات إسقاط نقطة على مستقيم مكتوب على صورة ax زائد by زائد c يساوي صفراً، وتحتاجه محركات CAD والألعاب عند لصق رأس أو شخصية بقيد جدار، ويستخدمه مخططو مسارات الروبوتات عند تقييد طرف مؤثّر بدليل خطي. تقبل هذه القدرة الأرقام الخمسة a وb وc وx وy، وترفض الحالة المنحطة حيث يكون a وb كلاهما صفراً لأن تلك المعادلة ليست مستقيماً، وتعيد إحداثيات القدم مع المسافة العمودية وعلَماً يكون صحيحاً عندما تكون النقطة أصلاً على المستقيم.
ما صيغة القدم وكيف تعمل الأرقام
اكتب المستقيم اللانهائي بالصورة العامة الديكارتية a في x زائد b في y زائد c يساوي صفراً. الزوج (a, b) متجه ناظمي للمستقيم: يشير عمودياً على كل اتجاه يبقى على المستقيم. مربع طول ذلك الناظم هو المقام a مربعاً زائد b مربعاً.
لنقطة استعلام (x, y) كوّن الباقي r يساوي a في x زائد b في y زائد c. يُحصل على قدم العمود بتحريك نقطة الاستعلام على طول الناظم الوحدة بمسافة موقعة r على طول الناظم. عندما يكون الباقي صفراً، تحقق النقطة معادلة المستقيم أصلاً، وتتطابق القدم مع النقطة، وتكون المسافة صفراً.
فحص كلاسيكي هو المستقيم ثلاثة x زائد أربعة y ناقص خمسة يساوي صفراً (ناظم 3-4-5) والأصل: الباقي ناقص خمسة، denom خمسة وعشرون، القدم عند (ثلاثة أخماس، أربعة أخماس)، المسافة واحد. كل خطوة حساب ابتدائي وجذر تربيعي واحد لحقل المسافة الاختياري، فلا تكرار ولا عيّنات ولا اعتماد على ساعة الحائط ولا حاجة لميل أو مقطع في عقد الإدخال.
حالات الاستخدام
إسقاط معلم على حد مساحي أو ملكية
أسقط عموداً من نقطة مقيسة على خط حد بالصورة العامة وسجّل القدم إسقاطاً رسمياً على الحافة.
لصق رأس أو وكيل بقيد جدار
في CAD أو الألعاب أو الروبوتات، انقل نقطة إلى أقرب موقع على قيد خطي لانهائي بحساب قدم العمود.
الأسئلة الشائعة
ما صيغة قدم العمود؟
القدم على المستقيم والقطعة من النقطة إلى القدم عمودية على المستقيم.
هل هذا مثل مسافة نقطة إلى مستقيم؟
مرتبط لكن بقصد مختلف. المسافة تعيد طول العمود فقط. هذه القدرة تعيد إحداثيات القدم (وتضم distance كحقل ملاءمة).
ماذا يحدث إذا كانت النقطة على المستقيم أصلًا؟
تصبح قيمة التعويض في معادلة المستقيم صفرًا، فتنطبق قدم العمود على النقطة نفسها وتكون المسافة صفرًا. وتظهر أيضًا علامة تؤكد أن النقطة تقع على المستقيم.
لماذا يُرفض مستقيم معاملاه a وb صفران؟
لأن المعادلة تصبح الثابت c وحده ولا تصف أي مستقيم. وبدل اختلاق إحداثيات، تطلب منك الأداة تصحيح المعاملات أولًا.
أين تُستخدم قدم العمود عمليًا؟
في المساحة لإسقاط معلم على حد قطعة أرض، وفي برامج التصميم والألعاب لتثبيت نقطة على جدار، وفي الروبوتات لإبقاء الحركة على دليل مستقيم.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/geom/foot-of-perpendicular \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":3,"b":4,"c":-5,"x":0,"y":0}'const res = await fetch("https://api.kit.forhosting.com/geom/foot-of-perpendicular", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 3,
"b": 4,
"c": -5,
"x": 0,
"y": 0
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/foot-of-perpendicular",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 3,
"b": 4,
"c": -5,
"x": 0,
"y": 0
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/foot-of-perpendicular", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":3,"b":4,"c":-5,"x":0,"y":0}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":3,"b":4,"c":-5,"x":0,"y":0}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/foot-of-perpendicular", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"a": 3,
"b": 4,
"c": -5,
"x": 0,
"y": 0
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.foot_of_perpendicular",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
النتائج JSON حتمي مع تقريب عشري ثابت—بلا نظام جبر حاسوبي، وبلا بذور عشوائية، وبنفس دالة الحل النقية في أداة المتصفح المجانية ومسار API المدفوع مسبقاً—بحيث ترى فحوصات الواجبات وسكربتات التصحيح وخطوط الإنتاج دائماً الأرقام نفسها.
ما صيغة القدم وكيف تعمل الأرقام
بالصورة المغلقة foot_x يساوي x ناقص a في r على denom وfoot_y يساوي y ناقص b في r على denom. عندما يكون a وb كلاهما صفراً، ينهار التعبير إلى الثابت c ولا يعرّف مستقيماً على الإطلاق—تعيد هذه الأداة invalid_input بدل اختراع إحداثيات. فحص آخر أي نقطة معلومة على المستقيم: يجب أن تساوي القدم النقطة وأن يكون on_line صحيحاً.
كيف تستدعي API وماذا تعيد
استخدمها في خطوط واجبات الهندسة، وسكربتات إسقاط البناء، وأدوات الالتصاق في الألعاب، وبيئات تحضير المقابلات، وفحوصات الإسقاط المتعامد في GIS، أو أي سير عمل يحتاج قدماً عمودية قابلة لإعادة الإنتاج دون تثبيت حزمة جبر حاسوبي على كل جهاز. أرسل جسم JSON بخمسة حقول عددية. الحقل a هو المعامل الأول للمستقيم؛ تُقبل الأسماء البديلة A وcoeff_a. الحقل b هو المعامل الثاني؛ لـB وcoeff_b المعنى نفسه. الحقل c هو الحد الثابت؛ تُقبل C وcoeff_c. الحقل x هو الإحداثي الأفقي للنقطة الخارجية؛ تعمل x0 وpx وpoint_x. الحقل y هو الإحداثي الرأسي؛ تعمل y0 وpy وpoint_y. عند النجاح تعيد الاستجابة a وb وc وx وy، وتضيف foot_x وfoot_y (إحداثيات قدم العمود على المستقيم)، وdistance (طول عمودي غير سالب من النقطة إلى القدم)، وon_line (صحيح عندما يكون الباقي صفراً)، وdenom (a مربعاً زائد b مربعاً)، وmethod مضبوطاً على foot_of_perpendicular، وكتلة formula قصيرة توثّق الصيغ المغلقة. فشل التحقق—حقل إلزامي مفقود، أو عدد غير منتهٍ، أو قيمة خارج الحدود المطلقة المنشورة، أو زوج a وb كلاهما صفر—يعيد invalid_input ولا يُحاسب أبداً. التسعير ثابت $0.002 لكل طلب ناجح بوحدة item.
نصائح عملية وحدود وعمليات بحث ذات صلة
إذا أُعطي مستقيمك بنقطتين (x1, y1) و(x2, y2) فحوّل أولاً: a يساوي y1 ناقص y2، b يساوي x2 ناقص x1، c يساوي x1 في y2 ناقص x2 في y1 (أو أي مضاعف غير صفري). تستهدف هذه الصفحة من يبحث عن حاسبة قدم العمود أو إحداثيات إسقاط نقطة على ax زائد by زائد c يساوي صفراً؛ وليست أداة إسقاط على قطعة—تقييد القدم بقطعة منتهية يحتاج منطق أطراف خارج النطاق هنا. فضّل هذه القدرة عندما تملك الصورة العامة لمستقيم لانهائي وتحتاج نقطة القدم نفسها لا المسافة وحدها. أبقِ المعاملات والإحداثيات ضمن النطاق المطلق المنشور حتى تريليون حتى تبقى النواتج الوسيطة منتهية في دقة IEEE المزدوجة على Worker وفي المتصفح. الوحدات هي ما تمرّره—أمتار أو أقدام أو وحدات لعبة—ما دام a وb وc وx وy متسقة مع وحدة طول واحدة لنتيجة المسافة؛ لا تحوّل API الوحدات نيابة عنك. عند التدريس فضّل أمثلة مقترنة: ثلاثة-أربعة-ناقص-خمسة عند الأصل للقدم (0.6, 0.8) والمسافة واحد؛ نقطة على المستقيم لقدم متطابقة وon_line صحيح؛ وa يساوي b يساوي صفراً لإظهار مسار الرفض الصارم الذي يحمي المستدعين من غير مستقيم. لأن الصيغة تحتاج خمسة مقاييس فقط، يستطيع الطلاب إعادة حساب الباقي وdenom وإحداثيي القدم يدوياً بأعداد صحيحة صغيرة ومطابقة API سطراً بسطر. المهام الفاشلة التي تعيد invalid_input لا تستهلك الرصيد المدفوع مسبقاً، فيبقى استكشاف السكربتات رخيصاً عندما يكتب المستخدمون ناظماً منعدماً أثناء تعلم العقد. فحوصات الذهاب والعودة سهلة: بعد الحل أكّد أن a في foot_x زائد b في foot_y زائد c يقارب الصفر، وأن distance يساوي الطول الإقليدي من (x, y) إلى (foot_x, foot_y)، وأن on_line صحيح تماماً عندما تكون distance صفراً.
حالات التكامل
فحوصات واجبات وامتحانات لقدم العمود
أعطِ الطلاب مستقيماً ax+by+c=0 ونقطة؛ قارن إحداثيات القدم المحسوبة يدوياً بنتيجة حتمية من API أو المتصفح المجاني.
أسئلة تقنية
لماذا يُرفض a وb كلاهما صفراً؟
إذا a=b=0 تنخفض المعادلة إلى c=0 أو تناقض ولا تعرّف مستقيماً. تعيد هذه الأداة invalid_input بدل اختراع إحداثيات القدم.
ماذا لو كانت النقطة أصلاً على المستقيم؟
الباقي صفر، والقدم تساوي النقطة نفسها، والمسافة صفر، وon_line صحيح. لا حاجة لحالة خاصة خارج الصيغة نفسها.
هل حاسبة قدم العمود مجانية؟
أداة المتصفح مجانية وتعمل محلياً. استدعاءات API تستخدم رصيد KIT المدفوع مسبقاً بمقدار $0.002 لكل طلب ناجح؛ المهام الفاشلة لا تُحاسب أبداً.