layer_map_ruler.dart 953 B

12345678910111213141516171819202122232425262728293031323334
  1. import '../widget_ruler.dart';
  2. import 'game_std_controller.dart';
  3. class LayerMapRuler extends LayerView<GameStdController> {
  4. const LayerMapRuler({super.key});
  5. @override
  6. Widget build(BuildContext context) {
  7. return Obx(() {
  8. if (viewModel.isShowRuler.value) {
  9. final mapScale = viewModel.mapScale;
  10. if (mapScale == 0) {
  11. return const SizedBox();
  12. }
  13. var height = context.height / 2;
  14. var hideHeight = 0.0;
  15. if (viewModel.isMapRotateAtCompassCenter.value) {
  16. height = viewModel.compassCenter.dy;
  17. hideHeight = viewModel.compassDiameter / 2 + 1;
  18. }
  19. return Container(
  20. alignment: Alignment.topCenter,
  21. padding: EdgeInsets.only(top: context.mediaQueryPadding.top),
  22. height: height,
  23. child: Ruler(hideHeight: hideHeight, mapScale: mapScale));
  24. } else {
  25. return const SizedBox();
  26. }
  27. });
  28. }
  29. }