Skip to content

الإضافات المدمجة ​

يأتي MLightCAD مع مجموعة من الإضافات الرسمية. تركّز كل إضافة على جانب واحد — واجهة التطبيق، أو مساعد الذكاء الاصطناعي، أو خطوط التصدير/الاستيراد، أو مصادر البيانات السحابية — ويمكن دمجها حسب الحاجة.

أما آلية الإضافات نفسها (AcApPlugin، مدير الإضافات، التحميل الكسول، وكيفية كتابة إضافتك الخاصة) فراجع نظام الإضافات. أما التثبيت والتسجيل والتفاصيل الكاملة للواجهة العامة فتوجد في ملف README لكل حزمة — انظر الروابط أدناه.

نظرة عامة على الإضافات ​

الحزمةالدورالأوامر / القدرات
@mlightcad/cad-simple-ui-pluginواجهة شريط الأدوات ومدير الطبقات ولوحة المراجعة لـ cad-simple-viewer (DOM عادي، بدون Vue/React)layer، markuppanel، شريط الأدوات الافتراضي (عرض، قياس، تصدير، مراجعة، سمة، لغة)
@mlightcad/cad-agent-pluginوكيل CAD بلغة طبيعية (لوحة محادثة AI + استدعاءات أدوات الرسم)agent
@mlightcad/cad-script-pluginوحدة تحكم نصوص CAD يدوية (تشغّل النصوص المُتحقق منها على الرسم، بدون LLM / مفتاح API)cadscript
@mlightcad/cad-html-pluginتصدير الرسومات إلى HTML غير متصل مكتفٍ ذاتيًاchtml (نافذة حوار في cad-viewer)، -chtml (سطر الأوامر)
@mlightcad/cad-pdf-pluginتصدير واستيراد PDF متجهيcpdf, ipdf
@mlightcad/cad-svg-pluginتصدير SVG متجهي والعارض المتجهي المشترك (يُستخدم أيضًا في تصدير PDF)csvg
@mlightcad/cad-onedrive-pluginمصدر بيانات OneDrive — افتح DWG/DXF من OneDrive / SharePointيسجّل AcApDataSource (onedrive)؛ تدفق من خطوتين: تسجيل الدخول ← فتح (آمن ضد حاجب النوافذ المنبثقة)
@mlightcad/cad-google-drive-pluginمصدر بيانات Google Drive — افتح DWG/DXF من Google Driveيسجّل AcApDataSource (googledrive)؛ تدفق من خطوتين: تسجيل الدخول ← فتح (آمن ضد حاجب النوافذ المنبثقة)

جميع الإضافات المُشغَّلة بالأوامر كسولة التحميل: تُسجَّل مسبقًا وحدة تسجيل صغيرة (stub) ولا تُنزَّل الحزمة الثقيلة إلا عند تشغيل المستخدم أمر التشغيل. راجع نظام الإضافات — تسجيل الإضافات للاطلاع على واجهة برمجة التسجيل.


إضافات واجهة المستخدم ​

@mlightcad/cad-simple-ui-plugin — واجهة العارض البسيط ​

cad-simple-viewer لا يأتي عمدًا مع أي واجهة تطبيق — فقط اللوحة (canvas) ونواة CAD. إذا كنت تدمج العارض البسيط في تطبيق الويب الخاص بك وتريد واجهة جاهزة دون اعتماد غلاف cad-viewer الكامل القائم على Vue، فإن cad-simple-ui-plugin هو طبقة الواجهة المقصودة.

يوفر:

  • شريط أدوات قابل للتهيئة (وضعه على أي حافة، أوامر CAD افتراضية، قوائم متداخلة، عناصر مخصصة)
  • لوحة دوك (dock panel) بعلامة تبويب مدير الطبقات (إظهار/إخفاء الطبقة، منتقي ألوان ACI، تكبير إلى الطبقة بالنقر المزدوج) وعلامة تبويب لوحة المراجعة (قائمة العلامات التوضيحية، الحالة، التعليقات)
  • مزامنة السمة مع متغير النظام COLORTHEME ورموز CSS ‏--ml-ui-* على عنصر المضيف
  • مزامنة اللغة مع AcApI18n (الإنجليزية / الصينية / التشيكية / التركية)

