diff --git a/Cs_HMI/AGVNavigationCore/PathFinding/DirectionChangePlanner.cs b/Cs_HMI/AGVNavigationCore/PathFinding/DirectionChangePlanner.cs
index 6a96cab..9d4478e 100644
--- a/Cs_HMI/AGVNavigationCore/PathFinding/DirectionChangePlanner.cs
+++ b/Cs_HMI/AGVNavigationCore/PathFinding/DirectionChangePlanner.cs
@@ -245,7 +245,7 @@ namespace AGVNavigationCore.PathFinding
// 실제 방향 전환 노드 찾기 (우회 노드)
string actualDirectionChangeNode = FindActualDirectionChangeNode(changePath, junctionNodeId);
- string description = $"갈림길 {junctionNodeId}를 통해 {actualDirectionChangeNode}에서 방향 전환: {currentDirection} → {requiredDirection}";
+ string description = $"갈림길 {GetDisplayName(junctionNodeId)}를 통해 {GetDisplayName(actualDirectionChangeNode)}에서 방향 전환: {currentDirection} → {requiredDirection}";
return DirectionChangePlan.CreateSuccess(changePath, actualDirectionChangeNode, description);
}
@@ -514,5 +514,20 @@ namespace AGVNavigationCore.PathFinding
var junctions = _junctionAnalyzer.GetJunctionSummary();
return string.Join("\n", junctions);
}
+
+ ///
+ /// 노드의 표시명 가져오기 (RFID 우선, 없으면 (NodeID) 형태)
+ ///
+ /// 노드 ID
+ /// 표시할 이름
+ private string GetDisplayName(string nodeId)
+ {
+ var node = _mapNodes.FirstOrDefault(n => n.NodeId == nodeId);
+ if (node != null && !string.IsNullOrEmpty(node.RfidId))
+ {
+ return node.RfidId;
+ }
+ return $"({nodeId})";
+ }
}
}
\ No newline at end of file