public static void OnTrafficWWWComplete(OnlineMapsWWW www) { OnlineMapsRasterTile tile = www["tile"] as OnlineMapsRasterTile; if (tile == null) { return; } if (tile.trafficWWW == null || !tile.trafficWWW.isDone) { return; } if (tile.status == OnlineMapsTileStatus.disposed) { tile.trafficWWW = null; return; } if (!www.hasError) { if (map.control.resultIsTexture) { if (tile.OnLabelDownloadComplete()) { map.buffer.ApplyTile(tile); } } else if (tile.trafficWWW != null && map.traffic) { Texture2D trafficTexture = new Texture2D(256, 256, TextureFormat.ARGB32, false) { wrapMode = TextureWrapMode.Clamp }; if (map.useSoftwareJPEGDecoder) { OnlineMapsRasterTile.LoadTexture(trafficTexture, www.bytes); } else { tile.trafficWWW.LoadImageIntoTexture(trafficTexture); } tile.trafficTexture = trafficTexture; } if (OnlineMapsTile.OnTrafficDownloaded != null) { OnlineMapsTile.OnTrafficDownloaded(tile); } map.Redraw(); } tile.trafficWWW = null; }
protected override void LoadTileFromWWW(OnlineMapsWWW www) { if (map.control.resultIsTexture) { DownloadComplete(); if (status != OnlineMapsTileStatus.error) { map.buffer.ApplyTile(this); } } else { Texture2D tileTexture = new Texture2D(256, 256, TextureFormat.RGB24, map.control.mipmapForTiles) { wrapMode = TextureWrapMode.Clamp }; if (map.useSoftwareJPEGDecoder) { OnlineMapsRasterTile.LoadTexture(tileTexture, www.bytes); } else { www.LoadImageIntoTexture(tileTexture); } tileTexture.name = zoom + "x" + x + "x" + y; CheckTextureSize(tileTexture); if (status != OnlineMapsTileStatus.error && status != OnlineMapsTileStatus.disposed) { texture = tileTexture; status = OnlineMapsTileStatus.loaded; } } if (status != OnlineMapsTileStatus.error && status != OnlineMapsTileStatus.disposed) { if (OnTileDownloaded != null) { OnTileDownloaded(this); } } MarkLoaded(); map.Redraw(); }
public static void LoadTexture(Texture2D texture, byte[] bytes) { OnlineMapsRasterTile.LoadTexture(texture, bytes); }