private void drawRelCells(List <UIElement> relList) { try { MapperVicinity mapperVicinity = CurrentMapper; double frameWidth = canvasRel.ActualWidth; double frameHeight = canvasRel.ActualHeight; double relCellWidth = frameWidth / mapperVicinity.RelMapWidth; double relCellHeight = frameHeight / mapperVicinity.RelMapHeight; metersPerPixelX = MapperSettings.elementSizeMeters * mapperVicinity.RelMapWidth / frameWidth; metersPerPixelY = MapperSettings.elementSizeMeters * mapperVicinity.RelMapHeight / frameHeight; for (int i = 0; i < mapperVicinity.RelMapHeight; i++) { for (int j = 0; j < mapperVicinity.RelMapWidth; j++) { MapCell cell = mapperVicinity.relCellAt(j, i); SolidColorBrush myBrush = null; bool isEmpty = cell.val < 1; if (!isEmpty) { Rectangle rect = new Rectangle(); rect.Width = relCellWidth; rect.Height = relCellHeight; rect.RadiusX = 4; rect.RadiusY = 4; rect.Margin = new Thickness(j * relCellWidth, i * relCellHeight, 0, 0); rect.Fill = myBrush; rect.Stroke = Brushes.Green; rect.StrokeThickness = 0.5d; relList.Add(rect); } } } } catch { } }