أكثر

معالجة جغرافية لخدمة الخرائط؟

معالجة جغرافية لخدمة الخرائط؟


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

تم بالفعل تحضير البيانات التي أعمل معها كخدمات خرائط طبقة متعددة الأضلاع أو طبقة نقطية. هل يمكنني سحب البيانات مباشرة من هذه الخدمات للمعالجة؟


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

أولاً ، ستحتاج أداتك إلى استخدام ملف خيط كمدخل. ستمثل هذه السلسلة عنوان URL لخدمة الميزة مع معلمات الاستعلام. على سبيل المثال ، سيكون هذا هو رمز البدء لأداتك:

inFS = arcpy.GetParameterAsText (0) featureset = arcpy.FeatureSet () featureset.load (fs) cnt = arcpy.GetCount_management (featureset) # أو أي أداة / سير عمل

سيمرر تطبيق الويب عنوان URL مثل: (لاحظ أن الاستعلام هنا هو 1 = 1 و f = json مهم.)

http: // server: 6080 / arcgis / rest / services / fs1 / FeatureServer / 0 / query؟ حيث = 1٪ 3D1 & returnGeometry = true & returnIdsOnly = false & returnCountOnly = false & f = json

الجزء الأخير هو تطبيق الويب نفسه. مع وجود المعلمة المسماة "inputFS" داخل الأداة نفسها ، هذا هو الكود المستخدم في JS:

vals = "url إلى fs… رمز JS يعين هذا" gp = معالج جغرافي جديد (gpServiceUrl) ؛ var params = {"inputFS": vals} ؛ console.log (المعلمات) ؛ gp.submitJob (params، gpJobComplete، gpJobStatus، gpJobFailed) ؛

فيما يتعلق بطبقة RASTER ... هناك أداة تحتاجها لاستخدام أداة Make Image Service Layer ، لكن لاحظ أن هذه الأداة تعمل فقط خارج ImageService ، وليس خدمة خرائط ذات خطوط نقطية. سيكون معلمة الإدخال مرة أخرى سلسلة (عنوان URL نفسه).

أثناء العمل من خلال هذا ، ضع في اعتبارك أن خدمة الخريطة / الميزة وخدمة GP لا علاقة لهما ببعضهما البعض. نعم تريدهم أن يستهلكوا نفس البيانات الأساسية. لكن كل خدمة في حد ذاتها ليس لديها معرفة بالآخر. إنه تطبيق الويب الذي يجمع هاتين الخدمتين معًا عن طريق تمرير عنوان URL طالما تم إعداد خدمة GP بشكل صحيح لاستهلاكها.


شاهد الفيديو: خدمة خرائط جوجل