private void HandleStyleLoaded(MapStyle obj) { var fillExtrusionLayer = new FillExtrusionLayer("3d-buildings", "composite") { SourceLayer = "building", Filter = Expression.Eq(Expression.Get("extrude"), "true"), MinZoom = 10, FillExtrusionColor = Color.LightGray, FillExtrusionHeight = Expression.Interpolate( Expression.Exponential(1f), Expression.Zoom(), Expression.CreateStop(15, (0)), Expression.CreateStop(16, Expression.Get("height")) ), FillExtrusionBase = Expression.Get("min_height"), FillExtrusionOpacity = 0.9f }; //map.Functions.AddLayer(fillExtrusionLayer); map.Functions.AnimateCamera(map.Camera, 1000); iconImageSource = (ImageSource)"RE.png"; map.Functions.AddStyleImage(iconImageSource); featureCollection = new FeatureCollection(symbolLayerIconFeatureList); source = new GeoJsonSource { Id = "feature.memory.src", Data = featureCollection }; map.Functions.AddSource(source); symbolLayer = new SymbolLayer("feature.symbol.layer", source.Id) { IconAllowOverlap = Expression.Literal(true), IconImage = Expression.Literal(iconImageSource.Id), IconOffset = Expression.Literal(new[] { -5, -5 }), IconSize = Expression.Literal(0.7) }; map.Functions.AddLayer(symbolLayer); map.DidTapOnMapCommand = new Command <(LatLng position, Point point)>(HandleMapTapped); }
private void HandleStyleLoaded(MapStyle obj) { map.Functions.AddSource(new VectorSource("population", "mapbox://peterqliu.d0vin3el")); var fillsLayer = new FillLayer("fills", "population") { SourceLayer = ("outgeojson"), Filter = (Expression.All(Expression.Lt(Expression.Get("pkm2"), 300000))), FillColor = Expression.Interpolate( Expression.Exponential(1f), Expression.Get("pkm2"), Expression.CreateStop(0, Expression.Rgb(22, 14, 35)), Expression.CreateStop(14500, Expression.Rgb(0, 97, 127)), Expression.CreateStop(145000, Expression.Rgb(85, 223, 255))) }; map.Functions.AddLayerBelow(fillsLayer, "water"); var fillExtrusionLayer = new FillExtrusionLayer("extrusions", "population") { SourceLayer = ("outgeojson"), Filter = (Expression.All(Expression.Gt(Expression.Get("p"), 1), Expression.Lt(Expression.Get("pkm2"), 300000))), FillExtrusionColor = (Expression.Interpolate( Expression.Exponential(1f), Expression.Get("pkm2"), Expression.CreateStop(0, Expression.Rgb(22, 14, 35)), Expression.CreateStop(14500, Expression.Rgb(0, 97, 127)), Expression.CreateStop(145000, Expression.Rgb(85, 233, 255)))), FillExtrusionBase = (0f), FillExtrusionHeight = (Expression.Interpolate( Expression.Exponential(1f), Expression.Get("pkm2"), Expression.CreateStop(0, 0f), Expression.CreateStop(1450000, 20000f))) }; map.Functions.AddLayerBelow(fillExtrusionLayer, "airport-label"); map.Functions.AnimateCamera(new CameraPosition(map.Center, map.ZoomLevel, map.Pitch, 0), 1000); }
private void HandleStyleLoaded(MapStyle obj) { var fillExtrusionLayer = new FillExtrusionLayer("3d-buildings", "composite") { SourceLayer = "building", Filter = Expression.Eq(Expression.Get("extrude"), "true"), MinZoom = 15, FillExtrusionColor = Color.LightGray, FillExtrusionHeight = Expression.Interpolate( Expression.Exponential(1f), Expression.Zoom(), Expression.CreateStop(15, (0)), Expression.CreateStop(16, Expression.Get("height")) ), FillExtrusionBase = Expression.Get("min_height"), FillExtrusionOpacity = 0.9f }; map.Functions.AddLayer(fillExtrusionLayer); map.Functions.AnimateCamera(map.Camera, 1000); }