internal override void Draw(DrawParameter drawParameter)
{
base.Draw(drawParameter);
if ((base.IsInitialized && base.IsVisible) && (!Rectangle2D.IsNullOrEmpty(ViewBounds)) && (base.Container != null))
{
if (GetCachedResolutions() != null)
{
realResolutions = this.GetCachedResolutions();
}
else
{
realResolutions = drawParameter.Resoluitons;
}
double resolution = MathUtil.GetNearest(drawParameter.Resolution, realResolutions, MinVisibleResolution, MaxVisibleResolution);
int[] span = this.GetTileSpanWithin(ViewBounds, resolution);
int level = -1;
needShowTiles = NeedShowTiles(resolution, span, drawParameter.UseTransitions, out level);
TileComparer comparer = new TileComparer();
List<Tile> needDownload = needShowTiles.Except<Tile>(_inContainer.Values, comparer).ToList();
if (needDownload.Count > 0)
{
_queueSystem.InputTiles(uniqueLayerId, needDownload);
}
}
}