清理一点过时代码
This commit is contained in:
parent
ceb37e33a4
commit
1622d6cb90
@ -50,8 +50,8 @@ namespace NavisworksTransport
|
|||||||
private PathPoint _previewPoint = null;
|
private PathPoint _previewPoint = null;
|
||||||
|
|
||||||
// 网格可视化设置
|
// 网格可视化设置
|
||||||
private bool _showWalkableGrid = true;
|
private bool _showWalkableGrid = false;
|
||||||
private bool _showObstacleGrid = true;
|
private bool _showObstacleGrid = false;
|
||||||
private bool _showUnknownGrid = false;
|
private bool _showUnknownGrid = false;
|
||||||
private bool _isPreviewMode = false;
|
private bool _isPreviewMode = false;
|
||||||
private int _previewInsertIndex = -1; // 保存预览点应该插入的索引位置
|
private int _previewInsertIndex = -1; // 保存预览点应该插入的索引位置
|
||||||
|
|||||||
@ -788,134 +788,6 @@ namespace NavisworksTransport
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region 向后兼容的旧接口(保留以避免编译错误)
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// [已过时] 添加球体标记 - 请使用RenderPath方法代替
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="center">圆心位置</param>
|
|
||||||
/// <param name="pointType">路径点类型</param>
|
|
||||||
/// <param name="sequenceNumber">序号</param>
|
|
||||||
[Obsolete("此方法已过时,请使用RenderPath方法进行统一的路径可视化", false)]
|
|
||||||
public void AddCircleMarker(Point3D center, PathPointType pointType, int sequenceNumber)
|
|
||||||
{
|
|
||||||
LogManager.WriteLog($"[兼容性警告] 使用了已过时的AddCircleMarker方法,建议使用RenderPath方法");
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
// 为了兼容性,创建一个临时路径
|
|
||||||
var tempPath = new PathRoute($"TempPath_{Guid.NewGuid().ToString("N").Substring(0, 8)}")
|
|
||||||
{
|
|
||||||
Id = $"temp_{sequenceNumber}_{DateTime.Now.Ticks}"
|
|
||||||
};
|
|
||||||
|
|
||||||
var pathPoint = new PathPoint(center, $"Point_{sequenceNumber}", pointType)
|
|
||||||
{
|
|
||||||
Index = 0
|
|
||||||
};
|
|
||||||
tempPath.Points.Add(pathPoint);
|
|
||||||
|
|
||||||
// 使用新的渲染方法
|
|
||||||
RenderPath(tempPath);
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
LogManager.WriteLog($"[兼容性标记] 添加标记失败: {ex.Message}");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 移除指定位置的球体标记
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="position">位置</param>
|
|
||||||
/// <param name="tolerance">容差距离(米)</param>
|
|
||||||
/// <returns>是否成功移除</returns>
|
|
||||||
public bool RemoveMarkerAt(Point3D position, double tolerance = 1.0)
|
|
||||||
{
|
|
||||||
bool removed = false;
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
lock (_lockObject)
|
|
||||||
{
|
|
||||||
for (int i = _circleMarkers.Count - 1; i >= 0; i--)
|
|
||||||
{
|
|
||||||
var marker = _circleMarkers[i];
|
|
||||||
var distance = CalculateDistance(marker.Center, position);
|
|
||||||
|
|
||||||
if (distance <= tolerance)
|
|
||||||
{
|
|
||||||
_circleMarkers.RemoveAt(i);
|
|
||||||
removed = true;
|
|
||||||
LogManager.WriteLog($"[球体标记] 移除标记: 序号={marker.SequenceNumber}, 距离={distance:F2}m");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (removed)
|
|
||||||
{
|
|
||||||
RequestViewRefresh();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
LogManager.WriteLog($"[球体标记] 移除标记失败: {ex.Message}");
|
|
||||||
}
|
|
||||||
|
|
||||||
return removed;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// [已过时] 清除所有球体标记 - 请使用ClearAllPaths方法代替
|
|
||||||
/// </summary>
|
|
||||||
[Obsolete("此方法已过时,请使用ClearAllPaths方法", false)]
|
|
||||||
public void ClearAllMarkers()
|
|
||||||
{
|
|
||||||
LogManager.WriteLog($"[兼容性警告] 使用了已过时的ClearAllMarkers方法,建议使用ClearAllPaths方法");
|
|
||||||
ClearAllPaths();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// [已过时] 清除所有自动路径标记 - 请使用ClearAllPaths方法代替
|
|
||||||
/// </summary>
|
|
||||||
[Obsolete("此方法已过时,请使用ClearAllPaths方法", false)]
|
|
||||||
public void ClearAutoPathMarkers()
|
|
||||||
{
|
|
||||||
LogManager.WriteLog($"[兼容性警告] 使用了已过时的ClearAutoPathMarkers方法,建议使用ClearAllPaths方法");
|
|
||||||
ClearAllPaths();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// [已过时] 清除手动路径标记 - 请使用ClearAllPaths方法代替
|
|
||||||
/// </summary>
|
|
||||||
[Obsolete("此方法已过时,请使用ClearAllPaths方法", false)]
|
|
||||||
public void ClearManualPathMarkers()
|
|
||||||
{
|
|
||||||
LogManager.WriteLog($"[兼容性警告] 使用了已过时的ClearManualPathMarkers方法,建议使用ClearAllPaths方法");
|
|
||||||
ClearAllPaths();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// [已过时] 获取所有球体标记的副本 - 此方法不再适用于新的路径系统
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>空列表</returns>
|
|
||||||
[Obsolete("此方法已过时,新的路径系统不使用独立的标记概念", false)]
|
|
||||||
public List<CircleMarker> GetAllMarkers()
|
|
||||||
{
|
|
||||||
LogManager.WriteLog($"[兼容性警告] 使用了已过时的GetAllMarkers方法,新系统不再支持独立标记");
|
|
||||||
return new List<CircleMarker>();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// [已过时] 根据序号更新一个已存在的球体标记 - 请使用UpdatePointInPath方法代替
|
|
||||||
/// </summary>
|
|
||||||
[Obsolete("此方法已过时,请使用UpdatePointInPath方法更新路径中的点", false)]
|
|
||||||
public void UpdateMarker(int sequenceNumber, Color newColor, double newRadius)
|
|
||||||
{
|
|
||||||
LogManager.WriteLog($"[兼容性警告] 使用了已过时的UpdateMarker方法,请使用UpdatePointInPath方法");
|
|
||||||
// 由于新系统没有直接的序号对应关系,这个方法不再有效
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 渲染预览点(灰色显示)
|
/// 渲染预览点(灰色显示)
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -1171,40 +1043,6 @@ namespace NavisworksTransport
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 渲染预览路径的连线
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="previewRoute">预览路径</param>
|
|
||||||
private void RenderPreviewPathLines(PathRoute previewRoute)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
ClearPreviewLines();
|
|
||||||
|
|
||||||
for (int i = 0; i < previewRoute.Points.Count - 1; i++)
|
|
||||||
{
|
|
||||||
var startPoint = previewRoute.Points[i];
|
|
||||||
var endPoint = previewRoute.Points[i + 1];
|
|
||||||
|
|
||||||
var lineMarker = new LineMarker
|
|
||||||
{
|
|
||||||
StartPoint = startPoint.Position,
|
|
||||||
EndPoint = endPoint.Position,
|
|
||||||
Color = Color.FromByteRGB(128, 128, 128), // 统一使用灰色预览连线
|
|
||||||
Radius = GetLineRadius()
|
|
||||||
};
|
|
||||||
|
|
||||||
_previewLines.Add(lineMarker);
|
|
||||||
}
|
|
||||||
|
|
||||||
LogManager.WriteLog($"[预览路径连线] 已创建 {_previewLines.Count} 条预览连线");
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
LogManager.WriteLog($"[预览路径连线] 渲染预览连线失败: {ex.Message}");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 清理所有预览渲染
|
/// 清理所有预览渲染
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -1232,8 +1070,6 @@ namespace NavisworksTransport
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
#region 私有辅助方法
|
#region 私有辅助方法
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@ -1157,7 +1157,7 @@ namespace NavisworksTransport.UI.WPF.ViewModels
|
|||||||
for (int i = 0; i < currentRoute.Points.Count; i++)
|
for (int i = 0; i < currentRoute.Points.Count; i++)
|
||||||
{
|
{
|
||||||
var currentPoint = currentRoute.Points[i];
|
var currentPoint = currentRoute.Points[i];
|
||||||
LogManager.Info($"检查路径点 [{i}] - Id: {currentPoint.Id}, 名称: {currentPoint.Name}");
|
//LogManager.Info($"检查路径点 [{i}] - Id: {currentPoint.Id}, 名称: {currentPoint.Name}");
|
||||||
|
|
||||||
if (currentPoint.Id == SelectedPathPoint.Id)
|
if (currentPoint.Id == SelectedPathPoint.Id)
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user