PDA

View Full Version : حرفه ای: نمایش موقعیت یک نقطه جغرافیایی با داشتن x,y روی نقشه در #C



zarrinnegar
پنج شنبه 03 آذر 1390, 00:26 صبح
من با دستگاه GPS موقعیت جغرافیای یک نقطه رو بدست میارم و یک نقشه GIS دارم و میخوام اون نقطه رو روی نقشه نشون بدم

البته برای نمایش نقشه ابزار های زیادی هست و من از یکی از اونها استفاده میکنم

میخوام ببینم توی #C چطوری نقطه رو نمایش بدم ؟

Amir Oveisi
پنج شنبه 03 آذر 1390, 22:04 عصر
نقشه به چه شکلی میاد تو برنامه شما نشون داده میشه‌؟ عکس؟ کنترل؟ Drawing‌؟

zarrinnegar
پنج شنبه 03 آذر 1390, 22:18 عصر
من یک کنترل دارم که شرکت tatukgis گرفتم
یه ابزار داره که میزاری روی فرم و بعد نقشه gis رو توش load میکنی
با توجه به مختصات جغرافیایی اون رو نشون میده
78356

حالا مشخصات جغرافیایی رو میخوام بهش بدم و یک نقطه روی اون رسم کنه
حالا اگه جزئیات میخوایید باید ایمیل کنم

این هم sample
http://samples.tatukgis.com/XIS9/samples/stateplan/TrackStatePlan.aspx

Amir Oveisi
پنج شنبه 03 آذر 1390, 22:59 عصر
خوب. اگر خود اون کنترل قابلیتی برای این کار نداره (من اظلاعی در موردش ندارم) میتونید یه کارایی بکنید که نقطه رو روی خود کنترل رسم کنید.
با توجه به مقیاس نقشه و بدست آوردن اینکه هر درجه جغرافیایی چند پیکسل روی کنترله میتونید مختصات جغرافیایی رو به مختصاتی روی کنترل تبدیل کنید و در اون نقطه یک دایره کوچیک رسم کنید روی کنترل.

zarrinnegar
پنج شنبه 03 آذر 1390, 23:24 عصر
خوب. اگر خود اون کنترل قابلیتی برای این کار نداره (من اظلاعی در موردش ندارم) میتونید یه کارایی بکنید که نقطه رو روی خود کنترل رسم کنید.
با توجه به مقیاس نقشه و بدست آوردن اینکه هر درجه جغرافیایی چند پیکسل روی کنترله میتونید مختصات جغرافیایی رو به مختصاتی روی کنترل تبدیل کنید و در اون نقطه یک دایره کوچیک رسم کنید روی کنترل.

چرا قابلیت رو داره
1- به زبان vb هست و تبدیل به #c میکنم کار نمیکنه
2- توی مختصات جغرافیایی ما چند حالت استاندارد داریم درجه - ساعت ودقیقه وثانیه - و عدد
این توی پروژه از عددی استفاده کرده و بعد x,y رو اومده نمایش داده ولی من میخوام x,y بهش بدم رسم کنه

بعدش هم چون این کنترل حالت زوم داره و میشه تصویر رو جابجا کرد نمیشه همین طوری یک دایره کشید
برای اینکه میخوام مختصات مثلا 1000 نقطه رو تو دیتابیس نگه دارم بعد هر جای نقشه که زوم میشه نقاط همون جارو نشون بدم و بعد اگه کاربر تصویر رو درگ کرد و جابجا کرد نقاط هم باهاش جابجا شن

اگه فقط کسی بتونه این کد رو به #C بنویسه و یا بگه که بجای اون اعداد بطور مثال 42215689و912365894
ما اینطوری عدد رو بدبم و رسم کنه 53.1212 و 42.1256
به اصطلاح lattetude,longitude رو بدیم رسم کنه مشکل بزرگی حل میشه

همه جا سر زدم ولی هیچ کس کار نکرده

Amir Oveisi
پنج شنبه 03 آذر 1390, 23:56 عصر
اعداد اولی که نوشتید چی هستن؟

zarrinnegar
جمعه 04 آذر 1390, 00:19 صبح
اعداد اولی که نوشتید چی هستن؟

ببینید مثلا مختصات جغرافیایی برج میلاد با Googlemap که نگاه میکنید این اعداده

‏۳۱٫۳۵″ ۲۲′ ۵۱°شرقی ‏۴۰٫۸″ ۴۴′ ۳۵°شمالی (http://toolserver.org/~geohack/geohack.php?pagename=%D8%A8%D8%B1%D8%AC_%D9%85%DB% 8C%D9%84%D8%A7%D8%AF&language=fa&params=35_44_40.8_N_51_22_31.35_E_region:IR)
این بصورت دقیقه درجه و ثانیه است یعنی Longitude , Latitude
حالا این اعداد در سیستم های مختلف جغرافیایی اعداد دیگه ای میشن
مثلا این عدد در سیستم wgs84 میشه
533931.75861 ,3955669.12671
یعنی UTM
برننامه های مختلفی هستن که Longitude , Latitude رو به انواع دیگه از نوع UTM تبدیل میکنن مثل

78358



ولی من دنبال فرمولش هستم که خودم با #C تبدیل کنم

Amir Oveisi
جمعه 04 آذر 1390, 00:23 صبح
لطفا دقیقا ذکر کنید که چه فرمتی رو به چه فرمتی میخواید تبدیل کنید

zarrinnegar
جمعه 04 آذر 1390, 00:48 صبح
برننامه های مختلفی هستن که Longitude , Latitude رو به انواع دیگه از نوع UTM تبدیل میکنن مثل

ولی من دنبال فرمولش هستم که خودم با #C تبدیل کنم

این جا گفتم که چی میخوام

lat-long به UTM و بالعکس

در ضمن میخواستم ببینم کسی تا حالا برای GIS برنامه نویسی کرده یا نه چون تجربیات همچین شخصی خیلی مفیده

ehsan2589040
یک شنبه 25 فروردین 1392, 00:27 صبح
سلام
می تونی برنامه تو برام بفرسی
برای خودم می خوام
اگه تونستم مشکلتم رو حل می کنم
برام پیام بذار