private void btnOK_Click(object sender, System.EventArgs e)
        {
            IMapBookmarks pBookmarks = m_pMap as IMapBookmarks;

            if (pBookmarks != null)
            {
                bool flag = false;
                IEnumSpatialBookmark bookmarks = pBookmarks.Bookmarks;
                ISpatialBookmark     pBookmark;
                bookmarks.Reset();
                while ((pBookmark = bookmarks.Next()) != null)
                {
                    if (pBookmark.Name == txtBookmarkName.Text)
                    {
                        break;
                    }
                }
                if (!flag)
                {
                    frmCreateBookmarkView.nIndex = frmCreateBookmarkView.nIndex + 1;
                    pBookmark = new AOIBookmarkClass()
                    {
                        Name     = txtBookmarkName.Text,
                        Location = (m_pMap as IActiveView).Extent
                    };

                    pBookmarks.AddBookmark(pBookmark);
                }
            }
        }
Beispiel #2
0
        public void CreatBookmark(string sBookmarkName)
        {
            bool isExist = cbBookmarkList.Items.Contains(sBookmarkName);

            // 判断书签名是否重复
            if (isExist)
            {
                MessageBox.Show("该书签已存在");
            }
            else
            {
                IAOIBookmark aoiBookmark = new AOIBookmarkClass();
                // 保存书签到本地变量
                if (aoiBookmark != null)
                {
                    aoiBookmark.Location = axMapControl1.ActiveView.Extent;
                    aoiBookmark.Name     = sBookmarkName;
                }
                IMapBookmarks bookmark = axMapControl1.Map as IMapBookmarks;
                // 保存书签到组件的bookmark中
                if (bookmark != null)
                {
                    bookmark.AddBookmark(aoiBookmark);
                }
                // 更新下拉列表
                cbBookmarkList.Items.Add(aoiBookmark.Name);
            }
        }
		public override void OnClick()
		{
			//Get a name for bookmark from the user
			frmBookmark frm = new frmBookmark();
			frm.ShowDialog();
			int check = frm.Check; 
			string sName = "";	
	
			//OK button pressed					
			if (check == 1)
			{
				sName = frm.Bookmark;
			}
			if (sName == "") return;
			

			//Get the focus map 
			IActiveView activeView = (IActiveView) m_HookHelper.FocusMap;

			//Create a new bookmark 
			IAOIBookmark bookmark = new AOIBookmarkClass();
			//Set the location to the current extent of the focus map
			bookmark.Location = activeView.Extent;
			//Set the bookmark name
			bookmark.Name = sName;

			//Get the bookmark collection of the focus map
			IMapBookmarks mapBookmarks = (IMapBookmarks) m_HookHelper.FocusMap;
			//Add the bookmark to the bookmarks collection
			mapBookmarks.AddBookmark(bookmark);
		}
Beispiel #4
0
        private void ToolStripButton2_Click(object sender, EventArgs e)
        {
            AddBookmark frmBookMark = new AddBookmark();

            frmBookMark.ShowDialog();
            string pName = string.Empty;
            int    check = frmBookMark.Check;

            if (check == 1)
            {
                pName = frmBookMark.Bookmark;
            }
            if (string.IsNullOrEmpty(pName))
            {
                return;
            }

            //书签进行重名判断
            IMapBookmarks        mapBookmarks         = axMapControl1.Map as IMapBookmarks;
            IEnumSpatialBookmark enumSpatialBookmarks = mapBookmarks.Bookmarks;

            enumSpatialBookmarks.Reset();
            ISpatialBookmark pSpatialBookmark;

            while ((pSpatialBookmark = enumSpatialBookmarks.Next()) != null)
            {
                if (pName == pSpatialBookmark.Name)
                {
                    DialogResult dr = MessageBox.Show("此书签名已存在!是否替换?", "提示", MessageBoxButtons.YesNoCancel);
                    if (dr == DialogResult.Yes)
                    {
                        mapBookmarks.RemoveBookmark(pSpatialBookmark);
                    }
                    else if (dr == DialogResult.No)
                    {
                        frmBookMark.ShowDialog();
                    }
                    else
                    {
                        return;
                    }
                }
            }

            //获取当前地图的对象
            IActiveView pActiveView = axMapControl1.Map as IActiveView;
            //创建一个新的书签并设置其位置范围为当前视图的范围
            IAOIBookmark pBookmark = new AOIBookmarkClass
            {
                Location = pActiveView.Extent,
                //获得书签名
                Name = pName
            };
            //通过IMapBookmarks接口访问当前地图书签集,添加书签到地图的书签集中
            IMapBookmarks pMapBookmarks = axMapControl1.Map as IMapBookmarks;

            pMapBookmarks.AddBookmark(pBookmark);
        }
