void SetSize() { if (m_tileDriver.Zoom != m_lastZoom) { var hscale = m_tileDriver.GetDistanceScale(m_mapView.CenterCoordinates, Overlay.Area.Width); var vscale = m_tileDriver.GetDistanceScale(m_mapView.CenterCoordinates, Overlay.Area.Height); var xscale = (float)hscale * MapController.Instance.MapX.magnitude; var yscale = (float)vscale * MapController.Instance.MapY.magnitude; //Logger.PrintMessage(LogLevel.Debug, "hs={0} vs={1} xs={2} ys={3}", // hscale, vscale, xscale, yscale); transform.localScale = new Vector2(xscale, yscale); //m_lastRange = Range; m_lastZoom = m_tileDriver.Zoom; MediaElement media = null; // Find a matching layer to render if (Overlay.Overlay.MapOverlayLayers != null) { foreach (var layer in Overlay.Overlay.MapOverlayLayers) { if (layer.ZoomRange == null || (layer.ZoomRange != null && layer.ZoomRange.IsInRange(m_lastZoom))) { media = layer.MediaElement; break; } } } if (Image && media != null && media.MediaUrl != null && media.MediaUrl != m_lastUrl) { m_lastUrl = media.MediaUrl; Image.LoadMedia(media); } } }
void SetSize() { if (m_tileDriver.Zoom != m_lastZoom) { m_lastZoom = m_tileDriver.Zoom; var hscale = m_tileDriver.GetDistanceScale(m_mapView.CenterCoordinates, Overlay.Area.Width); var vscale = m_tileDriver.GetDistanceScale(m_mapView.CenterCoordinates, Overlay.Area.Height); var xscale = (float)hscale * MapController.Instance.MapX.magnitude; var yscale = (float)vscale * MapController.Instance.MapY.magnitude; //Logger.PrintMessage(LogLevel.Debug, "hs={0} vs={1} xs={2} ys={3}", // hscale, vscale, xscale, yscale); transform.localScale = new Vector2(xscale, yscale); } }