首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 高分请教!c#+ae92 ,,已经获得一个要素的坐标,请问如何在MAPCONTROL上在该坐标处查一个小旗帜(BMP)或者显示一个PANEL?
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-11-07 09:51:22 楼主
    c#+ae92 ,,已经获得一个要素的坐标,请问如何在MAPCONTROL上在该坐标处查一个小旗帜(BMP)或者显示一个PANEL?
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-11-07 10:52:591楼 得分:0
    那目标位置处添加一个shape行不行
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-11-09 22:56:212楼 得分:0
    IPictureElement pPictureElement = new BmpPictureElementClass();
                            string pPicturePath = Application.StartupPath + "\\ESRI_LOGO.bmp";
                            pPictureElement.ImportPictureFromFile(pPicturePath);
                            pPictureElement.SavePictureInDocument = true;
                            pPictureElement.MaintainAspectRatio = true;
                            #region 图形缩放
                            IEnvelope pEnvelope = new EnvelopeClass();
                            pEnvelope = this.axMapControl1.Extent;
                            //pEnvelope.PutCoords(1, 1, 2, 2);//location on the layout for the element图片尺寸
                            pEnvelope.Expand(0.1, 0.1, true);          //原图片缩小比例
                            //double dEnvAspRatio = pEnvelope.Width / pEnvelope.Height;//长宽比
                            //if (pPictureElement.PictureAspectRatio > dEnvAspRatio)//缩放
                            //{
                            //    pEnvelope.Expand(pPictureElement.PictureAspectRatio / dEnvAspRatio, 1, true);
                            //}
                            //else
                            //{
                            //    pEnvelope.Expand(1, dEnvAspRatio / pPictureElement.PictureAspectRatio, true);
                            //}
                            #endregion
                            IElement pElement;
                            pElement = (IElement)pPictureElement;
                            pElement.Geometry = dPoint as IGeometry;
                            axMapControl1.ActiveView.GraphicsContainer.AddElement(pElement, 0);//Add the element to the graphics container将元素添加到MapPageLayout中
                            axMapControl1.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGraphics, null, null);//局部刷新Refresh the graphics             
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-11-09 22:57:303楼 得分:0
    可惜插入的图片步伐跟随MAPCONTROL缩放!
    及下列代码无效
    //pEnvelope.PutCoords(1, 1, 2, 2);//location on the layout for the element图片尺寸
                            pEnvelope.Expand(0.1, 0.1, true);          //原图片缩小比例
                            //double dEnvAspRatio = pEnvelope.Width / pEnvelope.Height;//长宽比
                            //if (pPictureElement.PictureAspectRatio > dEnvAspRatio)//缩放
                            //{
                            //    pEnvelope.Expand(pPictureElement.PictureAspectRatio / dEnvAspRatio, 1, true);
                            //}
                            //else
                            //{
                            //    pEnvelope.Expand(1, dEnvAspRatio / pPictureElement.PictureAspectRatio, true);
                            //}
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2007-11-09 22:58:074楼 得分:0
    方法2:

                            IPictureMarkerSymbol picMSymbol = new PictureMarkerSymbolClass();
                            picMSymbol.Size = 10;                                                  //图片大小
                            string pPicturePath = Application.StartupPath + "\\TrebleClef.bmp";    //图片位置和文件名
                            picMSymbol.CreateMarkerSymbolFromFile(esriIPictureType.esriIPictureBitmap, pPicturePath);  //获取图片内容
                            picMSymbol.BitmapTransparencyColor = pColor02;
                            IMarkerElement myMElement = new MarkerElementClass();
                            myMElement.Symbol = picMSymbol as IMarkerSymbol;
                            IElement myElement = myMElement as IElement;
                            myElement.Geometry = dPoint;                                    //摆放地点
                            IGraphicsContainer myGContainer = axMapControl1.ActiveView.GraphicsContainer;
                            myGContainer.AddElement(myElement, 0);
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-01 10:03:225楼 得分:0
    关注 接分
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    世纪乐知(北京)网络技术有限公司 版权所有 京 ICP 证 020026 号
    Copyright © 2000-2007, CSDN.NET, All Rights Reserved