الخميس، 1 سبتمبر 2011

استخدام اكثر من لغة برمجية (MATLAB AND VB.net ) في برنامج واحد(مثال برنامج رسم اي معادلة رياضية)

كثيرا مانفكر ببناء برنامج كهذا بلغة كدوت نت توفر واجهة رسومية لكن عندما نباشر بالعمل ترافقنا (صفنات) ومتهات لايعلمها ألا الله  ونعلم علم اليقين أن لغات أخرى توفر هذا الشيئ بيسر كلماتلاب . لكن كيف نربط أكثر من لغة ببرنامج واحد بسيط وسهل ذو متانة عالية؟ والجواب معلوم وهوا أغلب اللغات تستطيع التعامل مع ملفات (DLL) لوحولنا مانحتاجه من لغة ما الى هذا الامتداد نستطيع استخدامه بالغة المطلوبة وهذا الكلام ليس عام لكل الغات. اذن مانحتاجة اليوم هوا دالة (eval) موجودة في الماتلاب تحول اي جملة نصية الى جملة رياضية وتعطي قيم لتلك الدالة(الجملة) عند كل نقطة نحن نحددها .هل تعلم كم من الاكود سوف تحتاج لبناء هذه الدالة في لغتك المفضلة (الله اعلم اعمل Edit   لهذه الدالة وشاهد كودها وفكر ببناءة لاأظنك سوف تفكر أبدا.

خطوات التصميم:
1. نكون برنامج بدوت نت ذو واجه كهذه 

2. لنبدء بالماتلاب   نفتح ملف جديد (M-file) ونكتب فيه هذه الدالة ونحفظها



3.نكتب في (command windows) امر (deploytool) ونظبط التالي (نكتب اسم الملف ومكان حفظه و (target) نجعله .net assembly


الان نكون كلاس جديد نسمية ( class1) ونضف اليه الفاكشن التي كونها بسحب والأفلات



 نعمل له build من قائمة الخيارات سوف يكون لنا ملف امتداده DLL  ويخزنه في الامتداد الذي  اخترنا لحفظه فيه




4. نفتح واجهة فيجوال vb.net2008 ونضيف الدالة التي كونها بصيغة (dll) الى البرنامج عن طريق  عن طريق Add refrence





ملف ال DLL الموجود بهذا المسار الخاص بالتعامل مع المصفوفات
وهو MWArray.dll  موجود في المسار التالي
\C:\Program Files\MATLAB\R2010a\toolbox\dotnetbuilder\bin\win3 2\v2.0



نفتح نافذة (Code) ونبدء بكتابة هذه الأسطر . وبداية نستدعي المكتبة بألأسم الذي كوناه للدالة (imports 


تبقى المحاور(الاحداثيات) تستطيع استخدام صورة مقسمة بال photoshop) ) الى احداثيان او بنائها بالاكود والافضل البناء.




ليست هناك تعليقات: