اعلانات انجمن


ارسال پاسخ 
 
امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
سوال در رابطه با MapControl در ArcEngine
نویسنده پیام
jafari_GIS آفلاین
کاربر عادی
*

ارسال‌ها: 72
تاریخ عضویت: اسف ۱۳۹۲
اعتبار: 16
ارسال: #1
سوال در رابطه با MapControl در ArcEngine

با سلام
در ArcEngine  برای دسترسی به map در فرمی به غیر از MainForm (که در MainForm از طریق MapControl میشه به map رسید و از لایه ها استفاده کرد) چه کار باید کرد و از چه کلاسی و اینترفیسی برای رسیدن به Map موجود در Mapcontrol باید استفاده کرد؟ برای روشن شدن سوالم به طور مثال در کاستومایز کردن ArcMap برای رسیدن به کلاس Map از این کد میشه استفاده کرد:
IMxDocument pMXDocument = (IMxDocument)ArcMap.Application.Document
            IMap pMap = pMXDocument.FocusMap
حالا در ArcEngine  که ArcMapUI و کلاس MXDocument قابل استفاده نیست چه باید کرد؟ و چه طور در فرمی که قرار است از طریق یکی از کنترل های فرم اصلی باز بشه، می شه به Map رسید؟
۱۶-۱-۱۳۹۴ ۰۳:۳۰ عصر
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
علوی آفلاین
ناظر انجمن
******

ارسال‌ها: 542
تاریخ عضویت: مرد ۱۳۹۲
اعتبار: 258
ارسال: #2
RE: سوال در رابطه با MapControl در ArcEngine

ساده است:
Mainform.MapControl.Map

دو اصل اساسی انجمن:
1- احترام به یکدیگر
2- درصورت نقل مطلب، ذکر منبع و لینک به اصل مطلب

برای تقدیر و تشکر از دکمه [تصویر:  postbit_reputation.gif] در پایین هر ارسال استفاده کنید.
۱۹-۱-۱۳۹۴ ۰۶:۳۰ عصر
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
jafari_GIS آفلاین
کاربر عادی
*

ارسال‌ها: 72
تاریخ عضویت: اسف ۱۳۹۲
اعتبار: 16
ارسال: #3
RE: سوال در رابطه با MapControl در ArcEngine

فرم فرعی که مپ کنترل موجود در فرم اصلی رو نمی شناسه. مپ کنترل یک متغیر هست نه پروپرتی.
(آخرین ویرایش در این ارسال: ۱۹-۱-۱۳۹۴ ۱۰:۳۴ عصر، توسط jafari_GIS.)
۱۹-۱-۱۳۹۴ ۱۰:۳۳ عصر
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
javadadabi آفلاین
کاربر عادی
*

ارسال‌ها: 96
تاریخ عضویت: خرد ۱۳۹۳
اعتبار: 38
ارسال: #4
RE: سوال در رابطه با MapControl در ArcEngine

سلام


کد:
Dim mapcontrol As IMapControl3 = TryCast(axmap_control.Object, IMapControl3) Dim map As IMap = mapcontrol.Map

 

سلام


کد:
Dim mapcontrol As IMapControl3 = TryCast(axmap_control.Object, IMapControl3)
Dim map As IMap = mapcontrol.Map

 
(آخرین ویرایش در این ارسال: ۲۰-۱-۱۳۹۴ ۰۵:۰۹ عصر، توسط javadadabi.)
۲۰-۱-۱۳۹۴ ۰۵:۰۸ عصر
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
 اعتبار داده شده توسط : علوی(+1)
علوی آفلاین
ناظر انجمن
******

ارسال‌ها: 542
تاریخ عضویت: مرد ۱۳۹۲
اعتبار: 258
ارسال: #5
RE: سوال در رابطه با MapControl در ArcEngine

باعث شدید منم شک کنم.
این عین کدی هست که توی Form load یکی از فرم ها در VB.NET قرار دادم.


کد:
pMap = frmMain.MapControl.Map


نهایتش اینه که نیاز هست Cast کنید. توی C# این مورد اجباریه اما توی VB.NET بسته به تنظیمات میشه حتی این مرحله رو هم حذف کرد.
 
هرچند از جهت منطق برنامه نویسی، درست تر اینه که یک پروپرتی در فرم اصلی برای این کار ایجاد بشه و دسترسی ها از طریق پروپرتی انجام بشه.

دو اصل اساسی انجمن:
1- احترام به یکدیگر
2- درصورت نقل مطلب، ذکر منبع و لینک به اصل مطلب

برای تقدیر و تشکر از دکمه [تصویر:  postbit_reputation.gif] در پایین هر ارسال استفاده کنید.
(آخرین ویرایش در این ارسال: ۲۰-۱-۱۳۹۴ ۰۷:۵۸ عصر، توسط علوی.)
۲۰-۱-۱۳۹۴ ۰۶:۵۳ عصر
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
ارسال پاسخ 




کاربرانِ درحال بازدید از این موضوع: 1 مهمان