private Image DataToImage(Tile tile)
{
BitmapImage bitmapImage = new BitmapImage();
if (tile.IsSuccessd)
{
try
{
MemoryStream ms = new MemoryStream(tile.MapImage.Data);
ms.Seek(0, SeekOrigin.Begin);
bitmapImage.SetSource(ms);
ms.Close();
}
catch (Exception ex)
{
}
}
Image image = new Image()
{
Opacity = 1.0,
Tag = tile,
IsHitTestVisible = false,
Name = tile.TileKey,
Stretch = Stretch.Fill,
Source = bitmapImage
};
double resolution = tile.Resolution;
LayerContainer.SetBounds(image, GetTilesBounds(tile.Column, tile.Row, tile.Resolution));//计算该image的范围
return image;
}