> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/arabic/alblwkat-alwzyfyh/blocks-reference/detections-shapes/shape-analysis/line-geometry.md).

# Line Geometry

هذه الدالة توفر أداة مرنة ومتعددة الاستخدامات لمجموعة واسعة من عمليات الخط والهندسة: الزوايا، المسافات، التقاطعات، الإسقاطات، النقاط الوسطى، استخراج المقاطع والمزيد. يمكنها إنتاج نتائج رقمية، نقاط، بيانات إضافية خاصة بالعملية و(اختياريًا) صورة مشروحة للتصور.

## 📥 المدخلات <a href="#inputs" id="inputs"></a>

* `Input Image` صورة اختيارية تُستخدم لعرض الطبقات التوضيحية (إذا رغبت في رسم خطوط، نقاط أو محـاـيطات).
* `Line 1` مطلوب لمعظم العمليات. يقبل خطًا موصوفًا كـ \[(x1, y1), (x2, y2)] أو شكل مدخل متوافق.
* `Line 2` مطلوب لعمليات الزاوية / التقاطع / وبعض عمليات المسافة. يقبل خطًا ثانيًا بنفس الصيغة.
* `Anchor Point` نقطة اختيارية (x, y) تُستخدم في عمليات الإسقاط ونقطة-إلى-خط أو عند تزويد محيط لاشتقاق تقاطعات الشكل.

## 📤 المخرجات <a href="#outputs" id="outputs"></a>

* `Output Image` صورة مشروحة (إذا تم توصيل `Input Image` وتم تفعيل `Show Visualization`).
* `Result` النتيجة الرقمية للعملية المختارة (مثل الزاوية بالدرجات أو المسافة بالبكسل).
* `Point Output` نتيجة كنقطة عند إرجاع إحداثية (مثل نقطة التقاطع، الإسقاط، النقطة الوسطى).
* `Extra Output` بيانات إضافية خاصة بالعملية (مثل نقاط نهاية المقاطع، قائمة نقاط التقاطع، أو معلومات تصحيح الأخطاء).

## 🕹️ عناصر التحكم <a href="#controls" id="controls"></a>

* `Operation Type` اختر نوع العملية الهندسية المراد تنفيذها (مثل Angle Between Lines, Intersection Point, Segment Extraction, Projection).
* `Offset (px)` شريط لتطبيق إزاحة بالبكسل في عمليات المقاطع / الإسقاطات.
* `Interpolation Factor` شريط (0–100%) يُستخدم في العمليات المعتمدة على الاستيفاء (استخراج المقاطع، الإسقاط على طول الخط).
* `Show Visualization` خانة اختيار لتشغيل رسم `Output Image` المشروح عندما تتوفر `Input Image`.

## 🎯 الميزات الرئيسية <a href="#features" id="features"></a>

* كتلة واحدة متعددة الأغراض تغطي العديد من مهام الهندسة الشائعة.
* سلوك حساس للسياق: فقط المخرجات المتعلقة بالعملية المحددة ستكون ذات بيانات مفيدة.
* طبقات توضيحية اختيارية: ارسم خطوطًا، نقاطًا وسطى، تقاطعات، إسقاطات ومقاطع مباشرة على الصورة الموفرة.
* تلميحات تفاعلية على عناصر التحكم تساعدك على اختيار المدخلات والبارامترات الصحيحة لكل عملية.

## ⚙️ آلية التنفيذ <a href="#running-mechanism" id="running-mechanism"></a>

عند التشغيل، تقرأ الكتلة المقابس المتصلة و`Operation Type` المحدد. تؤدي الحساب الهندسي المطلوب باستخدام `Line 1` و`Line 2` الاختياري و`Anchor Point` الاختياري. إذا تم توصيل `Input Image` وتم تفعيل `Show Visualization`، تُرجع الكتلة صورة مشروحة في `Output Image`. تظهر النتائج الرقمية والنقاطية على المخرجات المقابلة بناءً على العملية.

## 📝 تعليمات الاستخدام <a href="#usage" id="usage"></a>

