تقاطع مستقيم ومستوى
مستقيم يبدأ من نقطة الأصل باتجاه (1, 1, 1) يلتقي بالمستوى الأفقي عند الارتفاع 1 في النقطة (1, 1, 1)، وقيمة t تساوي 1. أدخل نقطة واتجاهًا ومعاملات المستوى الأربعة لتحصل على نقطة الالتقاء، أو على تنبيه إذا كانا متوازيين. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- X0
- 0
- Y0
- 0
- Z0
- 0
- Dx
- 1
- Dy
- 1
- Dz
- 1
- T
- 1
- X
- 1
- Y
- 1
- Z
- 1
يلتقي مستقيم ومستوى في الفضاء ثلاثي الأبعاد في نقطة واحدة بالضبط، أو لا يلتقيان لأنهما متوازيان، أو يتطابقان بحيث يقع كل نقطة من المستقيم على المستوى. حالة التقاطع الفريد هي السؤال اليومي في الواجبات وCAD ومحركات الألعاب: إذا عُلم نقطة واتجاه للمستقيم ومعادلة المستوى العامة ax زائد by زائد cz زائد d تساوي صفرًا، فما إحداثيات نقطة الالتقاء؟ تقبل هذه القدرة عشرة أعداد—أصل المستقيم (x0, y0, z0) والاتجاه (dx, dy, dz) ومعاملات المستوى a وb وc وd—وترفض اتجاهًا صفريًا وناظم مستوى صفريًا وأي وضع متوازٍ، وتعيد المعامل الوسيطي t مع نقطة التقاطع (x, y, z).
ما تقاطع المستقيم والمستوى وكيف تعمل الصيغة
اكتب المستقيم اللانهائي بالشكل الوسيطي كنقطة زائد عددًا مضروبًا في اتجاه: P لـ t يساوي (x0, y0, z0) زائد t مضروبًا في (dx, dy, dz). اكتب المستوى اللانهائي بالشكل الديكارتي العام a مضروبًا في x زائد b مضروبًا في y زائد c مضروبًا في z زائد d يساوي صفرًا، فيكون متجه الناظم N يساوي (a, b, c).
بالتعويض بالنقطة الوسيطية في معادلة المستوى ينتج حاصل الضرب النقطي لـ N مع P لـ t زائد d يساوي صفرًا، ويتوسع إلى حاصل N مع نقطة الأصل زائد t مضروبًا في (حاصل N مع D) زائد d يساوي صفرًا. حل المعامل الحر يعطي t يساوي ناقص المتبقي عند الأصل مقسومًا على حاصل الناظم والاتجاه N·D. إحداثيات التقاطع إذن x يساوي x0 زائد t مضروبًا في dx، ونفس النمط لـ y وz.
عندما يكون N·D قريبًا من الصفر يكون اتجاه المستقيم متعامدًا مع ناظم المستوى، فيكون المستقيم موازيًا للمستوى: إما لا يلتقيه أبدًا أو يقع بالكامل داخله. تحقق كلاسيكي هو المستقيم عبر الأصل بالاتجاه (1, 1, 1) مقابل المستوى الأفقي z يساوي واحدًا (a يساوي صفرًا، b يساوي صفرًا، c يساوي واحدًا، d يساوي ناقص واحد): N·D واحد، المتبقي ناقص واحد، t واحد، والالتقاء (1, 1, 1). تحقق آخر أي مستقيم اتجاهه أفقي مقابل مستوى أفقي بارتفاع مختلف: يجب أن يفشل المحرك برسالة توازٍ.
نصائح عملية وحدود وبحث ذو صلة ومتى لا تستخدمها
إذا أُعطي مستواك بثلاث نقاط غير متسامتة، شكّل متجهي حافة وخذ حاصل الضرب الاتجاهي للحصول على (a, b, c) ثم عيّن d بحيث تحقق إحدى النقاط الثلاث المعادلة. إذا أُعطي مستقيمك بنقطتين متمايزتين A وB، عيّن الأصل إلى A والاتجاه إلى B ناقص A. عند التدريس فضّل أمثلة مقترنة: الأصل باتجاه واحد-واحد-واحد مقابل z يساوي واحدًا للالتقاء عند (1, 1, 1)؛ مستقيم رأسي مقابل مستوى مائل لـ t غير وحدة؛ واتجاه أفقي مقابل مستوى أفقي لإظهار مسار الرفض الصارم للتوازي.
تستهدف هذه الصفحة من يبحث عن حاسبة تقاطع مستقيم ومستوى، أو مستقيم وسيطي ثلاثي الأبعاد يلتقي مستوى، أو إيجاد نقطة تقاطع مستقيم مع ax زائد by زائد cz زائد d يساوي صفرًا. ليست أداة قص شعاع تتوقف عند مثلث، ولا قص مقطع فقط يتجاهل التقاءات خارج [0, 1]، ولا مساعد تقاطع مستقيمين في 2D—تلك نوايا بحث مختلفة بعقود مختلفة. فضّل هذه القدرة عندما لديك أصلًا مستقيم نقطة-اتجاه والشكل العام لمستوى لانهائي في ثلاثة أبعاد.
فحوص الذهاب والإياب سهلة: بعد الحل عوّض (x, y, z) المعاد في a x زائد b y زائد c z زائد d وتأكد أن المتبقي يقارب الصفر، وتأكد أن (x, y, z) يساوي (x0, y0, z0) زائد t مضروبًا في (dx, dy, dz) ضمن تسامح الفاصلة العائمة.
حالات الاستخدام
شعاع أو مستقيم مقابل مستوى أرضية أو جدار أو سقف
استعد موضع التقاء مستقيم موجّه بمستوى بناء أو لعبة بالشكل العام، مع خطأ صارم عندما يكون المستقيم موازيًا.
مركّبات CAD والروبوتات وأدوات الشبكة
النصوص التي تزرع اختبارات وحدات أو تضع مراسي حيث يلتقي مسار بقيد مستوٍ يمكنها استدعاء أوراكل تقاطع خالص بدل إعادة تنفيذ الحل الوسيطي في كل لغة.
الأسئلة الشائعة
ما صيغة تقاطع المستقيم والمستوى؟
الالتقاء هو P(t). إذا كان المقام صفرًا فالمستقيم موازٍ.
لماذا يعطي المستقيم الموازي خطأ بدل null؟
عندما N·D≈0 إما لا تقاطع أو لانهائي (مستقيم في المستوى).
هل تُقصّ إلى شعاع أو مقطع؟
لا. تجد التقاطع الفريد للمستقيم اللانهائي مع المستوى اللانهائي. تقييد t≥0 (شعاع) أو t∈[0,1] (مقطع) مرشح منفصل يمكن تطبيقه على t المعاد.
ماذا يحدث إذا كان المستقيم موازيًا للمستوى؟
إذا كان الاتجاه عموديًا على المتجه العمودي للمستوى فإن المستقيم لا يلتقي بالمستوى أبدًا أو يقع داخله بالكامل. لا توجد في الحالتين نقطة واحدة، لذلك تُرفض المدخلات برسالة بدل اختراع إجابة.
كيف أستخدم مستوى معطى بثلاث نقاط؟
كوّن من النقاط الثلاث متجهين للأضلاع واحسب ضربهما الاتجاهي، فتحصل على المعاملات a وb وc. ثم اختر d بحيث تحقق إحدى النقاط الثلاث المعادلة، وأدخل الأعداد الأربعة.
ماذا يعني الوسيط t؟
يبيّن كم خطوة باتجاه المستقيم تلزم للانتقال من النقطة المعروفة إلى نقطة الالتقاء. في مثال الاتجاه (1, 1, 1) تكون t مساوية 1، أي أن نقطة الالتقاء تبعد خطوة واحدة بالضبط.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/geom/line-plane-intersection \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"x0":0,"y0":0,"z0":0,"dx":1,"dy":1,"dz":1,"a":0,"b":0,"c":1,"d":-1}'const res = await fetch("https://api.kit.forhosting.com/geom/line-plane-intersection", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"x0": 0,
"y0": 0,
"z0": 0,
"dx": 1,
"dy": 1,
"dz": 1,
"a": 0,
"b": 0,
"c": 1,
"d": -1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/line-plane-intersection",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"x0": 0,
"y0": 0,
"z0": 0,
"dx": 1,
"dy": 1,
"dz": 1,
"a": 0,
"b": 0,
"c": 1,
"d": -1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/line-plane-intersection", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"x0":0,"y0":0,"z0":0,"dx":1,"dy":1,"dz":1,"a":0,"b":0,"c":1,"d":-1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"x0":0,"y0":0,"z0":0,"dx":1,"dy":1,"dz":1,"a":0,"b":0,"c":1,"d":-1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/line-plane-intersection", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"x0": 0,
"y0": 0,
"z0": 0,
"dx": 1,
"dy": 1,
"dz": 1,
"a": 0,
"b": 0,
"c": 1,
"d": -1
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.line_plane_intersection",
"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 المدفوع مسبقًا، فمفاتيح الصف ومركّبات الاختبار وخطوط الإنتاج ترى الحساب نفسه دون نظام جبر حاسوبي ودون بذور عشوائية.
ما تقاطع المستقيم والمستوى وكيف تعمل الصيغة
كلا حالتي التوازي يهدم التفرد، لذا تعيد هذه الحاسبة invalid_input بدل اختراع نقطة واحدة. كل خطوة حساب ابتدائي—بلا تكرار وبلا عيّنات وبلا اعتماد على ساعة الجدار—فيعيد الطالب حساب t يدويًا بأعداد صحيحة صغيرة ويطابق API سطرًا بسطر.
كيف تستدعي API وماذا يعود
استخدمه في مسارات واجبات هندسة الفضاء، وفحوص شعاع مقابل أرضية في محركات بسيطة، ونصوص خلوص CAD، وصناديق تحضير مقابلات، أو أي تدفق يحتاج التقاء مستقيم ومستوى قابلًا للتكرار دون تثبيت حزمة جبر حاسوبي على كل جهاز. أرسل جسم JSON بعشرة حقول عددية. الحقل x0 هو الإحداثي الأول لنقطة معلومة على المستقيم؛ تُقبل الأسماء البديلة px وpoint_x وox. الحقل y0 هو الثاني؛ py وpoint_y وoy لها المعنى نفسه. الحقل z0 هو الثالث؛ تعمل pz وpoint_z وoz. الحقول dx وdy وdz مكونات الاتجاه؛ تُقبل vx وdir_x والأسماء المقابلة في y وz. الحقول a وb وc وd معاملات المستوى؛ تعمل A وcoeff_a وnx والصيغ المناظرة لـ b وc وd. عند النجاح تعيد الاستجابة المدخلات العشرة وتضيف المعامل t وإحداثيات الالتقاء x وy وz، وتضبط parallel إلى false وmethod إلى parametric_dot ليؤكد المستدعون الخوارزمية في الاختبارات. فشل التحقق—حقل مطلوب ناقص، عدد غير منتهٍ، قيمة خارج الحدود المطلقة المنشورة، متجه اتجاه صفري، ناظم مستوى صفري، أو مستقيم موازٍ حيث يختفي N·D—يعيد invalid_input ولا يُحاسب أبدًا. التسعير مبلغ ثابت $0.002 لكل طلب ناجح بوحدة item. لا يوجد نموذج لغة ولا خدمة هندسة خارجية ولا عشوائية، فالقدرة آمنة للتثبيت في فحوص التكامل المستمر ومواد دروس قابلة للتكرار تقارن كائنات JSON كاملة بايتًا بايت.
نصائح عملية وحدود وبحث ذو صلة ومتى لا تستخدمها
أبقِ الإحداثيات والمعاملات ضمن النطاق المطلق المنشور المناسب لأشكال CAD والصف العادية حتى تبقى الضروب الوسطية منتهية في دقة IEEE المزدوجة على Worker وفي المتصفح. الوحدات ما تمرره—أمتار أو أقدام أو وحدات لعبة—طالما أصل المستقيم ومكونات الاتجاه ومعاملات المستوى متسقة؛ API لا تحوّل الوحدات عنك. المهام الفاشلة التي تعيد invalid_input لا تستهلك الرصيد المدفوع مسبقًا، فيبقى استكشاف العقود رخيصًا عندما يكتب المستخدم اتجاهًا موازيًا أثناء التعلم.
حالات التكامل
فحوص واجبات وامتحانات لتقاطعات مستقيم ومستوى
أعطِ الطلاب مستقيمًا وسيطيًا ومستوى ax+by+cz+d=0؛ قارن نقطة التقاطع والمعامل t المحسوبين يدويًا بنتيجة حتمية من API أو المتصفح المجاني.
أسئلة تقنية
ماذا لو كان ناظم المستوى صفريًا؟
إذا a=b=c=0 فالمعادلة لا تعرّف مستوى. تعيد الحاسبة invalid_input بدل نقطة التقاء بلا معنى.
هل حاسبة تقاطع المستقيم والمستوى مجانية؟
أداة المتصفح مجانية وتعمل محليًا. استدعاءات API تستخدم رصيد KIT المدفوع مسبقًا بسعر $0.002 لكل طلب ناجح؛ المهام الفاشلة لا تُحاسب أبدًا.