تقاطع دائرتين
اعرف أين تتقاطع دائرتان من مركزيهما ونصفي قطريهما: دائرتان نصف قطر كل منهما 5 ومركزاهما (0, 0) و(8, 0) تتقاطعان في (4, 3) و(4, -3). وإذا تماستا فقط تحصل على نقطة واحدة، وإن لم تلتقيا تظهر رسالة واضحة. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- X1
- 0
- Y1
- 0
- R1
- 5
- X2
- 8
- Y2
- 0
- R2
- 5
- الكمية
- 2
- العلاقة
- intersect
- D
- 8
عند وجود دائرتين في المستوى الديكارتي، فإن تقاطعهما هو مجموعة النقاط التي تقع على محيطيهما معًا في آن واحد.
كيف تلتقي دائرتان في المستوى
ولتكن d المسافة الإقليدية بين المركزين. تُصنِّف كتب الهندسة التشكيل بمقارنة d مع مجموع نصفَي القطر والفرق المطلق بينهما. وعندما تكون d أصغر تمامًا من الفرق المطلق بين نصفَي القطر، تقع الدائرة الأصغر كليًا داخل الأكبر دون أن تلمسها.
وعندما تساوي d المجموع، تتلامس الدائرتان خارجيًا في نقطة واحدة؛ وعندما تساوي الفرق المطلق، تتلامسان داخليًا في نقطة واحدة. إزاحة تلك القاعدة بمقدار موجب أو سالب h في الاتجاه العمودي على خط المركزين تعطي نقطتي التقاطع، أو نقطة واحدة عندما يساوي h صفرًا. ولأن المسار يستخدم الحساب وجذرًا تربيعيًا واحدًا فقط بعد البوابات الهندسية، فهو حتمي وبدرجة O(1) وخالٍ من الحلالين التكراريين أو مكتبات حساب المثلثات.
المركزان المتطابقان مع نصفَي قطر متساويين يقبلان عددًا لا نهائيًا من الحلول، فيُرفضان بدلًا من تقريبهما.
أين يظهر تقاطع دائرة بدائرة في العمل الحقيقي
تطلب مقررات الهندسة التحليلية في المرحلتين الثانوية والجامعية باستمرار إيجاد النقاط المشتركة بين دائرتين معلومتين؛ وحاسبة موثوقة مع فحص صارم للتشكيل تسرِّع تصحيح الواجبات وتزيل أخطاء الجداول الحسابية حيث ينسى أحدهم حالة الاحتواء أو يخطئ في إشارة الإزاحة العمودية. تضع مخططات التعدد الجانبي والمساحة البسيطة المحطة بتقاطع قوسَي مسافة من نقاط ضبط معروفة؛ وإرجاع المرشحَين بترتيب حتمي يتيح للمشغلين اختيار الجانب ذي المعنى الفيزيائي دون إعادة حساب الجبر يدويًا.
تحل أدوات CAD وCNC والألعاب غالبًا قيودًا مثل مركز ثقب يجب أن يقع على مسافتين ثابتتين من مركزين آخرين، أو تصادم صندوقَي اصطدام دائريين يحتاجان إلى نقطتي تلامس لمتجهات الاستجابة — فوجود مرجع رقمي مشترك يُبقي الملاحظات الميدانية وسكربتات المكتب وتثبيتات المحرك متسقة على مسار المحور الجذري نفسه. تحتاج فرق البيانات والتحليلات أحيانًا إلى تثبيتات هندسية حتمية لأمثلة التوثيق والمعايير الاصطناعية؛ وصدى المدخلات الستة والمسافة ووسم العلاقة وسلسلة الطريقة يجعل تلك التثبيتات تصف نفسها بنفسها.
وإذا احتجت لاحقًا إلى تقاطع دائرة مع مستقيم، أو تقاطعات كرات في ثلاثة أبعاد، أو ملاءمة دائرة من عينات نقاط، فعاملها كنوايا بحث منفصلة بدلًا من تحميل صفحة الدائرتين هذه أكثر من طاقتها.
حالات الاستخدام
مراجعة الواجبات والامتحانات
احسب نقاط التقاطع الحقيقية لدائرتين من المركزين ونصفَي القطر، أو افشل بوضوح عندما لا تلتقيان.
مخططات المساحة والتعدد الجانبي
قاطِع قوسَي مسافة من محطتين معلومتين لاسترجاع المواضع المرشحة بترتيب نقاط حتمي.
مساعدات القيود لأدوات CAD والألعاب
حُلَّ قيدين دائريين أو نقطتي تلامس صندوقَي اصطدام دائريين دون إعادة تنفيذ رياضيات المحور الجذري في كل أداة.
الأسئلة الشائعة
كيف أعرف هل تتقاطع دائرتان؟
قارن المسافة بين المركزين بمجموع نصفي القطرين وبالفرق بينهما. إذا وقعت بينهما تمامًا تتقاطع الدائرتان في نقطتين، وإذا ساوت أحدهما تتماسان في نقطة واحدة، كدائرتين نصف قطر كل منهما 5 والمسافة بين مركزيهما 10.
ماذا يحدث إذا لم تلتق الدائرتان؟
إذا كانتا متباعدتين جدًا، أو كانت إحداهما داخل الأخرى دون أن تلمسها، توضح الحاسبة ذلك برسالة صريحة بدل إعادة قائمة فارغة تبدو كأنها جواب.
وماذا لو كانت الدائرتان متطابقتين؟
الدائرتان اللتان لهما المركز نفسه ونصف القطر نفسه تشتركان في كل النقاط، فلا يوجد جواب محدود. لذلك تُرفض هذه الحالة بدل تقريبها.
هل يمكن تحديد موقع نقطة من مسافتين؟
نعم. ارسم حول كل محطة معروفة دائرة نصف قطرها المسافة المقيسة، فيعطي التقاطع المواقع المحتملة بترتيب ثابت لتختار الجهة الصحيحة.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/geom/two-circles-intersection \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"x1":0,"y1":0,"r1":5,"x2":8,"y2":0,"r2":5}'const res = await fetch("https://api.kit.forhosting.com/geom/two-circles-intersection", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"x1": 0,
"y1": 0,
"r1": 5,
"x2": 8,
"y2": 0,
"r2": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/two-circles-intersection",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"x1": 0,
"y1": 0,
"r1": 5,
"x2": 8,
"y2": 0,
"r2": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/two-circles-intersection", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"x1":0,"y1":0,"r1":5,"x2":8,"y2":0,"r2":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"x1":0,"y1":0,"r1":5,"x2":8,"y2":0,"r2":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/two-circles-intersection", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"x1": 0,
"y1": 0,
"r1": 5,
"x2": 8,
"y2": 0,
"r2": 5
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.two_circles_intersection",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
يحصل الطلاب الذين يراجعون واجبات الهندسة التحليلية، وأدوات CAD والرسوميات التي تحل القيود الدائرية المتداخلة، ومخططات المساحة التي تحدد المحطات بقوسَي مسافة، ومؤلفو الاختبارات الذين يحتاجون إلى تثبيتات هندسية حتمية، على النتيجة الصرفة نفسها في أداة المتصفح المجانية وفي واجهة API المدفوعة. تُرفَض الحقول الناقصة وأنصاف الأقطار غير الموجبة والدائرتان المنفصلتان والاحتواء الصارم دون تلامس بخطأ invalid_input واضح بدلًا من قائمة فارغة تبدو كحل ناجح بلا نقاط. لا توجد استدعاءات شبكة ولا عينات عشوائية ولا مفاجآت في الفاصلة العائمة تتجاوز حساب IEEE-754 المعتاد على الأرقام الستة التي تقدمها.
كيف تلتقي دائرتان في المستوى
قد تتجاوز الإحداثيات الكبيرة نطاق الدقة المزدوجة في IEEE-754؛ وتفشل القيم الوسيطة غير المنتهية برسالة واضحة بدلًا من إرجاع Infinity في JSON.
ما الذي ترسله وما الذي تستعيده
بعد التحليل، تحسب الخدمة المسافة d بين المركزين، وتقارنها مع المجموع والفرق المطلق لنصفَي القطر، فإما أن تفشل برسالة صريحة عن الانفصال أو الاحتواء، وإما أن تُنشئ قاعدة المحور الجذري ونصف الوتر. أمثلة للتحقق: مركزان عند (0, 0) و(8, 0) مع نصفَي قطر متساويين قدرهما خمسة ينتجان نقطتين قرب (4، موجب أو سالب ثلاثة)؛ ونصفا قطر متساويان قدرهما خمسة مع مركزين يبعدان عشر وحدات يتلامسان خارجيًا عند نقطة المنتصف؛ والمركزان الأبعد كثيرًا من مجموع نصفَي القطر يفشلان مع ذكر أن الدائرتين منفصلتان. استخدم أداة المتصفح المجانية للفحوص السريعة، ثم نادِ العقد نفسه من السكربتات عندما تحتاج إلى تقييم جماعي دون إعادة تنفيذ البوابات الرقمية في كل لغة. تُقبَل الأسماء المستعارة القصيرة مثل cx1 وcy1 وradius1 وcenter1_x والأسماء المناظرة للدائرة الثانية، بحيث تبقى تسميات النماذج موجزة دون معالجات متباينة. تُرفَض الحقول الناقصة والسلاسل الفارغة والنصوص غير الرقمية وNaN وInfinity وأنصاف الأقطار غير الموجبة بخطأ invalid_input ولا تُحتسب رسومًا. عند النجاح، يُعيد رد JSON الحقل points كمصفوفة من كائن واحد أو كائنين مع x وy مقربين لضمان تسلسل مستقر، وcount مساويًا لطول المصفوفة، وrelation مضبوطًا على intersect أو tangent_external أو tangent_internal، والمسافة d، وصدى المدخلات الستة المُطبَّعة، وmethod مضبوطًا على two_circles_radical_axis بحيث توثِّق السجلات وواجهات التدريس الخوارزمية. العقد هو JSON مستقر مناسب لاختبارات الوحدة ومدققي الواجبات وخطوط أنابيب الدفعات التي تربط أزواج الدوائر بنقاط التقاطع. تسعير API هو الأساس المنشور البالغ $0.002 لكل عنصر ناجح.
أين يظهر تقاطع دائرة بدائرة في العمل الحقيقي
ولأن هذه القدرة محرك parse صِرف، فإن فشل التحقق لا يستهلك الرصيد وتبقى التشغيلات الناجحة عند $0.002 لكل عنصر.
أسئلة تقنية
ما الصيغة التي تستخدمها هذه الحاسبة؟
إنشاء المحور الجذري: المسافة d بين المركزين، والإزاحة a = (r1² − r2² + d²)/(2d)، ونصف الوتر h = √(r1² − a²)، ثم إزاحتان عموديتان ±. يتضمن الرد method: "two_circles_radical_axis".
ماذا يحدث إذا لم تتقاطع الدائرتان؟
إذا كانتا منفصلتين (d أكبر من مجموع نصفَي القطر) أو كانت إحداهما تحتوي الأخرى كليًا دون تلامس (d أصغر من |r1 − r2|)، يفشل الطلب بخطأ invalid_input مع رسالة تصف التشكيل.
هل تُعَد الدائرتان المتلامستان نجاحًا؟
نعم. التلامس الخارجي والداخلي يُعيد نقطة واحدة مع relation مساويًا tangent_external أو tangent_internal.
ماذا لو كانت الدائرتان متطابقتين؟
المركز نفسه مع نصفَي قطر متساويين يقبل عددًا لا نهائيًا من نقاط التقاطع؛ تُرفض تلك الحالة بخطأ invalid_input بدلًا من اختلاق قائمة منتهية.
كم التكلفة؟
أداة المتصفح مجانية وتعمل محليًا. تستخدم طلبات API رصيد KIT المدفوع مسبقًا بمقدار $0.002 لكل عنصر ناجح؛ ولا تُحتسب رسوم على الإدخال غير الصالح.