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