Rowdy's bytes

A programmer is a machine that turns coffee into code
05 Nov 2012
by Rowdy

Adding a map overlay to your Windows Phone Application

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.

Als eerste dienen we een referentie toe te voegen naar de Bing maps

Microsoft.Phone.Controls.Maps

 

De XAML is pretty straight-forward. Je geeft je API key op, een zoomlevel en een locatie waar je de map op gecentreerd wilt zien.

<!-- 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>

Verder de code behind om de tiles aan de het mapelement toe te voegen. Je geeft tevens een gebied op waar we de tiles willen laten zien. Het is namelijk onzin om te pogen op tiles op te halen voor een locatie waar we geen tiles voor hebben.

// De LocationRectTileSource waarin we willen dat de tilelayers geladen worden (om layers voor bijvoorbeeld Amsterdam te laden zou onzin zijn)
// Het Uriformat specificeert 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);

 

Zomerparkfeest App v1.1

Gisteren een mailtje van AppHub in m’n mailbox; de update van mijn onofficële Zomerparkfeest App is gecertificeerd… Binnen nu en 24 tot 48 uur zou hij op alle Markets beschikbaar moeten zijn. Laten we hopen dat het een beetje op schiet, dus dat het voor vanavond 19.30 uur is; de opening van het ZPF.

Deze update op tijd aangeboden krijgen was ook nog lastig; men had mijn eerste update gecancelled. Dat verzoek had ik idd afgelopen zaterdag gedaan zodat ik update met meer functionaliteit kon doorzetten. Maar dan werd ie afgelopen maandag pas gecancelled, dat was lastig om hem dan nog op tijd gecertificeerd te krijgen. However, all is well. Laten we eens zien wat we in deze update hebben.

Read more

Zomerparkfeest App

Het Zomerparkfeest, een van de mooiste feestjes in mijn voortuin, het Julianapark in Venlo. Dit jaar van donderdag 2 t/m zondag 5 augustus. 4 dagen vol muziek, dans, cultuur en andere interessante projecten. En het is gratis, dus da’s helemaal mooi!

Apps zijn leuk, vaak handig. Mooi ook soms. WP7 heeft zeker de mogelijkheden om mooie apps te maken. Aangezien het Zomerparkfeest slechts apps uitbrengt voor iOS en Android heb ik dus deze app ontwikkeld voor WP7.

Direct downloaden? Klik hier… Meer info? Even verder lezen!

Welke functionaliteit kun je onder andere verwachten? Read more

© Copyright 1999-2016 Rowdy.nl | Kamer van Koophandel 58560874