جميع العناصر مستقلة عن إطار العمل (DOM عادي). تطبيق Vue الكامل cad-viewer لديه واجهة Element Plus خاصة به ولا يحتاج هذه الإضافة؛ استخدم cad-simple-ui-plugin عندما تبني على cad-simple-viewer مباشرة.

→ البداية السريعة وتخصيص شريط الأدوات والخيارات: packages/cad-simple-ui-plugin/README.md

@mlightcad/cad-agent-plugin — مساعد الرسم بالذكاء الاصطناعي ​

cad-agent-plugin يضيف وكيل CAD بلغة طبيعية إلى التطبيقات المبنية على cad-simple-viewer. يصف المستخدمون ما يريدون بلغة عادية؛ ويستدعي الوكيل أدوات CAD لفحص الرسم وإنشاء الهندسة أو تعديلها.

يوفر:

  • AcApPlugin كسول التحميل (أمر التشغيل: agent) حتى لا تكون حزمة الذكاء الاصطناعي في المسار الحرج
  • لوحة محادثة Vue (AgentChatPanel) مبنية على Vercel AI SDK (Experimental_Agent + @ai-sdk/vue)
  • تهيئة LLM في المتصفح — مفاتيح API لـ OpenAI أو Anthropic أو نقاط النهاية المتوافقة مع OpenAI تبقى في العميل (مشفّرة في localStorage)
  • أدوات CAD للمرحلة الأولى — get_drawing_context؛ وdraw_line وdraw_circle وdraw_arc وdraw_rectangle وdraw_polyline وdraw_text؛ وset_current_layer وcreate_layer وzoom_extents
  • الإنجليزية / الصينية / التركية / التشيكية لسلاسل واجهة المستخدم عبر طبقة i18n الخاصة بالإضافة

يسجّل تطبيق Vue الكامل cad-viewer الوكيل تلقائيًا عند تثبيت الحزمة (علامة تبويب في اللوحة). يربطه cad-simple-viewer-example بعلامة تبويب دوك عبر cad-simple-ui-plugin. تستدعي التطبيقات المضيفة registerLazyAgentPlugin وsetAgentPaletteOpener لتركيب اللوحة حيث تريد.

→ التثبيت والتسجيل وقائمة الأدوات: packages/cad-agent-plugin/README.md

@mlightcad/cad-script-plugin — وحدة تحكم نصوص CAD ​

cad-script-plugin يضيف وحدة تحكم نصوص CAD يدوية للتطبيقات المبنية على cad-simple-viewer. على عكس إضافة الوكيل، فهي لا تتحدث مع نموذج ولا تحتاج مفتاح API: تشغّل وحدة التحكم مضيف النصوص الذي تم التحقق منه من @mlightcad/cad-agent-core، وكل نص (script) هو جسم دالة بوسيط واحد هو cad يمنح وصولًا برمجيًا إلى أدوات الرسم نفسها التي يستخدمها الوكيل.

  • AcApPlugin كسول التحميل (أمر التشغيل: cadscript)
  • يعيد استخدام أدوات CAD من @mlightcad/cad-agent-core؛ تضيف هذه الحزمة اللوحة والأمر فقط
  • تستدعي التطبيقات المضيفة registerLazyCadScriptPlugin وتركّب new CadScriptPanel().element (علامة تبويب دوك في cad-simple-viewer-example، علامة تبويب لوحة الأدوات في cad-viewer)؛ استدعِ destroy() عند إزالة علامة التبويب

→ الاستخدام: packages/cad-script-plugin/README.md


إضافات التصدير / الاستيراد (HTML / PDF / SVG) ​

تضيف هذه الإضافات أوامر تصدير (واستيراد PDF) إلى مدير الإضافات نفسه. وهي كسولة التحميل حتى يبقى وزن الصفحة الأولي صغيرًا. يسجّل العرض النموذجي cad-simple-viewer-example إضافات التصدير الثلاث كلها بالإضافة إلى إضافات الواجهة/الوكيل/النصوص؛ ويسجّل تطبيق cad-viewer الكامل إضافات التصدير وإضافات الوكيل/النصوص (عند تثبيتها) في تهيئته.

HTML (@mlightcad/cad-html-plugin) ​

عارض غير متصل في ملف واحد للمشاركة والأرشفة — يضمّن HTML المُصدَّر بيانات الرسم وعارضًا لوقت التشغيل، دون الحاجة إلى خادم.

العنصرالقيمة
الأمرchtml (نافذة حوار في cad-viewer)، -chtml (سطر الأوامر عبر cad-simple-viewer-cli)
إعداد إضافيhtmlViewerRuntimeUrl على AcApDocManager.createInstance() — عنوان URL إلى viewer-runtime.iife.js (انسخه من dist/ في الحزمة)
واجهة عامةregisterLazyHtmlPlugin، createHtmlPlugin، AcApHtmlConvertor، packHtml، أنواع اللقطات

→ مخرجات البناء والتكامل: packages/cad-html-plugin/README.md → واجهة سطر أوامر headless تستخدم خط المعالجة نفسه: packages/cad-simple-viewer-cli/README.md

PDF (@mlightcad/cad-pdf-plugin) ​

تصدير PDF متجهي واستيراد PDF إلى CAD.

العنصرالقيمة
الأوامرcpdf (تصدير)، ipdf (استيراد)
واجهة عامةregisterLazyPdfPlugin، createPdfPlugin، المحوّلات

→ مخرجات البناء والتكامل: packages/cad-pdf-plugin/README.md

SVG (@mlightcad/cad-svg-plugin) ​

تصدير SVG متجهي والعارض المتجهي المشترك الذي يستخدمه تصدير PDF.

العنصرالقيمة
الأمرcsvg
واجهة عامةregisterLazySvgPlugin، createSvgPlugin، AcApSvgConvertor، أدوات عارض SVG

→ مخرجات البناء والتكامل: packages/cad-svg-plugin/README.md


إضافات مصادر البيانات (OneDrive / Google Drive) ​

لا تسجّل هذه الإضافات أوامر — بل تسجّل AcApDataSource حتى يتمكن المستخدمون من فتح رسومات DWG/DXF مباشرة من التخزين السحابي. ويستخدم كلاهما تدفقًا من خطوتين: تسجيل الدخول ← فتح مصمّمًا ليبقى آمنًا ضد حاجب النوافذ المنبثقة.

@mlightcad/cad-onedrive-plugin ​

مصدر بيانات OneDrive / SharePoint مبني على Microsoft File Picker v8 + MSAL. يتطلب تسجيل تطبيق Azure (SPA، أذونات مفوَّضة User.Read + Files.Read.All).

typescript
import { registerOneDrivePlugin } from '@mlightcad/cad-onedrive-plugin/register'

await registerOneDrivePlugin(AcApDocManager.instance.pluginManager, {
  clientId: 'your-azure-app-client-id'
})

→ إعداد تطبيق Azure والتكامل الكامل: packages/cad-onedrive-plugin/README.md وإضافة مصدر البيانات

@mlightcad/cad-google-drive-plugin ​

مصدر بيانات Google Drive بعقد AcApDataSource نفسه.

typescript
import { registerGoogleDrivePlugin } from '@mlightcad/cad-google-drive-plugin/register'

await registerGoogleDrivePlugin(AcApDocManager.instance.pluginManager, {
  clientId: 'your-google-oauth-client-id'
})

→ إعداد Google Cloud والتكامل الكامل: packages/cad-google-drive-plugin/README.md


ما الإضافات التي يسجّلها كل تطبيق؟ ​

التطبيقالإضافات المسجّلة
cad-simple-viewerلا شيء — النواة فقط، والإضافات اختيارية
cad-simple-viewer-exampleإضافات التصدير (HTML/PDF/SVG)، cad-simple-ui-plugin، cad-agent-plugin، cad-script-plugin
cad-viewer (Vue)إضافات التصدير (HTML/PDF/SVG)؛ وتسجَّل إضافتا الوكيل والنصوص تلقائيًا عند تثبيتهما (أقران اختياريون)

وثائق ذات صلة ​