createMissingBitmap method
Creates a tile bitmap to indicate that the tile is currently being rendered.
This is used as a placeholder until the actual tile data is available.
Implementation
Future<TilePicture> createMissingBitmap() async {
if (_missing != null) return _missing!.clone();
double tileSize = MapsforgeSettingsMgr().tileSize;
var pictureRecorder = ui.PictureRecorder();
var canvas = ui.Canvas(pictureRecorder);
var paint = ui.Paint();
paint.strokeWidth = 1;
paint.color = const ui.Color(0xffaaaaaa);
paint.isAntiAlias = true;
canvas.drawLine(ui.Offset(_margin, _margin), ui.Offset(tileSize - _margin, _margin), paint);
canvas.drawLine(ui.Offset(_margin, _margin), ui.Offset(_margin, tileSize - _margin), paint);
canvas.drawLine(ui.Offset(tileSize - _margin, _margin), ui.Offset(tileSize - _margin, tileSize - _margin), paint);
canvas.drawLine(ui.Offset(_margin, tileSize - _margin), ui.Offset(tileSize - _margin, tileSize - _margin), paint);
ui.ParagraphBuilder builder = ui.ParagraphBuilder(ui.ParagraphStyle(fontSize: 10.0, textAlign: ui.TextAlign.center))
..pushStyle(ui.TextStyle(color: paint.color))
..addText("Waiting for rendering...");
canvas.drawParagraph(builder.build()..layout(ui.ParagraphConstraints(width: tileSize.toDouble())), ui.Offset(0, tileSize / 2));
var pic = pictureRecorder.endRecording();
_missing = TilePicture.fromPicture(pic);
return _missing!;
}