منبع اصلی نوشتار زیر در این لینک قرار دارد

لذت برنامه نویسی: نمایش نقشه در html5

اینم یه تجربه پراکنده دیگه!

من اصلتا وب بلد نیستم. یعنی خیلی کم وب کار کردم و دقیقا هم نمی‌دونم اوضاع از چه قراره. اما توی کارهایی که انجام می‌دم بصورت خیلی محدود نیاز به واسط کاربری تحت وب پیدا می‌کنم و مجبور میشم به این وادی یه سری بزنم. توی آخرین کاری که انجام دادم نیاز بود که یه نقشه رو بصورت داینامیک توی صفحه وب نشون بدم و اون رو آپدیت کنم. روند اینجوری بود که سر زمان‌های خاصی باید رنگ بخش‌های این نقشه رو تغییر می‌دادم و همچنین روش دایره‌هایی می‌کشیدم. بعد از یه تحقیق اولیه به نظرم اوم که استفاده از html5 و بصورت اختصاصی canvas می‌تونه کمکم کنه.

وضعیت من از این قرار بود:

  • یه نقشه به فرمت ArcGIS داشتم که هیچ برنامه‌ای برای بازکردنش نداشتم. اون فرمت شامل یه نوع فایل خاص به نام shapeFile بود که نقشه رو توصیف می‌کرد.
  • من هیچ ایده‌ای نداشتم که کار به چه صورت باید انجام بشه.
  • هیچ تجربه قبلی هم با html5 و بالاخص canvas نداشتم.

با یکی از دوستانم که خیلی بیشتر از من وب بلده و کلا کارش وبه صحبت کردم و پیشنهاد استفاده از canvas از ایشون بود. همچنین یه روز هم اومد و با کمک اون این کار رو به شکل زیر انجام دادیم. البته باید بگم که کل این روش رو از یه بنده‌خدایی که کارش اینه قرض گرفتیم

  • اول shapeFile رو بعد از تحقیقات زیاد با استفاده از نرم‌افزار متن‌باز qGIS تبدیل کردیم به فرمت KML که یه فرمت متن‌باز برای نقشه‌هاست.
  • دوم اینکه با استفاده از jQuery فایل KML رو خونده و parse کردیم.
  • حالا که نقاط نقشه یا بهتره بگم نقاط چند ظلعی‌ها رو بصورت مجزا داشتیم هریک از اونها رو توی html5 کشیدیم و بهش رنگ و فرمت دادیم
  • یه سری هم محاسبه انجام دادم که بتونم عناصر داینامیک رو روی نقشه نشون بدم.

در کل تجربه خیلی جالبی بود و برای منی که کلا از وب سررشته خاصی نداشتم غول مرحله آخر به حساب می‌اومد و از انجامش لذت بردم.

همین!



برچسب ها : , , , ,