mirror of
https://github.com/babalae/better-genshin-impact.git
synced 2026-05-19 09:35:48 +08:00
fix: 将小地图覆盖层坐标与尺寸硬编码替换为常量引用
将视图模型中硬编码的小地图覆盖层坐标与尺寸替换为引用 MapAssets 中定义的常量 MimiMapRect1080P,以提高代码的可维护性并确保数值一致性。同时更新地图遮罩触发器中视口大小的计算方式,使其基于相同的常量进行动态计算。
This commit is contained in:
@@ -14,6 +14,9 @@ namespace BetterGenshinImpact.GameTask.Common.Element.Assets;
|
||||
public class MapAssets : BaseAssets<MapAssets>
|
||||
{
|
||||
public Rect MimiMapRect { get; }
|
||||
|
||||
public static Rect MimiMapRect1080P = new Rect(62, 19,212,212);
|
||||
|
||||
|
||||
public MapAssets()
|
||||
{
|
||||
|
||||
@@ -144,7 +144,7 @@ public class MapMaskTrigger : ITaskTrigger
|
||||
if (miniPoint != default)
|
||||
{
|
||||
// 展示窗口是 212
|
||||
const double viewportSize = 353;
|
||||
double viewportSize = MapAssets.MimiMapRect1080P.Width / 3.0 * 10;
|
||||
UIDispatcherHelper.Invoke(() =>
|
||||
{
|
||||
MaskWindow.Instance().MiniMapPointsCanvasControl.UpdateViewport(
|
||||
|
||||
@@ -20,6 +20,7 @@ using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Threading;
|
||||
using BetterGenshinImpact.GameTask.Common.Element.Assets;
|
||||
using BetterGenshinImpact.Model.MaskMap;
|
||||
using Vanara.PInvoke;
|
||||
using MaskMapPoint = BetterGenshinImpact.Model.MaskMap.MaskMapPoint;
|
||||
@@ -70,11 +71,11 @@ namespace BetterGenshinImpact.ViewModel
|
||||
|
||||
[ObservableProperty] private string _mapPointsLoadingText = "正在加载点位...";
|
||||
|
||||
public double MiniMapOverlayLeftRatio => 50d / 1920d;
|
||||
public double MiniMapOverlayLeftRatio => MapAssets.MimiMapRect1080P.X / 1920d;
|
||||
|
||||
public double MiniMapOverlayTopRatio =>14d / 1080d;
|
||||
public double MiniMapOverlayTopRatio => MapAssets.MimiMapRect1080P.Y / 1080d;
|
||||
|
||||
public double MiniMapOverlaySizeRatio => 212d / 1080d;
|
||||
public double MiniMapOverlaySizeRatio => MapAssets.MimiMapRect1080P.Width / 1080d;
|
||||
|
||||
public sealed record MapPointApiProviderOption(MapPointApiProvider Provider, string DisplayName);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user