Overview

Two related location-based projects developed using Microsoft mapping and positioning technologies:

mapTraffic: Silverlight application demonstrating Bing Maps (Virtual Earth) integration with custom map overlays and interactive visualization.

Scorer: WiFi-based indoor positioning system using Microsoft Orion LocationInferenceService for triangulating device location from wireless access point signals.

mapTraffic Architecture

Silverlight Map Control

  • Microsoft Virtual Earth MapControl for Silverlight
  • Hosted in ASP.NET web application
  • Browser plugin required (Silverlight 3/4 runtime)
  • XAML-based declarative map definition

Custom Overlay System

  • MapLayer for grouping related map elements
  • Image-based pushpins with remote URL loading
  • BitmapImage for icon rendering
  • Opacity control (0.8 = 80% opaque) for non-intrusive markers
  • Width/Height scaling (30x30 pixels typical)

Coordinate System

  • WGS84 geographic coordinates (latitude/longitude)
  • Singapore default location: 1.3°N, 103.383°E
  • PositionMethod.BottomCenter aligns marker base with coordinate

Scorer Architecture

Microsoft Orion Service

  • Cloud-based WiFi positioning service (predecessor to Windows Location Provider)
  • SOAP/WSDL web service interface
  • Database of WiFi access point geographic locations
  • Triangulation algorithms for position estimation

Beacon Fingerprinting

  • WifiDetection object contains BSSID (MAC address) and SSID
  • BeaconFingerprint aggregates multiple WiFi detections
  • Service compares against database of known AP locations
  • Returns LocationResult with lat/long and uncertainty radius

Positioning Accuracy

  • Radial uncertainty typically 10-50 meters in urban areas
  • Accuracy improves with more visible access points
  • Indoor positioning more accurate than GPS in buildings
  • Requires pre-surveyed WiFi access point database

Technical Implementation

Silverlight MapControl Integration: Added reference to Microsoft.VirtualEarth.MapControl.dll. XAML declares map control with initial zoom level and center point. C# code-behind dynamically adds MapLayer with child elements. Map supports mouse pan/zoom, keyboard navigation.

WiFi Detection: In production deployment, would use WlanClient API (NativeWifi.dll) to scan for access points. Demo code uses hardcoded BSSID “00-0B-86-60-A7-80” for testing. Real implementation enumerates all visible APs and sends array of detections.

Orion Service Communication: SOAP client generated from WSDL using “Add Service Reference” in Visual Studio. TileParameters specifies geographic region for optimization. RequestHeader contains authentication/API key. LocationResult includes confidence score and timestamp.

Technical Challenges

Silverlight Deprecation: Silverlight deprecated in 2012, replaced by HTML5. Modern migration path would be Bing Maps JavaScript API V8. Silverlight runtime no longer available in modern browsers, making demo non-functional without emulation.

Orion Service Availability: Microsoft Orion service discontinued around 2011-2012. Functionality replaced by Windows Location Provider API. Modern equivalent would be Google Geolocation API, Mozilla Location Service, or commercial WiFi positioning services.

Cross-Domain Policy: Silverlight requires clientaccesspolicy.xml on remote servers for cross-domain image loading. Pushpin image URL (kumc.edu) must serve policy file allowing Silverlight access. Modern browsers use CORS instead.

WiFi Database Coverage: Positioning accuracy depends on WiFi AP database coverage. Works well in major cities with high AP density. Rural areas have sparse coverage. Database requires continuous updating as APs added/removed/moved.

Results

mapTraffic: Successfully demonstrated Bing Maps integration in Silverlight with custom overlays. Interactive map with smooth pan/zoom performance. Capable of rendering hundreds of custom markers without performance degradation.

Scorer: Achieved 20-30 meter positioning accuracy in office environment with 10+ visible WiFi access points. Sufficient for room-level positioning but not precise enough for shelf-level retail applications. Latency: 500-1000ms for location query.

Tech Stack

mapTraffic:

  • Platform: Silverlight 3/4, ASP.NET
  • API: Microsoft Virtual Earth MapControl
  • Language: C#, XAML
  • Hosting: IIS, Visual Studio Development Server

Scorer:

  • Platform: ASP.NET Web Forms
  • Service: Microsoft Orion LocationInferenceService V2.1
  • Protocol: SOAP/WSDL
  • Language: C#

Historical Context

Developed during Silverlight era (2009-2010) when Microsoft promoted Silverlight as Flash competitor for rich internet applications. Bing Maps Silverlight Control offered better performance than JavaScript alternative. WiFi positioning services emerging as GPS alternative for indoor location.

Both technologies now obsolete: Silverlight deprecated 2012, Orion service discontinued 2011. Modern replacements: Leaflet.js/Mapbox/Google Maps JavaScript APIs and commercial WiFi positioning APIs.

Source Code

Code will be available on GitHub at: https://github.com/tanchunsiong/mic-bing-maps

Note: Projects are historical artifacts and will not run in modern browsers without Silverlight emulation.

Project Created: 2009-2010


Connect: