private void TestForm_Load(object sender, EventArgs e) { winformsMap1.MapUnit = GeographyUnit.DecimalDegree; winformsMap1.CurrentExtent = new RectangleShape(-97.7583, 30.2714, -97.7444, 30.2632); winformsMap1.BackgroundOverlay.BackgroundBrush = new GeoSolidBrush(GeoColor.StandardColors.LightGoldenrodYellow); ShapeFileFeatureLayer streetLayer = new ShapeFileFeatureLayer(@"..\..\Data\Streets.shp"); streetLayer.ZoomLevelSet.ZoomLevel01.DefaultLineStyle = LineStyles.LocalRoad1; streetLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; LayerOverlay layerOverlay = new LayerOverlay(); layerOverlay.Layers.Add("StreetLayer", streetLayer); winformsMap1.Overlays.Add("LayerOverlay", layerOverlay); //InMemoryFeature to show the selected feature (the feature clicked on). InMemoryFeatureLayer selectLayer = new InMemoryFeatureLayer(); selectLayer.Open(); selectLayer.Columns.Add(new FeatureSourceColumn("FENAME")); selectLayer.Close(); selectLayer.ZoomLevelSet.ZoomLevel01.DefaultLineStyle = LineStyles.CreateSimpleLineStyle(GeoColor.FromArgb(150, GeoColor.StandardColors.Red), 10, true); selectLayer.ZoomLevelSet.ZoomLevel01.DefaultTextStyle = TextStyles.LocalRoad1("FENAME"); selectLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; LayerOverlay selectOverlay = new LayerOverlay(); selectOverlay.Layers.Add("SelectLayer", selectLayer); winformsMap1.Overlays.Add("SelectOverlay", selectOverlay); winformsMap1.Refresh(); }
private void DrawAndLabelANiceLookingRoad_Load(object sender, EventArgs e) { winformsMap1.MapUnit = GeographyUnit.DecimalDegree; winformsMap1.ThreadingMode = MapThreadingMode.Multithreaded; winformsMap1.BackgroundOverlay.BackgroundBrush = new GeoSolidBrush(GeoColor.FromArgb(255, 233, 232, 214)); ShapeFileFeatureLayer austinStreetsShapeLayer = new ShapeFileFeatureLayer(Samples.RootDirectory + @"Data\austinstreets.shp"); austinStreetsShapeLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; austinStreetsShapeLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(LineStyles.LocalRoad1); ShapeFileFeatureLayer austinStreetsLabelLayer = new ShapeFileFeatureLayer(Samples.RootDirectory + @"Data\austinstreets.shp"); austinStreetsLabelLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(TextStyles.LocalRoad1("FENAME")); austinStreetsLabelLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; LayerOverlay staticOverlay = new LayerOverlay(); staticOverlay.Layers.Add("AustinStreetsShapeLayer", austinStreetsShapeLayer); staticOverlay.Layers.Add("AustinStreetsLabelLayer", austinStreetsLabelLayer); winformsMap1.Overlays.Add(staticOverlay); winformsMap1.CurrentExtent = new RectangleShape(-97.749141617693908, 30.300592918607943, -97.741202279009826, 30.29492809316849); winformsMap1.Refresh(); }
private void radioButton_CheckedChanged(object sender, EventArgs e) { ShapeFileFeatureLayer austinStreetsLayer = ((LayerOverlay)winformsMap1.Overlays["AustinStreetsOverlay"]).Layers["AustinStreetsLayer"] as ShapeFileFeatureLayer; austinStreetsLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Clear(); austinStreetsLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(LineStyles.LocalRoad1); if (rbnSingleStyle.Checked) { austinStreetsLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(TextStyles.LocalRoad1("[FENAME] [FETYPE] [FRADDL]-[TOADDL]")); } else { TextStyle primaryTextStyle = TextStyles.LocalRoad1("[FENAME] [FETYPE]"); primaryTextStyle.XOffsetInPixel = 0; TextStyle secondaryTextStyle = TextStyles.LocalRoad1("[FRADDL]-[TOADDL]"); secondaryTextStyle.YOffsetInPixel = 15; secondaryTextStyle.Font = new GeoFont("Arial", 7); secondaryTextStyle.Mask = AreaStyles.County1; secondaryTextStyle.OverlappingRule = LabelOverlappingRule.AllowOverlapping; secondaryTextStyle.DuplicateRule = LabelDuplicateRule.UnlimitedDuplicateLabels; austinStreetsLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(primaryTextStyle); austinStreetsLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(secondaryTextStyle); } winformsMap1.Refresh(); }
private void DrawCurvedLabels_Load(object sender, EventArgs e) { winformsMap1.MapUnit = GeographyUnit.DecimalDegree; winformsMap1.BackgroundOverlay.BackgroundBrush = new GeoSolidBrush(GeoColor.FromArgb(255, 233, 232, 214)); ShapeFileFeatureLayer austinStreetsShapeLayer = new ShapeFileFeatureLayer(Samples.RootDirectory + @"Data\austinstreets.shp"); austinStreetsShapeLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; austinStreetsShapeLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(LineStyles.LocalRoad1); ShapeFileFeatureLayer austinStreetsLabelLayer = new ShapeFileFeatureLayer(Samples.RootDirectory + @"Data\austinstreets.shp"); austinStreetsLabelLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; TextStyle textStyle = TextStyles.LocalRoad1("FENAME"); textStyle.TextLineSegmentRatio = double.MaxValue; textStyle.SplineType = SplineType.StandardSplining; austinStreetsLabelLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(textStyle); LayerOverlay staticOverlay = new LayerOverlay(); staticOverlay.Layers.Add("AustinStreetsShapeLayer", austinStreetsShapeLayer); staticOverlay.Layers.Add("AustinStreetsLabelLayer", austinStreetsLabelLayer); winformsMap1.Overlays.Add(staticOverlay); winformsMap1.CurrentExtent = new RectangleShape(-97.6881803712033, 30.3177912428115, -97.6723016938352, 30.3064615919325); winformsMap1.Refresh(); }
private void TestForm_Load(object sender, EventArgs e) { winformsMap1.MapUnit = GeographyUnit.DecimalDegree; winformsMap1.BackgroundOverlay.BackgroundBrush = new GeoSolidBrush(GeoColor.FromArgb(255, 233, 232, 214)); ShapeFileFeatureLayer austinStreetsLayer = new ShapeFileFeatureLayer(@"..\..\Data\austinstreets.shp"); austinStreetsLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(LineStyles.LocalRoad1); austinStreetsLayer.ZoomLevelSet.ZoomLevel01.CustomStyles.Add(TextStyles.LocalRoad1("[FENAME] [FETYPE] [FRADDL]-[TOADDL]")); austinStreetsLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; LayerOverlay austinStreetsOverlay = new LayerOverlay(); austinStreetsOverlay.Layers.Add("AustinStreetsLayer", austinStreetsLayer); winformsMap1.Overlays.Add("AustinStreetsOverlay", austinStreetsOverlay); winformsMap1.CurrentExtent = new RectangleShape(-97.7456279238844, 30.3027064993117, -97.7420552214766, 30.3006304695341); winformsMap1.Refresh(); }
void AddLayers() { var colors = new List <Color> { Color.Red, Color.Blue, Color.Yellow, Color.Green, Color.Brown, Color.Orange, Color.Purple }; string[] fnames = GetShapefiles(); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.SetTitle("Select Shape File?"); builder.SetItems(fnames, (sender, args) => { if (fnames[args.Which] != null) { // Toast.MakeText( this , "Choose existing Service picked" + fnames [args.Which], ToastLength.Short).Show(); string layername = fnames[args.Which]; ShapeFileFeatureLayer nLayer = new ShapeFileFeatureLayer(System.IO.Path.Combine(Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDownloads).ToString(), layername), ShapeFileReadWriteMode.ReadOnly); nLayer.RequireIndex = false; nLayer.Open(); if (nLayer.GetShapeFileType() == ShapeFileType.Point) { nLayer.ZoomLevelSet.ZoomLevel01.DefaultPointStyle = PointStyles.CreateSimplePointStyle(PointSymbolType.Circle, GeoColor.StandardColors.Red, GeoColor.StandardColors.Orange, 2); nLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; } else if (nLayer.GetShapeFileType() == ShapeFileType.Polyline) { nLayer.ZoomLevelSet.ZoomLevel01.DefaultLineStyle = LineStyles.CreateSimpleLineStyle(GeoColor.StandardColors.LightPink, 2, GeoColor.StandardColors.Black, 0, false); nLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; } else if (nLayer.GetShapeFileType() == ShapeFileType.Polygon) { nLayer.ZoomLevelSet.ZoomLevel01.DefaultAreaStyle = AreaStyles.CreateSimpleAreaStyle( GeoColor.FromArgb(100, GeoColor.StandardColors.LightYellow), GeoColor.StandardColors.Blue); } var v = nLayer.QueryTools.GetColumns(); string[] fields = new string[v.Count]; //for (int i = 0; i<v.Count ; ++i) int i = 0; foreach (FeatureSourceColumn c in v) { fields[i] = c.ColumnName; i++; } AlertDialog.Builder bld = new AlertDialog.Builder(this); bld.SetTitle("Select labelling field?"); bld.SetItems(fields, (senders, argss) => { if (fields[argss.Which] != null) { string d = fields[argss.Which].ToString(); if (nLayer.GetShapeFileType() == ShapeFileType.Polyline) { nLayer.ZoomLevelSet.ZoomLevel01.DefaultTextStyle = TextStyles.LocalRoad1(fields[argss.Which]); } else { nLayer.ZoomLevelSet.ZoomLevel01.DefaultTextStyle = new TextStyle(fields[argss.Which], new GeoFont("Arail", 9, DrawingFontStyles.Bold), new GeoSolidBrush(GeoColor.SimpleColors.Black)); } nLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20; nLayer.Close(); nLayer.FeatureSource.Projection = proj4; LayerOverlay lOverlay = new LayerOverlay(); lOverlay.Layers.Add(layername, nLayer); androidMap.Overlays.Add(layername, lOverlay); androidMap.Refresh(); } }); bld.Create().Show(); } else if (fnames[args.Which] == null) { Toast.MakeText(this, "Cancel picked", ToastLength.Short).Show(); //How to close dialog Here } }); builder.Create().Show(); }