1. اختر العملية المطلوبة في `Operation Type`.
2. وصل المقابس المطلوبة: على الأقل قم بتوصيل `Line 1`. وصل `Line 2` أو `Anchor Point` حسب ما تتطلبه العملية المختارة.
3. اختياريًا قدّم `Input Image` وفعل `Show Visualization` للحصول على طبقة مشروحة على الصورة.
4. اضبط `Offset (px)` أو `Interpolation Factor` عند استخدام عمليات استخراج المقاطع أو الإسقاط.
5. شغّل السيناريو؛ افحص `Result` و`Point Output` و/أو `Extra Output`، واطّلع على التراكب المرئي في `Output Image` أو عبر كتلة عرض مثل `Show Image`.

## 💡 نصائح وحيل (الدمج مع كتل أخرى) <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* للحصول على خطوط تلقائيًا من محيطات أو حواف، ادمج مع `Find Contour` أو `Line Detector` لاستخراج بيانات الأشكال/الخطوط وإدخالها إلى `Line Geometry`.
* قص منطقة وعمل هندسة مركزة باستخدام `Image ROI`, `Image ROI Select` أو `Image ROI Polygon` قبل إرسال الصورة إلى هذه الكتلة — هذا يقلل الضوضاء ويحسّن النتائج.
* صوّر المخرجات في واجهة المستخدم باستخدام `Show Image` حتى تتمكن من فحص الصور المشروحة والتحقق تفاعليًا من النقاط والتقاطعات.
* إذا احتجت لإضافة نتائج نصية على الصورة المشروحة للتقارير، أضف `Draw Result On Image` بعد المخرج المرئي.
* لقياس المسافات بين ميزات مكتشفة، استخدم `Find Contour` أو `Feature Detector` لتحديد النقاط، ثم استخدم `Line Geometry` لحساب النقاط الوسطى أو المسافات أو الإسقاطات. مرّر مخرجات النقاط الرقمية إلى `Measure Position Distance` للحصول على تحليلات إضافية للمسافات.
* لعزل الاكتشافات ذات الصلة فقط قبل الحسابات الهندسية، استعمل `Image ROI Select` أو `Check Area (Polygon)` لتصفية المواقع والأشكال.
* عند دمج اكتشافات مع سير عمل تتبع، استخدم `Object Detection` أو `Object Detection - Custom` upstream لتوفير الإحداثيات، ثم استخدم `Line Geometry` للتحليلات مثل فحوصات التقاطع أو حساب زاوية الاقتراب.

(تلميح: استخدم مخرجات الكتلة مثل `Point Output` أو `Extra Output` كمدخلات لكتل معالجة أخرى مثل `Measure Position Distance`, `Draw Point` أو كتل التسجيل/التصدير.)

## 🛠️ استكشاف الأخطاء وإصلاحها <a href="#troubleshooting" id="troubleshooting"></a>

* إذا كانت `Output Image` فارغة: تأكد من توصيل `Input Image` وتفعيل `Show Visualization`.
* إذا أرجعت العملية لا قيمة في `Result` أو `Point Output`: تحقق من توصيل المقابس المطلوبة لتلك العملية (مثال: `Line 2` مطلوب لعمليات الزاوية/التقاطع).
* إذا بدت الإحداثيات خاطئة: تحقق من صيغة الإحداثيات وأن الخطوط موصوفة كـ \[(x1, y1), (x2, y2)]. استخدم كتل المعاينة مثل `Show Image` أو `Draw Point` لفحص النقاط الوسيطة.
* لنتائج الإسقاط والاستيفاء التي تبدو غير دقيقة، ضبط قيم `Offset (px)` و`Interpolation Factor` بما يتوافق مع المقياس والوحدات المتوقعة.

إذا احتجت إلى فحوص بصرية خطوة بخطوة، اجمع الكتلة مع `Show Image` و`Draw Point` للتحقق من الهندسة الوسيطة قبل استخدام النتائج في المراحل اللاحقة.
