Thanks! Wat betreft melden aan het ZPF, zie ook
mijn vorige post, het ZPF is er een van. Vreemd eige
nlijk, ze lopen meestal voorop qua acts (Vaak staan acts eerder op het ZPF dan op alle grote podia in
NL) maar de marketing/app afdeling is blijkbaar een stukkie conservatiever.
Maar, onze
zwahiel zit ook in de organisatie en die heeft zich net een mooie Windows Phone aangeschaft, dus hopelijk dat die intern wat los gaat schoppen. Hoop alleen dat ze me dit keer wel contacten, jaartje of drie teru stuurde ik een
mobiele versie van de timetable (webgebaseerd) naar ze door en daar kwam geen reactie op. Het werd wel klakkeloos gekopieerd, met een paar improvements, maar ach.
Wat betreft die maps, ik was bezig met een artikel op m'n blog daarover, want eige
nlijk is het erg simpel. Het is echter wel gebaseerd op de (deprecated) Bing Maps Api, dus ik moet 'm nog omschrijven. (en in deze versie de kaart vernieuwen..

)
In het kort; je maakt met bijvoorbeeld
MapChruncer (
download) je tiles aan en zet die ergens publiekelijk neer.
Ook dien je een
Bing Maps API key aan te vragen.
.
code:
1
| Microsoft.Phone.Controls.Maps |
code:
1
2
3
4
5
6
7
8
9
10
11
| <!-- Center is het Julianapark in Venlo -->
<Grid x:Name="LayoutRoot">
<map:Map Name="mapControl"
HorizontalAlignment="Left"
Margin="0"
Width="480"
Height="800"
CredentialsProvider="BingMapsAPIKey"
Center="51.36835441,6.17482603"
ZoomLevel="17.5"/>
</Grid> |
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| // De LocationRectTileSource waarin we willen dat de tilelayers geladen worden (om layers voor bijvoorbeeld Amsterdam te laden zou onzin zijn)
// Het Uriformat specificeerd waar de tiles staan; de quadkey wordt automatisch vervangen door een nummer en die correspondeerd met de bestandsnamen van de files die MapChruncer uitspuwt
// Als laatste geef je nog de zoomrange op waarvoor je tilelayers gegenereert hebt
var locationRectTileSource = new Microsoft.Phone.Controls.Maps.LocationRectTileSource();
locationRectTileSource.UriFormat = @"http://dev.rowdy.nl/layers/zpf/{quadkey}.png";
locationRectTileSource.BoundingRectangle = new Microsoft.Phone.Controls.Maps.LocationRect(51.36980453, 6.17281437, 51.36698462, 6.17586136);
locationRectTileSource.ZoomRange = new Range<double>(10, 20); ;
// De MapTileLayer, hier voegen we de zojuist gecreeerde LocationRectTileSource toe
// Verder kunnen we nog wat variabelen zetten, pretty straight forward
var mapTileLayer = new Microsoft.Phone.Controls.Maps.MapTileLayer();
mapTileLayer.TileSources.Add(locationRectTileSource);
mapTileLayer.Opacity = .8;
mapTileLayer.Visibility = Visibility.Visible;
// Als laatste voegen we de MapTileLayer toe aan het MapControl
mapControl.Children.Add(mapTileLayer); |