Beispiel #5
0
        //添加书签
        private void Button1_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(this.textBox1.Text))
            {
                return;
            }

            //书签进行重名判断
            IMapBookmarks        mapBookmarks         = mainForm.mainform.mainMapControl.Map as IMapBookmarks;
            IEnumSpatialBookmark enumSpatialBookmarks = mapBookmarks.Bookmarks;

            enumSpatialBookmarks.Reset();
            ISpatialBookmark pSpatialBookmark;

            while ((pSpatialBookmark = enumSpatialBookmarks.Next()) != null)
            {
                if (this.textBox1.Text == pSpatialBookmark.Name)
                {
                    DialogResult dr = MessageBox.Show("此书签名已存在!是否替换?", "提示", MessageBoxButtons.YesNo);
                    if (dr == DialogResult.Yes)
                    {
                        mapBookmarks.RemoveBookmark(pSpatialBookmark);
                    }
                    else if (dr == DialogResult.No)
                    {
                        return;
                    }
                }
            }

            //获取当前地图的对象
            IActiveView pActiveView = mainForm.mainform.mainMapControl.Map as IActiveView;
            //创建一个新的书签并设置其位置范围为当前视图的范围
            IAOIBookmark pBookmark = new AOIBookmarkClass();

            pBookmark.Location = pActiveView.Extent;
            //获得书签名
            pBookmark.Name = this.textBox1.Text;
            //通过IMapBookmarks接口访问当前地图书签集,添加书签到地图的书签集中
            IMapBookmarks pMapBookmarks = mainForm.mainform.mainMapControl.Map as IMapBookmarks;

            pMapBookmarks.AddBookmark(pBookmark);
            this.Close();
        }
Beispiel #6
0
        /* Usage: Create a bookmark
         * Input: sBookmarkName = the name of bookmark introducted
         * Output: a spatial reference
         * Author: Ding
         * Time: 2019/03/08
         */
        public void CreateBookmark(string sBookmarkName) //sBookmarkName is the name of bookmark created by user
        {
            //through intersect IAOIBookmark to create a variable, whose type is AOIBookmark, using to save the present scale of map
            IAOIBookmark aoiBookmark = new AOIBookmarkClass();

            if (aoiBookmark != null)
            {
                aoiBookmark.Location = axMapControl1.ActiveView.Extent;
                aoiBookmark.Name     = sBookmarkName;
            }
            //through intersect IAOIBookmark to access present map and add new bookmark to map
            IMapBookmarks bookmarks = axMapControl1.Map as IMapBookmarks;

            if (bookmarks != null)
            {
                bookmarks.AddBookmark(aoiBookmark);
            }
            //add the name of new bookmark into ComboBox, for using the bookmarks later
            cbBookmarkList.Items.Add(aoiBookmark.Name);
        }
Beispiel #7
0
        public void CreateBookmark(string sBookmarkName)
        {
            IAOIBookmark aoiBookmark = new AOIBookmarkClass();

            //
            if (aoiBookmark != null)
            {
                aoiBookmark.Location = axMapControl1.ActiveView.Extent;
                aoiBookmark.Name     = sBookmarkName;
            }

            //add aoibookmark to map
            IMapBookmarks bookmarks = axMapControl1.Map as IMapBookmarks;

            if (bookmarks != null)
            {
                bookmarks.AddBookmark(aoiBookmark);
            }
            //add aoibookmark to the comboxitem
            cbBookmarkList.Items.Add(aoiBookmark.Name);
        }
Beispiel #8
0
        public void CreateBookmark(String bookmarkName)
        {
            //创建菜单项,其text为用户输入的文本框,但它被点击时,
            //地图就会zoom到某个位置
            IAOIBookmark mapBookmark = new AOIBookmarkClass();

            mapBookmark.Name     = bookmarkName;
            mapBookmark.Location = axMapControl1.ActiveView.Extent;

            IMapBookmarks boomarks = axMapControl1.Map as IMapBookmarks;

            boomarks.AddBookmark(mapBookmark);

            ToolStripMenuItem menuItem = new ToolStripMenuItem(bookmarkName);

            menuItem.Click += new EventHandler(menuItem_Click);
            menuItem.Tag    = mapBookmark;

            //被添加到书签菜单里面
            menuBookmarks.DropDownItems.Add(menuItem);
        }
Beispiel #9
0
        //Function: Create bookmarks;
        //Input: sBookmarkName is the name of the input bookmark
        //Output: Space
        //2019/3/8
        public void CreateBookmark(string sBookmarkName) //sBookmarkName is the name of the bookmark
        {
            //aoiBookmark is used to save the map extent
            IAOIBookmark aoiBookmark = new AOIBookmarkClass();

            if (aoiBookmark != null)
            {
                aoiBookmark.Location = axMapControl1.ActiveView.Extent;
                aoiBookmark.Name     = sBookmarkName;
            }

            //Add aoiBookmark to map
            IMapBookmarks bookmarks = axMapControl1.Map as IMapBookmarks;

            if (bookmarks != null)
            {
                bookmarks.AddBookmark(aoiBookmark);
            }

            //Add aoiBookmark to combobox
            cbBookmarkList.Items.Add(sBookmarkName);
        }
