/// <summary> /// Adds the fields. /// </summary> private void AddFields() { foreach (var field in this.myMap.Fields) { var connection = new TreeWatchDatabase(); var query = new DBQuery <Field>(connection); query.GetChildren(field); if (field.Blocks.Count != 0) { foreach (var block in field.Blocks) { if (block.BoundingCoordinates.Count != 0 && block.BoundingCoordinates.Count >= 3) { this.Map.AddPolygon(GetPolygon( FieldMapRenderer.ConvertCoordinates(block.BoundingCoordinates), block.TreeType.ColorProp.ToAndroid())); } } } if (field.BoundingCoordinates.Count != 0 && field.BoundingCoordinates.Count >= 3) { this.Map.AddPolygon(GetPolygon( FieldMapRenderer.ConvertCoordinates(field.BoundingCoordinates), this.myMap.OverLayColor.ToAndroid(), this.myMap.BoundaryColor.ToAndroid())); } } }
/// <summary> /// Adds the fields to the map. /// </summary> private void AddFields() { var connection = new TreeWatchDatabase(); foreach (var field in this.myMap.Fields) { var query = new DBQuery <Field>(connection); var blockPolygons = new List <ColorPolygon>(); query.GetChildren(field); if (field.Blocks.Count != 0) { foreach (var block in field.Blocks) { if (block.BoundingCoordinates.Count != 0 && block.BoundingCoordinates.Count >= 3) { var blockPoints = ConvertCoordinates(block.BoundingCoordinates); var blockPolygon = (ColorPolygon)MKPolygon.FromCoordinates(blockPoints); blockPolygon.FillColor = block.TreeType.ColorProp.ToCGColor(); blockPolygons.Add(blockPolygon); } } var blockMultiPolygon = new MultiPolygon(blockPolygons); this.mapView.AddOverlay(blockMultiPolygon); } if (field.BoundingCoordinates.Count != 0 && field.BoundingCoordinates.Count >= 3) { var points = ConvertCoordinates(field.BoundingCoordinates); var polygon = MKPolygon.FromCoordinates(points); polygon.Title = "Field"; this.mapView.AddOverlay(polygon); } } var query2 = new DBQuery <HeatMap>(connection); var heatmaps = query2.GetAllWithChildren(); var heatmap = heatmaps[0]; this.AddHeatMap(heatmap.Points); }