/// <summary> /// 加载图层。 /// Add layer /// </summary> private void Load() { try { // 设置网络分析基本环境,这一步骤需要设置 分析权重、节点、弧段标识字段、容限 // Set the basic environment of network analysis, including weight, node, edge, tolerance. TransportationAnalystSetting setting = new TransportationAnalystSetting(); setting.NetworkDataset = m_datasetLine; setting.EdgeIDField = m_edgeID; if (SuperMap.Data.Environment.CurrentCulture != "zh-CN") { setting.EdgeNameField = "roadName_en"; } else { setting.EdgeNameField = "roadName"; } setting.NodeIDField = m_nodeID; setting.Tolerance = 0.01559; WeightFieldInfos weightFieldInfos = new WeightFieldInfos(); WeightFieldInfo weightFieldInfo = new WeightFieldInfo(); weightFieldInfo.FTWeightField = "smLength"; weightFieldInfo.TFWeightField = "smLength"; weightFieldInfo.Name = "length"; weightFieldInfos.Add(weightFieldInfo); setting.WeightFieldInfos = weightFieldInfos; setting.FNodeIDField = "SmFNode"; setting.TNodeIDField = "SmTNode"; // 构造交通网络分析对象,加载环境设置对象 // Build the TransportationAnalyst object , and add environment setting object m_analyst = new TransportationAnalyst(); m_analyst.AnalystSetting = setting; m_analyst.Load(); } catch (Exception ex) { Trace.WriteLine(ex.Message); } }
/// <summary> /// 加载网络分析模型 /// </summary> public void LoadModel() { try { if (!mSceneControl.Scene.Layers.Contains(mStrLayer3DNodeNetwork)) { //Layer3DDataset layerNetNode = mSceneControl.Scene.Layers.Add(mRodeNetWork.ChildDataset, new Layer3DSettingVector(), true); //Layer3DDataset layerNetLine = mSceneControl.Scene.Layers.Add(mRodeNetWork, new Layer3DSettingVector(), true); //layerNetLine.IsSelectable = false; //layerNetNode.IsSelectable = false; } else { mSceneControl.Scene.Layers[mStrLayer3DNodeNetwork].IsVisible = true; mSceneControl.Scene.Layers[mStrLayer3DLineNetwork].IsVisible = true; } WeightFieldInfo weightInfo = new WeightFieldInfo(); weightInfo.Name = "SmLength"; weightInfo.FTWeightField = "SmLength"; weightInfo.TFWeightField = "SmLength"; TransportationAnalystSetting analystSetting = new TransportationAnalystSetting(); analystSetting.NetworkDataset = mRodeNetWork; analystSetting.EdgeIDField = "SmEdgeID"; //analystSetting.NodeIDField = "SmNodeID"; analystSetting.FNodeIDField = "SmFNode"; analystSetting.TNodeIDField = "SmTNode"; analystSetting.WeightFieldInfos.Add(weightInfo); mAnalyst.AnalystSetting = analystSetting; DatasetType ty1 = analystSetting.NetworkDataset.Type; mAnalyst.Load(); } catch (Exception ex) { Trace.WriteLine(ex.Message); } }