在三维场景中加载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,可查看是否加载了 }