在三维场景中加载shp(skyline)

在场景中添加shp图层有两个方法:

(1)直接调用Command命令,SGWorld.Command.Execute(1013,5);这样的话,和在场景中的工程树中右键添加特征图层的过程是一样的。有个问题时,当TE Pro是客户端版的话,会导致这个功能没法实现,许可权限不够。类似添加其他数据参考下面的命令:

(2)通过CreateFeatureLayer()方法添加,代码如下:

//加载shp文件
function AddShp() {
    SGWorld = TE.ISGWorld61();
    groupItem = SGWorld.ProjectTree.FindItem(pconfig.GroupName);//创建父组,
    var conn="FileName="+shpFilePath+";TEPlugName=OGR;"  //创建连接字符串
    SGWorld.Creator.CreateFeatureLayer('NewShp', conn, groupItem);   //在父组下面加载shp
    //获取新加载的shp
    var itemID = SGWorld.ProjectTree.FindItem(pconfig.GroupName + "\NewShp"); 
    mlayer = SGWorld.ProjectTree.GetLayer(itemID);

    mlayer.Refresh();//得刷新下才会出现新加载的shp
    SGWorld.Navigate.FlyTo(itemID); //飞到新添加的shp,可查看是否加载了
}

  

原文地址:https://www.cnblogs.com/pengjw/p/3483232.html