/// <summary> /// 通过用Gp实现通视分析 /// </summary> /// <param name="observer_features"></param> /// <param name="in_raster"></param> /// <param name="out_raster"></param> /// <param name="curvature"></param> /// <param name="zFactor"></param> public void ViewshedAnalyseGP(string observer_features, string in_raster, string out_raster, string curvature, double zFactor) // 张琪 20110611 { Viewshed pViewshed = new Viewshed(); pViewshed.in_observer_features = observer_features; pViewshed.in_raster = in_raster; pViewshed.out_raster = out_raster; pViewshed.z_factor = zFactor; pViewshed.curvature_correction = curvature; Geoprocessor gp = new Geoprocessor(); gp.OverwriteOutput = true; if (!RunTool(gp, pViewshed)) { return; } return; }
private async Task <MapPoint> ShowViewshed(MapView mapView, int featureId) { MapPoint searchPoint = ((RealtimeFeature)_rtCursor.Current).GetShape() as MapPoint; searchPoint = GeometryEngine.Instance.Project(searchPoint, mapView.Map.SpatialReference) as MapPoint; var observer = new Camera(searchPoint.X, searchPoint.Y, 200, -22, searchPoint.SpatialReference, CameraViewpoint.LookAt); observer.ViewportHeight = 84; observer.ViewportWidth = 134; observer.Z = 100; observer.Pitch = 0; var viewshedAnalysis = new Viewshed(observer, 45, 60, 10, 600); if (_vwDict[featureId] != null) { await mapView.RemoveExploratoryAnalysis(_vwDict[featureId]); } _vwDict[featureId] = viewshedAnalysis; await mapView.AddExploratoryAnalysis(viewshedAnalysis); return(searchPoint); }