diff --git a/Views/UserControl/ViewportData/Helper/ViewportHelperPro.cs b/Views/UserControl/ViewportData/Helper/ViewportHelperPro.cs index 6f0bba2..4ad71c2 100644 --- a/Views/UserControl/ViewportData/Helper/ViewportHelperPro.cs +++ b/Views/UserControl/ViewportData/Helper/ViewportHelperPro.cs @@ -1417,9 +1417,24 @@ public class ViewportHelperPro lineDirection.Normalize(); // 现在鼠标对于3d模型的位置 var mousePosition = ev.Position; - var currentMousePosition = Get3DPointFromMouse(mousePosition); + Point3D currentMousePosition = new(); + try { + currentMousePosition = Get3DPointFromMouse(mousePosition); + } + catch + { + return; + } currentMousePosition.Y = Y; - var hitPoint = Get3DPointFromMouse(startDragPoint); + Point3D hitPoint = new(); + try + { + hitPoint = Get3DPointFromMouse(startDragPoint); + } + catch + { + return; + } hitPoint.Y = Y; // 计算鼠标移动的方向 var moveDirection = currentMousePosition - hitPoint; @@ -1673,8 +1688,14 @@ public class ViewportHelperPro var Y = line.Geometry.Positions[0].Y; var center = ViewportManager.CenterVector; center.Y = Y; - - Point3D mouseWorldPosition = Get3DPointFromMouse(mousePosition); + Point3D mouseWorldPosition = new(); + try { + mouseWorldPosition = Get3DPointFromMouse(mousePosition); + } + catch + { + return; + } mouseWorldPosition.Y = Y; // Console.WriteLine($"鼠标在3D模型中的位置:{mouseWorldPosition.X},{mouseWorldPosition.Y},{mouseWorldPosition.Z}"); // 计算鼠标与圆心的距离