تعريف ما هي برمجة نظم المعلومات الجغرافية (GIS Development)
هناك الكثير و الكثير من الناس و مستخدمي نظم المعلومات الجغرافية الذين لا يعروفون شيئا عن برمجة الGIS او ما يسمى بال GIS Programming او GIS Development و بالطبع انا كنت من هؤلاء, و لذلك سأحاول بقدر المستطاع شرح و توضيح ماهى برمجة و تطوير نظم المعلومات الجغرافية و خاصة البرمجة الخاصة بمنتجاتESRI و نبدأ بسم الله.
تعريف بى :
الأسم : آسر عادل عبد المنعم على سويلم
البلد : القاهرة , مصر
السن : 22 سنة
الوظيفة : طالب بالسنة الرابعة بكلية الاداب جامعة عين شمس قسم الجغرافيا شعبة نظم المعلومات الجغرافية.
حاصل على شهادتين من شركة Microsoft و هم
MCTS (Microsoft Certified Technology Specialist) Web Applications
و MCTS (Microsoft Certified Technology Specialist) Windows Applications
و هذة الشهادات فى تخصص البرمجة بأستخدام Visual Studio 2005 .NET Framework 2.0 بلغة ال C#
درست كورس فى شركة ESRI NEA و يختص بتعريف برمجة الArcGIS و اسم الكورس Introduction to programming ArcObjects Using Microsoft .NET Framework
أعوذ بالله من الفخر و التكبر و لكن ذكرى لهذة الشهادات و الكورسات ليس الا للتعريف بخلفيتى العلمية البسيطة و تعريف القراء ببعض ما يحتاجة مبرمج نظم المعلومات الجغرافية او ال GIS Developer.
أولا ما هى برمجة نظم المعلومات الجغرافية؟
هى بشرح مبسط عبارة عن أستخدام لغات البرمجة المختلفة فى توظيف أدوات برامج نظم المعلومات الجغرافية بالأسلوب المراد حسب الحاجة.
ثانيا لماذا برمجة نظم المعلومات الجغرافية؟
- لعمل أدوات و Tools جديدة غير موجودة داخل برامج الGIS مثل ArcGIS Desktop .
- و لعمل برامج مستقلة بذاتها StandAlone Applications تستخدم اى أدوات من أدوات برنامج الGIS حيث فى بعض الأحيان تكون هناك شركة او مؤسسة تريد العمل على نوع واحد من الادوات او التحليلات التى تتيحها برامج الGIS مثل أدخال البيانات المكانية مثلا (Spatial Data Entry) فمثلاُ وزارة الأحصاء المسؤولة عن أحصاء و تعداد السكان داخل الدولة تريد برنامج يتيح عرض خريطة موقع عليها العمارات السكنية و يقوم العاملين بأختيار العمارة او الوحدة السكنية و يقوم بأدخال عدد السكان بها و أعمارهم و عدد الأسر و عدد الأدوار ما الى ذلك من بيانات, اول شئ خطر على بالكم الأن صورة ذهنية لبرنامج ArcGIS Desktop و أختيار ال Feature الذى يمثل الوحدة السكنية و فتح ال Attribute الخاص بها و أدخال البيانات المطلوبة. و لكن برنامج مثل ArcGIS Desktop برنامج قوى و كبير و غالــــــــــــــــى و يحتاج لحاسوب عالى القدرة و عالى الذاكرة و يحتاج الى تصريح و يحتوى على مئات من الادوات و أساليب التحليل المختلفة التى ليس لنا حاجة بها لهذا الغرض, و بجوار كل ذلك يحتاج هذا البرنامج الى متخصص يستطيع العمل علية و متخصص نظم معلومات جغرافية. و من هنا تاتى وظيفة برمجة الGIS حيث تذهب هذة المؤسسة او الوزارة او ايا كان الى الشركات المتخصصة فى نظم المعلومات الجغرافية و تعرفهم بالقدرات التى يريدونها و من ثم يبدأ عمل المبرمجيين GIS Developers فى تصميم برنامج بسيط و صغير و رخيص السعر و لا يحتاج الى حاسب عالى القدرة ولا عالى الذاكرة و لا يحتاج الى متخصصين فى الGIS و يقوم هذا البرنامج بأداة الوظيفة المرادة فقط ليس الا و التى هى فى مثالنا أدخال بيانات خاصة بالوحدات السكنية فقط.
- و نفس الشئ بنسبة لبرمجة صفحات الانترنت الخاصة بأعمال الGIS (GIS Web Applications) او (Web Mapping Applications) و لكن كل الفرق ان عملية أدخال البيانات ستكون على الانترنت و مثلا يمكن القول ان نفس الوزارة الخاصة بأحصاء السكان تريد ان يعمل موظفيها على نفس عملية ادخال البيانات و لكن فى كل محافظة على حدة و من ثم يتم عمل صفحة انترنت بها هذة القدرة على أدخال البينات متاحة لكل فروع الوزارة بجميع المحافظات و من ثم تجميع كل تلك البيانات المدخلة على قاعدة بيانات واحدة بواسطة الأنترنت.
أرجو ان تكون وضحت الصورة من الغرض من أستخدام البرمجة فى ال GIS و اتمنى مع الشرح التالى أن تضح الصورة أكثر و أكثر إن شاء الله.
ماذا يحتاج مبرمج نظم المعلومات الجغرافية GIS Developer ؟
- اولا دراية قوية بالبرمجة.
- دراية قوية بنظم المعلومات الجغرافية و هذا ما اتوقع انه هو الغالب فى هذا المنتدى.
- دراية بالقدرة على الربط بين البرمجة و نظم المعلومات الجغرافية.
و سوف أذكر كل واحدة منهم و البرامج المستخدمة فيهم و سأخص بالذكر برامج منتجات شركة ESRI و Microsoft .
أولا الدراية بالبرمجة :
إن مبرمج نظم المعلومات الجغرافية لابد ان يكون مبرمج بما فى الكلمة من معنى و لغات البرمجة متعددة و يمكن أستخدامها كلها فى برمجة نظم المعلومات الجغرافية و سوف اتكلم فى هذة النقطة على البرمجة وحدها و لغاتها و برامجها لذلك اذا كنت مبرمج و عندك دراية قوية بالبرمجة فانتقل الى النقطة الثانية .
اما لغات البرمجة فمنها
Visual Basic
C#
Java
C++
ASP.NET
و هذة اللغات هم الأكثر شيوعا فى عالم البرمجة و الاكثر دعما من منتجات ESRI
و لمن يريد تعلم لغات البرمجة انصحة بالبدأ ب Visual Basic 6.0 حيث انها الأسهل و بعد ذلكVisual Basic .NET و اذا كان البعض لا يعرف ما الفرق بينهما فسأقول ان ال.NET عبارة عن تحديث او نسخة جديدة للغة بها ادوات اكثر و قدرات اكثر و ما الى ذلك و بعد ذلك يمكنك تعلم لغة الC# .NET حيث انها أصعب من ال Visual Basic فى كتابة و فهم الاكواد و بعد ذلك يمكنك تعلم ال Java حيث انها قريبة جدا من لغة ال C# و بعد ذلك يمكنك تعلم ال C++ حيث أنها الأصعب و من وجهه نظرى المتواضعة هى اللغة الام للغات السابق ذكرها اما ال ASP.NET فهى خاصة ببرمجة صفحات الانترنت. و يختلف هذا الترتيب و تعلم تلك اللغات من شخص لأخر كل شخص حسب رغباتة و لكن كلما كان معرفتك لالغات المتعددة أكثر كلما كانت قدراتك أكثر فى البرمجة بلغات أكثر مما يجعلك أفضل ممن يعرف لغة واحدة فقط.
كيف تتعلم هذة اللغات اولا حاول الحصول على برنامج Visual Studio 6.0 و هذا البرنامج يتيح لك كتابة الأكواد و عمل برامج بلغة Visual Basic 6.0 و حاول الحصول على كتب بالغة العربية او الانجليزية و يكون افضل و ما أكثر هذة الكتب على الانترنت لتعليم اللغة و ابدأ بالتعلم و التطبيق.
و من أفضل المواقع التى تحتوى على كتب تعليم عربية للبرمجة هو موقع البوصلة للتقنية
*
بعد ان تتقدم فى التعلم حاول الحصول على برنامج Visual Studio .NET 2005 و الذى يتيح لك كتابة الاكواد و عمل برامج Desktop و Web بلغة الVisual Basic .NET و C#.NET و C++ و حاول الحصول على كتاب لتعليم ال Visual Basic.Net و ابدأ فى التعلم و بعد ان تكون تعلمت و تقدمت فى الVisual Basic .NET أبدأ فى تعلم اللغات الأخرى و بالطبع و لن أكون مخادعا ستصل الى حد معين و تتوقف معرفتك بالبرمجة و قدرتك على تعمل المزيد فى البرمجة و هنا ليس امامك الا طريقين واحد منهم سهل و يحتاج مال و أخر صعب و يحتاج وقت و مجهود جبار و الطريق السهل بالمال و هو الحصول على كورسات متقدمة فى البرمجة و انصح بالكورسات الخاصة بشركة Microsoft اما الطريق الصعب فهو ان تبدأ فى تعليم نفسك بنفسك و البحث و التعلم و ان تكون طموحك فى البحث و تعلم الجديد و التعلم من الاخطاء ليس لها حدود.
بالنسبة للغة الASP.NET فهى حالة خاصة حيث انها ليست لغة فى حد ذاتها و انما لغة مساعدة للغات الاخرى لعمل صفحات الويب او صفحات الانترنت و هى تعمل على الربط بين الاكواد المكتوبة باللغات الاخرى و الاكواد التى تفهمها صفحات الانترنت.
و طبعا لا أريد ان أزيد فى التحدث عن البرمجة حيث انها مجال واسع و كبير و الكلام عنها يطول و لكنى حاولت ان اوضح كيفية البدأ فيها ليس الا و الله الموفق.
ثانيا الدراية بنظم المعلومات الجغرافية :
و أتوقع ممن يقرأ هذة الكلمات فى هذة المنتدى ان تكون المعرفة بنظم المعلومات الجغرافية موجودة, و اتوقع ايضا ان يكون الجميع عمل على برنامج ArcGIS حيث ان كلما زادت قدرتك فى أستخدامة كلما زادت قدرتك فى برمجة أدواتة و قدراتة حسب أحتياجاتك فمثلا اذا كنت تريد برمجة برنامج مستقل به أداة تحليل واحدة مثل 3D Analysis فلابد عليك ان تكون تعرف كيف تعمل على هذا النوع من التحليل فى ال ArcGIS Desktop 9.2 حتى تستطيع أستخدامة و توظيفة بالشكل الذى تريدة فى البرنامج الذى تقوم ببرمجتة.
ثالثاُ و الاهم و الأكثر حديثا فى موضوعنا الا و هى الدراية بالربط بين البرمجة و نظم المعلومات الجغرافية:
هناك ثلاث انواع من برمجة نظم المعلومات الجغرافية كما تم الذكر فى اول الموضوع و هم عمل ادوات جديدة داخل برامج نظم المعلومات و عمل برامج مستقلة تستخدم بعض الادوات المتاحة فى برامج نظم المعلومات و عمل صفحات انترنت بها ادوات من برماج نظم المعلومات.
و سنذكرهم بالترتيب و سنذكر طرق أستخدامهم و البرامج المستخدمة.
اولا عمل ادوات جديدة داخل برامج نظم المعلومات الجغرافية
- اذا كان لديك النسخة الكاملة من برنامج ArcGIS Desktop 9.2 عندما تبدأ فى تنصيب البرنامج تجد ان هناك أشياء كثيرة متاحة للتنصيب و من هذة الأشياء
كلمة SDK أختصار لـSoftware Developer Kit اى مجموعة تطوير البرنامج
اما الجملة كلها فمعناها (مجموعة تطوير برنامج ArcGIS Desktop بأستخدام Microsoft .Net ) و Microsoft .Net تعنى Visual Studio .Net و الذى يحتوى على اللغات Visual Basic.Net و C#.Net و C++.Net .
و الجملة الثانية نفس المعنى و لكن بأستخدام لغة البرمجة القديمة Visual Basic 6
و الجملة الاخيرة نفس المعنى و لكن بأستخدام الVisual C++ و الذى هو النسخة القديمة من C++.NET .
ماذا يعنى هذا؟؟؟
هذا يعنى ان عندما تنصب اول واحدة مثلا فبرنامج ArcGIS Desktop يعطيك مكتبات برمجية و أدوات يمكن عن طريقها عمل ادوات جديدة داخل الVisual Studio.NET يمكن أدخالها بعد ذلك الى ال ArcGIS Desktop و أستخدامها داخلة.
و لتوضيح الصورة فمثلا اذا اردنا عمل اداة تعمل على عد الطبقات Layers داخل الArc بحيث عندما اضغت على زرار داخل الأرك يخرج لى رسالة بها عدد الطبقات و هذا الزر غير موجود اصلا بالArc عندها بعد ان يتم تنصيب ArcGIS Desktop SDK for Microsoft .NET Framework يمكن بعد ذلك الدخول على ال Visual Studio.Net و عمل زرار جديد يؤدى هذة المهمة و ثم بعد ذلك أدخلة او أضيفة داخل برنامج الArc لأستخدامة.
و يوجد هنا سؤال أخر لماذا لابد من تنصيب ال SDK اولا؟
ضع نفسك مكان الحاسب فاذا قلت لك حرفيا (عد لى عدد الطبقات و اخرج لى العدد فى رسالة)
الحاسب يعرف كيف يعد و يعرف كيف يخرج رسالة بها الرقم و لكن لا يعرف ما هى الطبقات لا يعرف ما هى الLayers لذلك عند تنصيب ال SDK يقوم برنامج الArc بوضع مكتبات برمجية تبلغ الحاسب ما معنى كلمة Layers بحيث عندما اقول للحاسب عد لى الLayers ,يقول الحاسب الأن اعرف ما هى الLayers انها شئ خاص ببرنامج الArc لقد بلغنى الArc بذلك ïپٹ.
ارجو ان تكون وضحت الفكرة من تنصيب الSDK و لماذا هى اساسية لتطوير و برمجة الArcGIS Desktop .
و هناك ايضا داخل برنامج الArc نفسة برنامج اسمة VBA و هى أختصار ل Visual Basic for Applications و هذا البرنامج هو شكل مصغر من برنامج Visual Studio 6 و لكنة داخل الArc نفسة و يمكن عن طريقة كتابه أكواد و عمل أدوات خاصة بكل مشروع او بكل MXD على حدا و عمل نفس وظيفة الSDK و لكن داخل الArc مباشرا.
و العمل على هذا النوع من برمجة و تطوير الArc نفسة يكون داخل الشركات المتخصصة فى نظم المعلومات الجغرافية بمعنى انه عند العمل على بعض المشاريع الكبيرة و التحليلات المتقدمة يحتاج المحلل او العامل على المشروع لأداة غير موجودة بالأرك كله لذلك يبلغ المبرمج فى نفس الشركة انه يريد اداة تفعل كذا و كذا لتكملة المشروع و تكملة العمل.
ثانيا عمل برامج مستقلة تستخدم بعض الادوات المتاحة فى برامج نظم المعلومات الجغرافية
و هذا الجزء ارجو ان يتم التركيز علية من القارء حيث اننى سأتحدث عن بعض البرامج التى ربما يكون سمع عنها و لكن لم يسبق للعديد من القراء التعامل معها و منها ArcGIS Engine 9.2 و ArcGIS Engine Runtime 9.2.
ما هو برنامج ArcGIS Engine 9.2 ؟؟
هذا البرنامج يعمل نفس عمل الSDK السابق ذكرها و لكن يقوم بوضع مكتبات و ادوات اكثر داخل لغات البرمجة لكى يستطيع المبرمج ان يصنع برنامج مستقل بذاتة يمكن أستخدامة و العمل علية بعيدا تماما عن ArcGIS Desktop مثلما تم الذكر فى مثال برنامج ادخال بيانات السكان.
و عن طريق هذة الادوات و المكتبات يمكنك أستخدام اى اداة او اداة تحليل موجودة فى الارك لأستخدامها و توظيفها و اخراجها فى برنامج مستقل, و يمكن القول بأنة عبارة عن برنامج تصريح من شركة ESRI للمبرمجين بأخراج و عمل برامج مستقلة بأستخدام المكتبات و الادوات الخاصة بESRI.
يعنى تجاريا ESRI قامت مجتهدة بعمل مكتبات و أدوات خاصة بها و وظفت و صرفت اموال كبيرة جدا لصنع هذة الأشياء بأى حق لك انت يا مبرمج ان تاتى بكل بساطة و تستخدمها و تخرج عن طريقها برنامج مستقل و تبيعة للغير و تكسب منه؟؟؟؟؟ و اين مكسب ESRI من هذا المكسب الذى حصلت عليه بواسطة أدواتهم و مكتباتهم البرمجية؟؟؟؟؟؟؟ لذلك تبيع برنامج ArcGIS Engine للمبرمجين و الشركات و تقول لهم بهذا البيع الأن لك الحق بأستخدامها لقد حصلنا على حقنا ïپٹ.
لا يعتقد البعض منكم ان هذا طمع من شركة ESRI هذا حقها بنسبة 100% و لا يقبل شرع ولا قانون بغير ذلك.
نرجع لبرمجتنا ïپٹ طبعا بعد عمل هذا البرنامج المستقل لكى يعمل بشكل صحيح لابد له من أرضية يستطيع العمل عليها اى بمعنى ادق اذا صنعت لك برنامج مستقل و اعطيتة لك و أخذتة انت على جهازك و بدات العمل علية من اين سيفهم جهازك عند العمل عليه ما هى ادوات ArcGIS , اذا كان البرنامج فية اداة لعد الطبقات Layers مثلاُ من اين سيفهم جهازك الجاهل باعمال الGIS بمعنى كلمة Layers من الذى سيبلغة بمعناها و معنى جميع الأشياء الاخرى الخاصة ببرنامج الArc ؟؟؟؟
هنا ياتى دور ال ArcGIS Engine Runtime 9.2 و هذا واضح من معناه انه وقت عمل البرنامج الذى تم صناعتة بالArcEngine سيعمل ال Runtime على ان يفهم و يبلغ الحاسب بمعنى كل الأشياء التى يقوم بها البرنامج الذى قمت بتصميمة و اعطاءة لك.
ملحوظة : يمكن ان يعمل الArcGIS Dektop 9.2 أو الArcGIS Engine 9.2 نفس عمل الArcGIS Engine Runtime 9.2 .
سأصيغ لك الفكرة بشكل بسيط حيث انى اشعر ان البعض سيحدث عنده دمج فى الافكار و البرامج...انت مدرب فنى لفريق كرة قدم و لديك الفريق كامل و مجهز و لقد صممت خطة ليلعب بها فريقك امام فريق أخر و بالطبع سيتم لعب هذة المباراة فى مكان واحد فقط الا وهو المستطيل الأخضر للملعب داخل الأستاد و امام الجماهير و لا يمكن ان تلعب فى اى مكان أخر.
المدير الفنى: انت (ميرمج نظم المعلومات الجغرافية)
فريقك: هم البرامج التى تتيح لك وضع الخطة (لغة برمجة – برنامج برمجى – ArcGIS Engine 9.2 )
الخطة : هى تفكيرك فى صناعة البرنامج و أخراجة.
الجماهير : هم المستخدمين للبرنامج الذى صنعته.
الأستاد : هو الجهاز الذى سيعمل عليه البرنامج الذى صنعتة.
الملعب او النجيلة الخضراء: هى البرامج التى تتيح لبرنامجك ان ينفذ خطتة و يقوم بوظيفتة و تلك البرامج هى ArcGIS Dektop 9.2 أو ArcGIS Engine 9.2 أوArcGIS Engine Runtime 9.2
و اريد التنويه على ان ESRI لم تغفل حقها ايضا فى ان المستخدمين للبرامج التى قام المبرمج بصناعتها سوف يستخدمون أدوات من صنع ESRI لذلك فبرنامج الRuntime يبيعونة ايضا لضمان حقهم و الكسب المشروع و لضمان عمل البرامج التى تم تصميمها بشكل جيد على أى جهاز يوجد علية الRuntime , بحيث لا يحتاج المستخدم النهائى للبرنامج الذى تم تصميمة لشراء ArcGIS Desktop او ArcGIS Engine و يكتفى بشراء البرنامج الذى تم تصميمة من المبرمجين و شراء الArcEngine Runtime من ESRI.
ثالثاُ: عمل صفحات انترنت بها ادوات من برامج نظم المعلومات الجغرافية
بالنسبة لصفحات الويب هى نفس فكرة التى تقوم عليها فى الجزء السابق و لكن الفرق ان بدلا من ArcGIS Engine هناك برنامج اسمه ArcGIS Server 9.2
هذا البرنامج يقوم بأعطاءك نفس الأدوات و المكتبات التى يتيحها لك ال Engine و لكن يمكنك من أستخدامها فى برمجة صفحات الويب هذا , و أيضا يقوم نفس البرنامج بمهمة أرضية الملعب الذى يعمل علية برنامجك.
من المعروف لمستخدمى الانترنت ان عند الاتصال باى صفحة على الانترنت يقوم ال متصفح Internet Browser بالأتصال بخادم Server هذا الموقع.
فاذا قمت بتصنيع GIS Web Application فلابد عليك من وضعها على سيرفر لكى تتيح لاى مستخدم على الشبكة ان يتصل و يستخدم هذة الصفحة , و بالتالى فلابد من تواجد ال ArcGIS Server على هذا الخادم او الجهاز الServer لكى يقوم بوظيفة الملعب للبرنامج الذى يستخدمة المستخدم على الشبكة.
و من هنا ارجو ان تكون وضحت الفكرة كلها و وضحت فكرة برمجة نظم المعلومات الجغرافية بطرقها و برامجها المختلفة....كما ذكرنا كيف البدأ فى البرمجة و تعلمها لابد على من ذكر كيفية البدأ فى تعلم الربط بينهما فعليا
لابد من تعلم البرمجة حتى تستطيع تعلم الربط بينهما
نصيحة عامة حاول ان تحسن نفسك فى اللغة الأنجليزية اذا كانت غير جيدة لان معظم التعليم المتقدم فى نظم المعلومات الجغرافية و برمجتها باللغة الانجليزية.
أبدأ بالدخول على موقع ESRI و الدخول على هذا اللينك
*
و هذا عبارة عن فيديوهات مجانية من ESRI بها شرح للعديد من أستخدامات البرامج الخاصة بها و منتجاتها المختلفة
قم بالتسجيل فى الموقع حتى تستطيع مشاهدة العروض و كل عرض مدتة ساعة تقريبا
ابدأ بفيديو
Introduction to ArcGIS for Developers
ثم
Introduction to Visual Basic 6
ثم
Learning Visual Basic for Applications for New ArcGIS Developers
ثم
Getting Started with ArcObjects in ArcGIS
ثم
Migrating to VB .NET
ثم
Building Applications with ArcGIS Server Using the Microsoft .NET Framework
ثم
Building Applications with ArcGIS Server Using the Java Platform
ثم
ArcGIS Server Setup and Administration
هذه الفيديوهات ستعطيك فكرة عامة قوية جدا عن برمجة الArc بمختلف أنواعه التى ذكرتها
و بعد ذلك تبدأ التطبيق بقدر المستطاع و ابدأ بال VBA الذى داخل الArc نفسة و ذلك لعلمى بصعوبة الحصول على ArcGIS Enigne 9.2 او ArcGIS Server 9.2
و بالطبع ابحث على الانترنت على اى كتاب او شرح لبرمجة الArcGIS و خاصة الموقع الخاص بمبرمجى ArcGIS EDN (ESRI Developer Network) شبكة مطورى ESRI و به أكواد كثيرة و مساعدات ليس لها حدود فى برمجة الArc .
*
اما أفضل طريقة للوصول لمراحل متقدمة فى برمجة الArc هى عن طريق الكورسات الخاصة بشركة ESRI NEA و التى وكيلها فى مصرهى شركة Quality Standrads و هى كورسات معتمدة من ESRI و هناك حوالى 5 كورسات خاصة ببرمجة الArc و لكن أنصح بأثنين و هم الاهم و الأقوى و هم
Introduction to Programming ArcObjects Using the Microsoft.NET Framework
ندوة الجغرافيا و التخطيط
بعنوان
نماذج تطبيقية لاستخدام نظم المعلومات الجغرافية
من إعداد
أ.د/ بهجت محمد
يمكن تحميله من الرابط التالى
Download
*
مجموعة رائعة من دروس الفيديو التعليمية لشرح برنامج Arc GIS لنظم المعلومات الجغرافية للاستاذ / هشام عزام (بارك الله فيه وجزاه عنا خير الجزاء). المجموعة كاملة موجودة في مجلد علي أحد المواقع المجانية لتخزين الملفات في الرابط:
*
او من هنا
Download
*
*
*
*
*
*
*
*
*
عدد الملفات الاصلية 11 ملف الا أن ملفين منهما بهما مشكلة: الملف رقم 3 لم نستطع تحميله ، والملف رقم 5 بعد تحميله يواجه مشكله عند فك الضغط عنه.
الملفات المرفوعة:
1-navigate : للتعرف علي البرنامج
2-create shp : لانشاء الطبقات
4-define projection : لتحديد نظم الاحداثيات
6-fr txt to shp : لتحويل النص الي طبقة
7- join and related : للربط بين الجداول والطبقات
8-rectivy image : للارجاع الجغرافي لمرئية
9-rectivy map : للارجاع الجغرافي لخريطة
10-geometric network : للشبكات الهندسية
11-topology : لبناء الطبولوجي
_______
مكتبه ضخمة من أفلام الفيديو وملفات الفلاش التي تشرح برنامج ArcGIS وخصائصه وكيفية التعامل مع أدواته.
هذه الملفات هي حصيلة ما قمت بتحميله من المواقع المتخصصة بالبرنامج والتي منها منتدانا هذا وموقع الجغرافيون العرب وغيرها من المواقع والمنتديات وكذلك ما قدمه العديد من الإخوة الكرام ومنهم الأستاذ رمضان الشافعي، والأستاذ مختار الحسانين وغيرهم من الأساتذة الأفاضل.
والهدف من هذا الموضوع أولا جمع الملفات في موضوع وموقع واحد ليسهل على المدرب ومن هو في حاجة لها الرجوع إليه، وكذلك تجديد وتحديث للروابط السابقة ولتخدم عدد كبير من الأشخاص، وأيضا ترتيبها وتسميتها حسب الأولوية ليتسلسل معها المنتدى في التعلم والتدريب متمنيا أن تحوز على رضاكم واستحسانكم وأن ينتفع بها كل من هو في حاجة لها.
وأترككم مع روابط التحميل لمكتبة الأفلام الخاصة ببرنامج أنظمة المعلومات الجغرافية الشهير ArcGIS علما أن جميع الروابط على موقع 4Shared
تثبيت البرنامج
*
او
*
وهنا ايضا كتاب شرح تنصيب ArcGIS 9.3
How to setup ArcGIS 9.3
*
ArcCatalog-Create New Shapefile
*
او
*
تثبيت التحديث
*
او
*
الجزء المهم للجميع وهو تسجيل الخريطة أو تعريفها داخل البرنامج وهو ما يعرف بي RECTFAY-GEOREFERENCIN
الجزء الأول يشرح عملية تعريف الخريطة باستخدام نقاط مرجعية معلومة تم الحصول عليها من برنامج قوقل إرث
*
او
*
طريقة إنشاء الطبقات المختلفة داخل الارك كاتالوج
ArcCatalog-Create New Shapefile
حمل من هنا
*
او من هنا
*
الملف الثاني من هنا
*
او من هنا
*
شرح بطريقة أخرى ملف مضغوط (يجب تحميل الجزئيين)
*
*
او من هنا برابط واحد
*
Data Freame-Coordinate System
*
او
*
ملف فيديو مضغوط ومقسم على خمسة أجزاء شرح كامل في رسم الطبقات
*
*
*
*
*
او من هنا الكل برابط واحد
*
Digitizing in ArcMap
*
او
*
Digitizing Lines
*
او
*
Digitizing
*
او
*
التعامل مع بيانات وملفات الأوتوكاد DXF داخل برنامج ArcMap ملف فيديو مضغوط ومقسم على ثلاث أجزاء
تحويل الاتوكاد الى convert cad to gis
*
*
*
او من هنا الكل برابط واحد
*
فيديو مشاهده أو تحميل
Extracy by Mask & Clip & Contouring
*
او
*
laying out maps in ArcGIS
*
او
*
License Server Setup
*
او
*
Georeferencing according to google points location
*
او
*
Introduction-Add Data
*
او
*
Introduction-Selection
*
او
*
Label Features
*
او
*
Layers Coordinate System
*
او
*
Layers Properties
*
او
*
Map display area - Layout View
*
او
*
Topology Vedio
*
او
*
تحديد العناصر والطبقات المختلفة SELECT ملف مضغوط مقسم على ثلاث روابط (يجب تحميل كامل الروابط)
*
*
*
او الكل برابط واحد من هنا
*
Table of contents - Data Feame
*
او
*
طرق التعامل مع جداول البيانات Tables ملف كبير ومضغوط مقسم على أربعة أجزء (يجب تحميل جميع الملفات)
*
*
*
*
او الكل برابط واحد من هنا
*
شرحا تفصيلياً عن خطوات التكامل بين برنامج ArcGIS, global mapper, google earth- الجزء 2-1
1
*
2
*
انتاج الخرائط الطبوغرافية من ملفات المسح الجوي مباشرة باستخدام نظم المعلومات الجغرافية
*
تعلم نظم المعلومات الجغرافية GIS وتعلم GPS وهناك المزيد لاحقا
هناك الكثير و الكثير من الناس و مستخدمي نظم المعلومات الجغرافية الذين لا يعروفون شيئا عن برمجة الGIS او ما يسمى بال GIS Programming او GIS Development و بالطبع انا كنت من هؤلاء, و لذلك سأحاول بقدر المستطاع شرح و توضيح ماهى برمجة و تطوير نظم المعلومات الجغرافية و خاصة البرمجة الخاصة بمنتجاتESRI و نبدأ بسم الله.
تعريف بى :
الأسم : آسر عادل عبد المنعم على سويلم
البلد : القاهرة , مصر
السن : 22 سنة
الوظيفة : طالب بالسنة الرابعة بكلية الاداب جامعة عين شمس قسم الجغرافيا شعبة نظم المعلومات الجغرافية.
حاصل على شهادتين من شركة Microsoft و هم
MCTS (Microsoft Certified Technology Specialist) Web Applications
و MCTS (Microsoft Certified Technology Specialist) Windows Applications
و هذة الشهادات فى تخصص البرمجة بأستخدام Visual Studio 2005 .NET Framework 2.0 بلغة ال C#
درست كورس فى شركة ESRI NEA و يختص بتعريف برمجة الArcGIS و اسم الكورس Introduction to programming ArcObjects Using Microsoft .NET Framework
أعوذ بالله من الفخر و التكبر و لكن ذكرى لهذة الشهادات و الكورسات ليس الا للتعريف بخلفيتى العلمية البسيطة و تعريف القراء ببعض ما يحتاجة مبرمج نظم المعلومات الجغرافية او ال GIS Developer.
أولا ما هى برمجة نظم المعلومات الجغرافية؟
هى بشرح مبسط عبارة عن أستخدام لغات البرمجة المختلفة فى توظيف أدوات برامج نظم المعلومات الجغرافية بالأسلوب المراد حسب الحاجة.
ثانيا لماذا برمجة نظم المعلومات الجغرافية؟
- لعمل أدوات و Tools جديدة غير موجودة داخل برامج الGIS مثل ArcGIS Desktop .
- و لعمل برامج مستقلة بذاتها StandAlone Applications تستخدم اى أدوات من أدوات برنامج الGIS حيث فى بعض الأحيان تكون هناك شركة او مؤسسة تريد العمل على نوع واحد من الادوات او التحليلات التى تتيحها برامج الGIS مثل أدخال البيانات المكانية مثلا (Spatial Data Entry) فمثلاُ وزارة الأحصاء المسؤولة عن أحصاء و تعداد السكان داخل الدولة تريد برنامج يتيح عرض خريطة موقع عليها العمارات السكنية و يقوم العاملين بأختيار العمارة او الوحدة السكنية و يقوم بأدخال عدد السكان بها و أعمارهم و عدد الأسر و عدد الأدوار ما الى ذلك من بيانات, اول شئ خطر على بالكم الأن صورة ذهنية لبرنامج ArcGIS Desktop و أختيار ال Feature الذى يمثل الوحدة السكنية و فتح ال Attribute الخاص بها و أدخال البيانات المطلوبة. و لكن برنامج مثل ArcGIS Desktop برنامج قوى و كبير و غالــــــــــــــــى و يحتاج لحاسوب عالى القدرة و عالى الذاكرة و يحتاج الى تصريح و يحتوى على مئات من الادوات و أساليب التحليل المختلفة التى ليس لنا حاجة بها لهذا الغرض, و بجوار كل ذلك يحتاج هذا البرنامج الى متخصص يستطيع العمل علية و متخصص نظم معلومات جغرافية. و من هنا تاتى وظيفة برمجة الGIS حيث تذهب هذة المؤسسة او الوزارة او ايا كان الى الشركات المتخصصة فى نظم المعلومات الجغرافية و تعرفهم بالقدرات التى يريدونها و من ثم يبدأ عمل المبرمجيين GIS Developers فى تصميم برنامج بسيط و صغير و رخيص السعر و لا يحتاج الى حاسب عالى القدرة ولا عالى الذاكرة و لا يحتاج الى متخصصين فى الGIS و يقوم هذا البرنامج بأداة الوظيفة المرادة فقط ليس الا و التى هى فى مثالنا أدخال بيانات خاصة بالوحدات السكنية فقط.
- و نفس الشئ بنسبة لبرمجة صفحات الانترنت الخاصة بأعمال الGIS (GIS Web Applications) او (Web Mapping Applications) و لكن كل الفرق ان عملية أدخال البيانات ستكون على الانترنت و مثلا يمكن القول ان نفس الوزارة الخاصة بأحصاء السكان تريد ان يعمل موظفيها على نفس عملية ادخال البيانات و لكن فى كل محافظة على حدة و من ثم يتم عمل صفحة انترنت بها هذة القدرة على أدخال البينات متاحة لكل فروع الوزارة بجميع المحافظات و من ثم تجميع كل تلك البيانات المدخلة على قاعدة بيانات واحدة بواسطة الأنترنت.
أرجو ان تكون وضحت الصورة من الغرض من أستخدام البرمجة فى ال GIS و اتمنى مع الشرح التالى أن تضح الصورة أكثر و أكثر إن شاء الله.
ماذا يحتاج مبرمج نظم المعلومات الجغرافية GIS Developer ؟
- اولا دراية قوية بالبرمجة.
- دراية قوية بنظم المعلومات الجغرافية و هذا ما اتوقع انه هو الغالب فى هذا المنتدى.
- دراية بالقدرة على الربط بين البرمجة و نظم المعلومات الجغرافية.
و سوف أذكر كل واحدة منهم و البرامج المستخدمة فيهم و سأخص بالذكر برامج منتجات شركة ESRI و Microsoft .
أولا الدراية بالبرمجة :
إن مبرمج نظم المعلومات الجغرافية لابد ان يكون مبرمج بما فى الكلمة من معنى و لغات البرمجة متعددة و يمكن أستخدامها كلها فى برمجة نظم المعلومات الجغرافية و سوف اتكلم فى هذة النقطة على البرمجة وحدها و لغاتها و برامجها لذلك اذا كنت مبرمج و عندك دراية قوية بالبرمجة فانتقل الى النقطة الثانية .
اما لغات البرمجة فمنها
Visual Basic
C#
Java
C++
ASP.NET
و هذة اللغات هم الأكثر شيوعا فى عالم البرمجة و الاكثر دعما من منتجات ESRI
و لمن يريد تعلم لغات البرمجة انصحة بالبدأ ب Visual Basic 6.0 حيث انها الأسهل و بعد ذلكVisual Basic .NET و اذا كان البعض لا يعرف ما الفرق بينهما فسأقول ان ال.NET عبارة عن تحديث او نسخة جديدة للغة بها ادوات اكثر و قدرات اكثر و ما الى ذلك و بعد ذلك يمكنك تعلم لغة الC# .NET حيث انها أصعب من ال Visual Basic فى كتابة و فهم الاكواد و بعد ذلك يمكنك تعلم ال Java حيث انها قريبة جدا من لغة ال C# و بعد ذلك يمكنك تعلم ال C++ حيث أنها الأصعب و من وجهه نظرى المتواضعة هى اللغة الام للغات السابق ذكرها اما ال ASP.NET فهى خاصة ببرمجة صفحات الانترنت. و يختلف هذا الترتيب و تعلم تلك اللغات من شخص لأخر كل شخص حسب رغباتة و لكن كلما كان معرفتك لالغات المتعددة أكثر كلما كانت قدراتك أكثر فى البرمجة بلغات أكثر مما يجعلك أفضل ممن يعرف لغة واحدة فقط.
كيف تتعلم هذة اللغات اولا حاول الحصول على برنامج Visual Studio 6.0 و هذا البرنامج يتيح لك كتابة الأكواد و عمل برامج بلغة Visual Basic 6.0 و حاول الحصول على كتب بالغة العربية او الانجليزية و يكون افضل و ما أكثر هذة الكتب على الانترنت لتعليم اللغة و ابدأ بالتعلم و التطبيق.
و من أفضل المواقع التى تحتوى على كتب تعليم عربية للبرمجة هو موقع البوصلة للتقنية
*
بعد ان تتقدم فى التعلم حاول الحصول على برنامج Visual Studio .NET 2005 و الذى يتيح لك كتابة الاكواد و عمل برامج Desktop و Web بلغة الVisual Basic .NET و C#.NET و C++ و حاول الحصول على كتاب لتعليم ال Visual Basic.Net و ابدأ فى التعلم و بعد ان تكون تعلمت و تقدمت فى الVisual Basic .NET أبدأ فى تعلم اللغات الأخرى و بالطبع و لن أكون مخادعا ستصل الى حد معين و تتوقف معرفتك بالبرمجة و قدرتك على تعمل المزيد فى البرمجة و هنا ليس امامك الا طريقين واحد منهم سهل و يحتاج مال و أخر صعب و يحتاج وقت و مجهود جبار و الطريق السهل بالمال و هو الحصول على كورسات متقدمة فى البرمجة و انصح بالكورسات الخاصة بشركة Microsoft اما الطريق الصعب فهو ان تبدأ فى تعليم نفسك بنفسك و البحث و التعلم و ان تكون طموحك فى البحث و تعلم الجديد و التعلم من الاخطاء ليس لها حدود.
بالنسبة للغة الASP.NET فهى حالة خاصة حيث انها ليست لغة فى حد ذاتها و انما لغة مساعدة للغات الاخرى لعمل صفحات الويب او صفحات الانترنت و هى تعمل على الربط بين الاكواد المكتوبة باللغات الاخرى و الاكواد التى تفهمها صفحات الانترنت.
و طبعا لا أريد ان أزيد فى التحدث عن البرمجة حيث انها مجال واسع و كبير و الكلام عنها يطول و لكنى حاولت ان اوضح كيفية البدأ فيها ليس الا و الله الموفق.
ثانيا الدراية بنظم المعلومات الجغرافية :
و أتوقع ممن يقرأ هذة الكلمات فى هذة المنتدى ان تكون المعرفة بنظم المعلومات الجغرافية موجودة, و اتوقع ايضا ان يكون الجميع عمل على برنامج ArcGIS حيث ان كلما زادت قدرتك فى أستخدامة كلما زادت قدرتك فى برمجة أدواتة و قدراتة حسب أحتياجاتك فمثلا اذا كنت تريد برمجة برنامج مستقل به أداة تحليل واحدة مثل 3D Analysis فلابد عليك ان تكون تعرف كيف تعمل على هذا النوع من التحليل فى ال ArcGIS Desktop 9.2 حتى تستطيع أستخدامة و توظيفة بالشكل الذى تريدة فى البرنامج الذى تقوم ببرمجتة.
ثالثاُ و الاهم و الأكثر حديثا فى موضوعنا الا و هى الدراية بالربط بين البرمجة و نظم المعلومات الجغرافية:
هناك ثلاث انواع من برمجة نظم المعلومات الجغرافية كما تم الذكر فى اول الموضوع و هم عمل ادوات جديدة داخل برامج نظم المعلومات و عمل برامج مستقلة تستخدم بعض الادوات المتاحة فى برامج نظم المعلومات و عمل صفحات انترنت بها ادوات من برماج نظم المعلومات.
و سنذكرهم بالترتيب و سنذكر طرق أستخدامهم و البرامج المستخدمة.
اولا عمل ادوات جديدة داخل برامج نظم المعلومات الجغرافية
- اذا كان لديك النسخة الكاملة من برنامج ArcGIS Desktop 9.2 عندما تبدأ فى تنصيب البرنامج تجد ان هناك أشياء كثيرة متاحة للتنصيب و من هذة الأشياء
ArcGIS Desktop SDK for Microsoft .NET Framework
ArcGIS Desktop SDK for Visual Basic 6
ArcGIS Desktop SDK for Cisual C++
كلمة SDK أختصار لـSoftware Developer Kit اى مجموعة تطوير البرنامج
اما الجملة كلها فمعناها (مجموعة تطوير برنامج ArcGIS Desktop بأستخدام Microsoft .Net ) و Microsoft .Net تعنى Visual Studio .Net و الذى يحتوى على اللغات Visual Basic.Net و C#.Net و C++.Net .
و الجملة الثانية نفس المعنى و لكن بأستخدام لغة البرمجة القديمة Visual Basic 6
و الجملة الاخيرة نفس المعنى و لكن بأستخدام الVisual C++ و الذى هو النسخة القديمة من C++.NET .
ماذا يعنى هذا؟؟؟
هذا يعنى ان عندما تنصب اول واحدة مثلا فبرنامج ArcGIS Desktop يعطيك مكتبات برمجية و أدوات يمكن عن طريقها عمل ادوات جديدة داخل الVisual Studio.NET يمكن أدخالها بعد ذلك الى ال ArcGIS Desktop و أستخدامها داخلة.
و لتوضيح الصورة فمثلا اذا اردنا عمل اداة تعمل على عد الطبقات Layers داخل الArc بحيث عندما اضغت على زرار داخل الأرك يخرج لى رسالة بها عدد الطبقات و هذا الزر غير موجود اصلا بالArc عندها بعد ان يتم تنصيب ArcGIS Desktop SDK for Microsoft .NET Framework يمكن بعد ذلك الدخول على ال Visual Studio.Net و عمل زرار جديد يؤدى هذة المهمة و ثم بعد ذلك أدخلة او أضيفة داخل برنامج الArc لأستخدامة.
و يوجد هنا سؤال أخر لماذا لابد من تنصيب ال SDK اولا؟
ضع نفسك مكان الحاسب فاذا قلت لك حرفيا (عد لى عدد الطبقات و اخرج لى العدد فى رسالة)
الحاسب يعرف كيف يعد و يعرف كيف يخرج رسالة بها الرقم و لكن لا يعرف ما هى الطبقات لا يعرف ما هى الLayers لذلك عند تنصيب ال SDK يقوم برنامج الArc بوضع مكتبات برمجية تبلغ الحاسب ما معنى كلمة Layers بحيث عندما اقول للحاسب عد لى الLayers ,يقول الحاسب الأن اعرف ما هى الLayers انها شئ خاص ببرنامج الArc لقد بلغنى الArc بذلك ïپٹ.
ارجو ان تكون وضحت الفكرة من تنصيب الSDK و لماذا هى اساسية لتطوير و برمجة الArcGIS Desktop .
و هناك ايضا داخل برنامج الArc نفسة برنامج اسمة VBA و هى أختصار ل Visual Basic for Applications و هذا البرنامج هو شكل مصغر من برنامج Visual Studio 6 و لكنة داخل الArc نفسة و يمكن عن طريقة كتابه أكواد و عمل أدوات خاصة بكل مشروع او بكل MXD على حدا و عمل نفس وظيفة الSDK و لكن داخل الArc مباشرا.
و العمل على هذا النوع من برمجة و تطوير الArc نفسة يكون داخل الشركات المتخصصة فى نظم المعلومات الجغرافية بمعنى انه عند العمل على بعض المشاريع الكبيرة و التحليلات المتقدمة يحتاج المحلل او العامل على المشروع لأداة غير موجودة بالأرك كله لذلك يبلغ المبرمج فى نفس الشركة انه يريد اداة تفعل كذا و كذا لتكملة المشروع و تكملة العمل.
ثانيا عمل برامج مستقلة تستخدم بعض الادوات المتاحة فى برامج نظم المعلومات الجغرافية
و هذا الجزء ارجو ان يتم التركيز علية من القارء حيث اننى سأتحدث عن بعض البرامج التى ربما يكون سمع عنها و لكن لم يسبق للعديد من القراء التعامل معها و منها ArcGIS Engine 9.2 و ArcGIS Engine Runtime 9.2.
ما هو برنامج ArcGIS Engine 9.2 ؟؟
هذا البرنامج يعمل نفس عمل الSDK السابق ذكرها و لكن يقوم بوضع مكتبات و ادوات اكثر داخل لغات البرمجة لكى يستطيع المبرمج ان يصنع برنامج مستقل بذاتة يمكن أستخدامة و العمل علية بعيدا تماما عن ArcGIS Desktop مثلما تم الذكر فى مثال برنامج ادخال بيانات السكان.
و عن طريق هذة الادوات و المكتبات يمكنك أستخدام اى اداة او اداة تحليل موجودة فى الارك لأستخدامها و توظيفها و اخراجها فى برنامج مستقل, و يمكن القول بأنة عبارة عن برنامج تصريح من شركة ESRI للمبرمجين بأخراج و عمل برامج مستقلة بأستخدام المكتبات و الادوات الخاصة بESRI.
يعنى تجاريا ESRI قامت مجتهدة بعمل مكتبات و أدوات خاصة بها و وظفت و صرفت اموال كبيرة جدا لصنع هذة الأشياء بأى حق لك انت يا مبرمج ان تاتى بكل بساطة و تستخدمها و تخرج عن طريقها برنامج مستقل و تبيعة للغير و تكسب منه؟؟؟؟؟ و اين مكسب ESRI من هذا المكسب الذى حصلت عليه بواسطة أدواتهم و مكتباتهم البرمجية؟؟؟؟؟؟؟ لذلك تبيع برنامج ArcGIS Engine للمبرمجين و الشركات و تقول لهم بهذا البيع الأن لك الحق بأستخدامها لقد حصلنا على حقنا ïپٹ.
لا يعتقد البعض منكم ان هذا طمع من شركة ESRI هذا حقها بنسبة 100% و لا يقبل شرع ولا قانون بغير ذلك.
نرجع لبرمجتنا ïپٹ طبعا بعد عمل هذا البرنامج المستقل لكى يعمل بشكل صحيح لابد له من أرضية يستطيع العمل عليها اى بمعنى ادق اذا صنعت لك برنامج مستقل و اعطيتة لك و أخذتة انت على جهازك و بدات العمل علية من اين سيفهم جهازك عند العمل عليه ما هى ادوات ArcGIS , اذا كان البرنامج فية اداة لعد الطبقات Layers مثلاُ من اين سيفهم جهازك الجاهل باعمال الGIS بمعنى كلمة Layers من الذى سيبلغة بمعناها و معنى جميع الأشياء الاخرى الخاصة ببرنامج الArc ؟؟؟؟
هنا ياتى دور ال ArcGIS Engine Runtime 9.2 و هذا واضح من معناه انه وقت عمل البرنامج الذى تم صناعتة بالArcEngine سيعمل ال Runtime على ان يفهم و يبلغ الحاسب بمعنى كل الأشياء التى يقوم بها البرنامج الذى قمت بتصميمة و اعطاءة لك.
ملحوظة : يمكن ان يعمل الArcGIS Dektop 9.2 أو الArcGIS Engine 9.2 نفس عمل الArcGIS Engine Runtime 9.2 .
سأصيغ لك الفكرة بشكل بسيط حيث انى اشعر ان البعض سيحدث عنده دمج فى الافكار و البرامج...انت مدرب فنى لفريق كرة قدم و لديك الفريق كامل و مجهز و لقد صممت خطة ليلعب بها فريقك امام فريق أخر و بالطبع سيتم لعب هذة المباراة فى مكان واحد فقط الا وهو المستطيل الأخضر للملعب داخل الأستاد و امام الجماهير و لا يمكن ان تلعب فى اى مكان أخر.
المدير الفنى: انت (ميرمج نظم المعلومات الجغرافية)
فريقك: هم البرامج التى تتيح لك وضع الخطة (لغة برمجة – برنامج برمجى – ArcGIS Engine 9.2 )
الخطة : هى تفكيرك فى صناعة البرنامج و أخراجة.
الجماهير : هم المستخدمين للبرنامج الذى صنعته.
الأستاد : هو الجهاز الذى سيعمل عليه البرنامج الذى صنعتة.
الملعب او النجيلة الخضراء: هى البرامج التى تتيح لبرنامجك ان ينفذ خطتة و يقوم بوظيفتة و تلك البرامج هى ArcGIS Dektop 9.2 أو ArcGIS Engine 9.2 أوArcGIS Engine Runtime 9.2
و اريد التنويه على ان ESRI لم تغفل حقها ايضا فى ان المستخدمين للبرامج التى قام المبرمج بصناعتها سوف يستخدمون أدوات من صنع ESRI لذلك فبرنامج الRuntime يبيعونة ايضا لضمان حقهم و الكسب المشروع و لضمان عمل البرامج التى تم تصميمها بشكل جيد على أى جهاز يوجد علية الRuntime , بحيث لا يحتاج المستخدم النهائى للبرنامج الذى تم تصميمة لشراء ArcGIS Desktop او ArcGIS Engine و يكتفى بشراء البرنامج الذى تم تصميمة من المبرمجين و شراء الArcEngine Runtime من ESRI.
ثالثاُ: عمل صفحات انترنت بها ادوات من برامج نظم المعلومات الجغرافية
بالنسبة لصفحات الويب هى نفس فكرة التى تقوم عليها فى الجزء السابق و لكن الفرق ان بدلا من ArcGIS Engine هناك برنامج اسمه ArcGIS Server 9.2
هذا البرنامج يقوم بأعطاءك نفس الأدوات و المكتبات التى يتيحها لك ال Engine و لكن يمكنك من أستخدامها فى برمجة صفحات الويب هذا , و أيضا يقوم نفس البرنامج بمهمة أرضية الملعب الذى يعمل علية برنامجك.
من المعروف لمستخدمى الانترنت ان عند الاتصال باى صفحة على الانترنت يقوم ال متصفح Internet Browser بالأتصال بخادم Server هذا الموقع.
فاذا قمت بتصنيع GIS Web Application فلابد عليك من وضعها على سيرفر لكى تتيح لاى مستخدم على الشبكة ان يتصل و يستخدم هذة الصفحة , و بالتالى فلابد من تواجد ال ArcGIS Server على هذا الخادم او الجهاز الServer لكى يقوم بوظيفة الملعب للبرنامج الذى يستخدمة المستخدم على الشبكة.
و من هنا ارجو ان تكون وضحت الفكرة كلها و وضحت فكرة برمجة نظم المعلومات الجغرافية بطرقها و برامجها المختلفة....كما ذكرنا كيف البدأ فى البرمجة و تعلمها لابد على من ذكر كيفية البدأ فى تعلم الربط بينهما فعليا
لابد من تعلم البرمجة حتى تستطيع تعلم الربط بينهما
نصيحة عامة حاول ان تحسن نفسك فى اللغة الأنجليزية اذا كانت غير جيدة لان معظم التعليم المتقدم فى نظم المعلومات الجغرافية و برمجتها باللغة الانجليزية.
أبدأ بالدخول على موقع ESRI و الدخول على هذا اللينك
*
و هذا عبارة عن فيديوهات مجانية من ESRI بها شرح للعديد من أستخدامات البرامج الخاصة بها و منتجاتها المختلفة
قم بالتسجيل فى الموقع حتى تستطيع مشاهدة العروض و كل عرض مدتة ساعة تقريبا
ابدأ بفيديو
Introduction to ArcGIS for Developers
ثم
Introduction to Visual Basic 6
ثم
Learning Visual Basic for Applications for New ArcGIS Developers
ثم
Getting Started with ArcObjects in ArcGIS
ثم
Migrating to VB .NET
ثم
Building Applications with ArcGIS Server Using the Microsoft .NET Framework
ثم
Building Applications with ArcGIS Server Using the Java Platform
ثم
ArcGIS Server Setup and Administration
هذه الفيديوهات ستعطيك فكرة عامة قوية جدا عن برمجة الArc بمختلف أنواعه التى ذكرتها
و بعد ذلك تبدأ التطبيق بقدر المستطاع و ابدأ بال VBA الذى داخل الArc نفسة و ذلك لعلمى بصعوبة الحصول على ArcGIS Enigne 9.2 او ArcGIS Server 9.2
و بالطبع ابحث على الانترنت على اى كتاب او شرح لبرمجة الArcGIS و خاصة الموقع الخاص بمبرمجى ArcGIS EDN (ESRI Developer Network) شبكة مطورى ESRI و به أكواد كثيرة و مساعدات ليس لها حدود فى برمجة الArc .
*
اما أفضل طريقة للوصول لمراحل متقدمة فى برمجة الArc هى عن طريق الكورسات الخاصة بشركة ESRI NEA و التى وكيلها فى مصرهى شركة Quality Standrads و هى كورسات معتمدة من ESRI و هناك حوالى 5 كورسات خاصة ببرمجة الArc و لكن أنصح بأثنين و هم الاهم و الأقوى و هم
Introduction to Programming ArcObjects Using the Microsoft.NET Framework
ندوة الجغرافيا و التخطيط
بعنوان
نماذج تطبيقية لاستخدام نظم المعلومات الجغرافية
من إعداد
أ.د/ بهجت محمد
يمكن تحميله من الرابط التالى
Download
*
مجموعة رائعة من دروس الفيديو التعليمية لشرح برنامج Arc GIS لنظم المعلومات الجغرافية للاستاذ / هشام عزام (بارك الله فيه وجزاه عنا خير الجزاء). المجموعة كاملة موجودة في مجلد علي أحد المواقع المجانية لتخزين الملفات في الرابط:
*
او من هنا
Download
*
*
*
*
*
*
*
*
*
عدد الملفات الاصلية 11 ملف الا أن ملفين منهما بهما مشكلة: الملف رقم 3 لم نستطع تحميله ، والملف رقم 5 بعد تحميله يواجه مشكله عند فك الضغط عنه.
الملفات المرفوعة:
1-navigate : للتعرف علي البرنامج
2-create shp : لانشاء الطبقات
4-define projection : لتحديد نظم الاحداثيات
6-fr txt to shp : لتحويل النص الي طبقة
7- join and related : للربط بين الجداول والطبقات
8-rectivy image : للارجاع الجغرافي لمرئية
9-rectivy map : للارجاع الجغرافي لخريطة
10-geometric network : للشبكات الهندسية
11-topology : لبناء الطبولوجي
_______
أقدم لكم اليوم كورس كامل عن تعاليم برنامج arc gis
وهو تعليم البرنامج من البداية حتي الاحتراف أو بمعني العام تقدر تشتغل بالبرنامج أن أشاء الله
التعريف بالكورس
هي عبارة عن مكتبه كبيرة تشرح برنامج arcgis
تشمل المكتبة فديو و ملفات فلاش وملفات pdf
وهي حصيلة ماتم تجميعة من المنتديات المتخصصة في مجال gis
التي كنت انزلها واتعلم منها ولذلك جمعتها نظرا لقلة دورات gis
احب اوضح ان هذة الفديوهات ليست من عملي لكني جمعتها فقط
واشكر الذي عمل هذة الفديوهات التعليمية
متطلبات الكورس
أن يكون لديك برنامج arc gis
حتي تشاهد الشرح وتبدا بالتفيذ علي البرنامج
احب اولا ان اشكر جميع دكاترة قسم جغرافيا جامعة عين شمس الذين علمونا العلم ولم يبخلو علينا بالشي
اسال الله ان يرفعهم مكانا عاليا
مكتبه ضخمة من أفلام الفيديو وملفات الفلاش التي تشرح برنامج ArcGIS وخصائصه وكيفية التعامل مع أدواته.
هذه الملفات هي حصيلة ما قمت بتحميله من المواقع المتخصصة بالبرنامج والتي منها منتدانا هذا وموقع الجغرافيون العرب وغيرها من المواقع والمنتديات وكذلك ما قدمه العديد من الإخوة الكرام ومنهم الأستاذ رمضان الشافعي، والأستاذ مختار الحسانين وغيرهم من الأساتذة الأفاضل.
والهدف من هذا الموضوع أولا جمع الملفات في موضوع وموقع واحد ليسهل على المدرب ومن هو في حاجة لها الرجوع إليه، وكذلك تجديد وتحديث للروابط السابقة ولتخدم عدد كبير من الأشخاص، وأيضا ترتيبها وتسميتها حسب الأولوية ليتسلسل معها المنتدى في التعلم والتدريب متمنيا أن تحوز على رضاكم واستحسانكم وأن ينتفع بها كل من هو في حاجة لها.
وأترككم مع روابط التحميل لمكتبة الأفلام الخاصة ببرنامج أنظمة المعلومات الجغرافية الشهير ArcGIS علما أن جميع الروابط على موقع 4Shared
تثبيت البرنامج
*
او
*
وهنا ايضا كتاب شرح تنصيب ArcGIS 9.3
How to setup ArcGIS 9.3
*
ArcCatalog-Create New Shapefile
*
او
*
تثبيت التحديث
*
او
*
الجزء المهم للجميع وهو تسجيل الخريطة أو تعريفها داخل البرنامج وهو ما يعرف بي RECTFAY-GEOREFERENCIN
الجزء الأول يشرح عملية تعريف الخريطة باستخدام نقاط مرجعية معلومة تم الحصول عليها من برنامج قوقل إرث
*
او
*
طريقة إنشاء الطبقات المختلفة داخل الارك كاتالوج
ArcCatalog-Create New Shapefile
حمل من هنا
*
او من هنا
*
الملف الثاني من هنا
*
او من هنا
*
شرح بطريقة أخرى ملف مضغوط (يجب تحميل الجزئيين)
*
*
او من هنا برابط واحد
*
Data Freame-Coordinate System
*
او
*
ملف فيديو مضغوط ومقسم على خمسة أجزاء شرح كامل في رسم الطبقات
*
*
*
*
*
او من هنا الكل برابط واحد
*
Digitizing in ArcMap
*
او
*
Digitizing Lines
*
او
*
Digitizing
*
او
*
التعامل مع بيانات وملفات الأوتوكاد DXF داخل برنامج ArcMap ملف فيديو مضغوط ومقسم على ثلاث أجزاء
تحويل الاتوكاد الى convert cad to gis
*
*
*
او من هنا الكل برابط واحد
*
فيديو مشاهده أو تحميل
Extracy by Mask & Clip & Contouring
*
او
*
laying out maps in ArcGIS
*
او
*
License Server Setup
*
او
*
Georeferencing according to google points location
*
او
*
Introduction-Add Data
*
او
*
Introduction-Selection
*
او
*
Label Features
*
او
*
Layers Coordinate System
*
او
*
Layers Properties
*
او
*
Map display area - Layout View
*
او
*
Topology Vedio
*
او
*
تحديد العناصر والطبقات المختلفة SELECT ملف مضغوط مقسم على ثلاث روابط (يجب تحميل كامل الروابط)
*
*
*
او الكل برابط واحد من هنا
*
Table of contents - Data Feame
*
او
*
طرق التعامل مع جداول البيانات Tables ملف كبير ومضغوط مقسم على أربعة أجزء (يجب تحميل جميع الملفات)
*
*
*
*
او الكل برابط واحد من هنا
*
شرحا تفصيلياً عن خطوات التكامل بين برنامج ArcGIS, global mapper, google earth- الجزء 2-1
1
*
2
*
انتاج الخرائط الطبوغرافية من ملفات المسح الجوي مباشرة باستخدام نظم المعلومات الجغرافية
*
تعلم نظم المعلومات الجغرافية GIS وتعلم GPS وهناك المزيد لاحقا