从MapX到MapXtreme2004[2]-图层操作

Mapx中基本的图层操作还是比较简单的,集中在对Layers和Layer的处理上,对别的没有太多要求。

  在MapXtreme中,要完成类似功能,发生了一点变化,如下:
  1、图层的显示
  在MapXtreme中,图层的显示控制发生了奇怪的变化,有一个IsVisible属性,但它是只读的,不能通过它来改变图层的显示。要控制图层的显示与隐藏,可以通过设置Layer.Enable来控制。
  2、图层的动态添加
  代码如下:
        Catalog _catalog=MapInfo.Engine.Session.Current.Catalog;
        MapInfo.Data.Table _tempTable=null;
        Map _map=MapControl1.Map ;   

        TableInfo ti = TableInfoFactory.CreateTemp("临时"); 
        _tempTable = _catalog.CreateTable(ti);
        _map.Layers.Insert(0, new FeatureLayer(_tempTable));

  可以看出:加图层实际就是加表;Catalog对象统管表的加载以及列举;
  查帮助还可以了解:表信息其实还可以包括表的类型和坐标系。类型是指原生表,文本,access ...
  上面的ti也可以这样取得,但是,上面的表默认是MeMTab,应该是内存中的吧。

        CoordSys cs=_map.GetDisplayCoordSys();
        TableInfo ti = TableInfoFactory.CreateTemp("临时",MapInfo.Data.TableType.Native,cs);

  以上只能算是学习心得,肯定错误百出,但总比什么都没有强,至少能够提供一个思路。至于表如何保存,Mapx中的动画层和标签层在MapxTreme中如何对应,因为暂时不急用,先放着。

        4、根据名称打开图层
            MapInfo.Engine.Session.Current.Catalog.GetTable(TableName)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值