Beispiel #10
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            IEnumSpatialBookmark bookmarks = (this.imap_0 as IMapBookmarks).Bookmarks;

            bookmarks.Reset();
            ISpatialBookmark bookmark = bookmarks.Next();

            while (bookmark != null)
            {
                if (bookmark.Name == this.txtBookMarker.Text)
                {
                    break;
                }
                bookmark = bookmarks.Next();
            }
            if (bookmark != null)
            {
                if (MessageBox.Show("书签已存在,是否替换!", "书签", MessageBoxButtons.YesNo, MessageBoxIcon.Question) ==
                    DialogResult.Yes)
                {
                    (bookmark as IAOIBookmark).Location = (this.imap_0 as IActiveView).Extent;
                    base.DialogResult = DialogResult.OK;
                    base.Close();
                }
            }
            else
            {
                nIndex++;
                bookmark = new AOIBookmarkClass
                {
                    Name = this.txtBookMarker.Text
                };
                (bookmark as IAOIBookmark).Location = (this.imap_0 as IActiveView).Extent;
                (this.imap_0 as IMapBookmarks).AddBookmark(bookmark);
                base.DialogResult = DialogResult.OK;
                base.Close();
            }
        }
Beispiel #11
0
        public override void OnClick()
        {
            //Get a name for bookmark from the user
            frmBookmark frm = new frmBookmark();

            frm.ShowDialog();
            int    check = frm.Check;
            string sName = "";

            //OK button pressed
            if (check == 1)
            {
                sName = frm.Bookmark;
            }
            if (sName == "")
            {
                return;
            }


            //Get the focus map
            IActiveView activeView = (IActiveView)m_HookHelper.FocusMap;

            //Create a new bookmark
            IAOIBookmark bookmark = new AOIBookmarkClass();

            //Set the location to the current extent of the focus map
            bookmark.Location = activeView.Extent;
            //Set the bookmark name
            bookmark.Name = sName;

            //Get the bookmark collection of the focus map
            IMapBookmarks mapBookmarks = (IMapBookmarks)m_HookHelper.FocusMap;

            //Add the bookmark to the bookmarks collection
            mapBookmarks.AddBookmark(bookmark);
        }
        public void AddSpatialBookMark(IApplication application)
        {
            IMapDocument mapDoc = application.Document as IMapDocument;
              IMap map = mapDoc.ActiveView.FocusMap;
              IActiveView activeView = map as IActiveView;

              // Create a new bookmark and set its location to the focus map's current extent.
              IAOIBookmark areaOfInterest = new AOIBookmarkClass();
              areaOfInterest.Location = activeView.Extent;

              // Give the bookmark a name.
              areaOfInterest.Name = "Area of Interest Bookmark";

              // Add the bookmark to the map's bookmark collection. This adds the bookmark
              // to the Bookmarks menu, which is accessible from the View menu.
              IMapBookmarks mapBookmarks = map as IMapBookmarks;
              mapBookmarks.AddBookmark(areaOfInterest);
        }
Beispiel #13
0
        // BookMarks
        void bookMarksToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ToolStripMenuItem menuItem = sender as ToolStripMenuItem;
            if (menuItem == null)
                return;
            string name = menuItem.Name;
            switch (name)
            {
                case "createBookMarkToolStripMenuItem":
                    {
                        FormBookmark fbm = new FormBookmark();
                        if (DialogResult.OK == fbm.ShowDialog())
                        {
                            IActiveView activeView = m_MapControl.ActiveView;
                            IAOIBookmark aoibookmark = new AOIBookmarkClass();
                            aoibookmark.Location = activeView.Extent;
                            aoibookmark.Name = fbm.BookMarkName;

                            IMapBookmarks mapBookmarks = m_MapControl.Map as IMapBookmarks;
                            mapBookmarks.AddBookmark(aoibookmark);

                            ToolStripMenuItem newitem = new ToolStripMenuItem();
                            newitem.Name = fbm.BookMarkName;
                            newitem.Text = newitem.Name;
                            newitem.Click += new EventHandler(bookMarksToolStripMenuItem_Click);
                            m_BookmarkMenuItems.Add(newitem);
                            bookMarksToolStripMenuItem.DropDownItems.Add(newitem);
                        }
                    }
                    return;

                default:
                    break;
            }

            foreach (ToolStripMenuItem item in m_BookmarkMenuItems)
            {
                if (item.Name == name)
                {
                    IMapBookmarks mapbks = m_MapControl.Map as IMapBookmarks;
                    IEnumSpatialBookmark enumspbk = mapbks.Bookmarks;
                    enumspbk.Reset();
                    ISpatialBookmark spbk = enumspbk.Next();
                    while (spbk != null)
                    {
                        if (spbk.Name == name)
                        {
                            spbk.ZoomTo(m_MapControl.Map);
                            m_MapControl.ActiveView.Refresh();
                            return;
                        }
                        spbk = enumspbk.Next();
                    }
                }
            }
        }