zoukankan      html  css  js  c++  java
  • SelectByShape

    SelectByShape实现矩形选择要素

    利用SelectByShape方法,实现矩形选择要素,并闪烁、定位。
    代码:
                    //selectbyshape方法
                    IMap pMap = new MapClass();
                    pMap 
    = axMapControl1.Map;
                    IPoint pPt 
    = new PointClass(); ;
                    pPt.PutCoords(e.mapX, e.mapY);

                    IEnvelope pEn 
    = new EnvelopeClass();
                    pEn 
    = axMapControl1.TrackRectangle();

                    pMap.SelectByShape(pEn, 
    nullfalse);//最后一个参数控制是否只选一个
                    axMapControl1.Refresh();

                    IEnumFeature pEnumFeature 
    = pMap.FeatureSelection as IEnumFeature;
                    IFeature pFeature;
                    pFeature 
    = pEnumFeature.Next();
                    
    //选中闪烁,并视图定位
                    while (pFeature != null)
                    
    {
                        Application.DoEvents();
                        pEn.Union(pFeature.Extent);
                        axMapControl1.FlashShape(pFeature.Shape, 
    3500null);
                        pFeature 
    = pEnumFeature.Next();
                    }

                    axMapControl1.ActiveView.Extent 
    = pEn;

    代码放置于MapControl.MouseDown下即可实现

    代码中是将所有Feature.Extent赋给Envelope实现,还可以调用Envelope.Expand来扩大视图范围,从而可以看到选中要素周边。
    此外定位实现方法还可以在选中要素后,调用AE里的controlszoomtoselectedfeature来实现定位。
  • 相关阅读:
    phpcms调用指定文章内容模型的ID
    phpcms V9的各种功能总结
    如何使用ajax与php实现简单的流程管理
    键盘按键和键盘对应代码表
    ajax实现省、市、区、三级联动(例题)
    用ajax做登录与删除
    var_dump、echo、print_r 的区别
    字符串删除重复字符
    树的非递归遍历
    字符串操作_(不使用库函数)
  • 原文地址:https://www.cnblogs.com/zhangjun1130/p/1406258.html
Copyright © 2011-2022 走看看