Major improvements to AGV navigation system: • Consolidated RFID management into MapNode, removing duplicate RfidMapping class • Enhanced MapNode with RFID metadata fields (RfidStatus, RfidDescription) • Added automatic bidirectional connection generation in pathfinding algorithms • Updated all components to use unified MapNode-based RFID system • Added command line argument support for AGVMapEditor auto-loading files • Fixed pathfinding failures by ensuring proper node connectivity Technical changes: - Removed RfidMapping class and dependencies across all projects - Updated AStarPathfinder with EnsureBidirectionalConnections() method - Modified MapLoader to use AssignAutoRfidIds() for RFID automation - Enhanced UnifiedAGVCanvas, SimulatorForm, and MainForm for MapNode integration - Improved data consistency and reduced memory footprint 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
268 lines
14 KiB
C#
268 lines
14 KiB
C#
namespace AGVMapEditor.Forms
|
|
{
|
|
partial class MainForm
|
|
{
|
|
/// <summary>
|
|
/// 필수 디자이너 변수입니다.
|
|
/// </summary>
|
|
private System.ComponentModel.IContainer components = null;
|
|
|
|
/// <summary>
|
|
/// 사용 중인 모든 리소스를 정리합니다.
|
|
/// </summary>
|
|
/// <param name="disposing">관리되는 리소스를 삭제해야 하면 true이고, 그렇지 않으면 false입니다.</param>
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
if (disposing && (components != null))
|
|
{
|
|
components.Dispose();
|
|
}
|
|
base.Dispose(disposing);
|
|
}
|
|
|
|
#region Windows Form 디자이너에서 생성한 코드
|
|
|
|
/// <summary>
|
|
/// 디자이너 지원에 필요한 메서드입니다.
|
|
/// 이 메서드의 내용을 코드 편집기로 수정하지 마세요.
|
|
/// </summary>
|
|
private void InitializeComponent()
|
|
{
|
|
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
|
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
this.newToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
this.openToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
|
|
this.saveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
this.saveAsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
this.closeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
|
|
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
|
|
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
|
|
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
|
this.tabControl1 = new System.Windows.Forms.TabControl();
|
|
this.tabPageNodes = new System.Windows.Forms.TabPage();
|
|
this.listBoxNodes = new System.Windows.Forms.ListBox();
|
|
this._propertyGrid = new System.Windows.Forms.PropertyGrid();
|
|
this.label1 = new System.Windows.Forms.Label();
|
|
this.menuStrip1.SuspendLayout();
|
|
this.statusStrip1.SuspendLayout();
|
|
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
|
this.splitContainer1.Panel1.SuspendLayout();
|
|
this.splitContainer1.SuspendLayout();
|
|
this.tabControl1.SuspendLayout();
|
|
this.tabPageNodes.SuspendLayout();
|
|
this.SuspendLayout();
|
|
//
|
|
// menuStrip1
|
|
//
|
|
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
this.fileToolStripMenuItem});
|
|
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
|
|
this.menuStrip1.Name = "menuStrip1";
|
|
this.menuStrip1.Size = new System.Drawing.Size(1200, 24);
|
|
this.menuStrip1.TabIndex = 0;
|
|
this.menuStrip1.Text = "menuStrip1";
|
|
//
|
|
// fileToolStripMenuItem
|
|
//
|
|
this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
this.newToolStripMenuItem,
|
|
this.openToolStripMenuItem,
|
|
this.closeToolStripMenuItem,
|
|
this.toolStripSeparator1,
|
|
this.saveToolStripMenuItem,
|
|
this.saveAsToolStripMenuItem,
|
|
this.toolStripSeparator2,
|
|
this.exitToolStripMenuItem});
|
|
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
|
|
this.fileToolStripMenuItem.Size = new System.Drawing.Size(57, 20);
|
|
this.fileToolStripMenuItem.Text = "파일(&F)";
|
|
//
|
|
// newToolStripMenuItem
|
|
//
|
|
this.newToolStripMenuItem.Name = "newToolStripMenuItem";
|
|
this.newToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N)));
|
|
this.newToolStripMenuItem.Size = new System.Drawing.Size(198, 22);
|
|
this.newToolStripMenuItem.Text = "새로 만들기(&N)";
|
|
this.newToolStripMenuItem.Click += new System.EventHandler(this.newToolStripMenuItem_Click);
|
|
//
|
|
// openToolStripMenuItem
|
|
//
|
|
this.openToolStripMenuItem.Name = "openToolStripMenuItem";
|
|
this.openToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));
|
|
this.openToolStripMenuItem.Size = new System.Drawing.Size(198, 22);
|
|
this.openToolStripMenuItem.Text = "열기(&O)";
|
|
this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);
|
|
//
|
|
// toolStripSeparator1
|
|
//
|
|
this.toolStripSeparator1.Name = "toolStripSeparator1";
|
|
this.toolStripSeparator1.Size = new System.Drawing.Size(195, 6);
|
|
//
|
|
// saveToolStripMenuItem
|
|
//
|
|
this.saveToolStripMenuItem.Name = "saveToolStripMenuItem";
|
|
this.saveToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.S)));
|
|
this.saveToolStripMenuItem.Size = new System.Drawing.Size(198, 22);
|
|
this.saveToolStripMenuItem.Text = "저장(&S)";
|
|
this.saveToolStripMenuItem.Click += new System.EventHandler(this.saveToolStripMenuItem_Click);
|
|
//
|
|
// saveAsToolStripMenuItem
|
|
//
|
|
this.saveAsToolStripMenuItem.Name = "saveAsToolStripMenuItem";
|
|
this.saveAsToolStripMenuItem.Size = new System.Drawing.Size(198, 22);
|
|
this.saveAsToolStripMenuItem.Text = "다른 이름으로 저장(&A)";
|
|
this.saveAsToolStripMenuItem.Click += new System.EventHandler(this.saveAsToolStripMenuItem_Click);
|
|
//
|
|
// closeToolStripMenuItem
|
|
//
|
|
this.closeToolStripMenuItem.Name = "closeToolStripMenuItem";
|
|
this.closeToolStripMenuItem.Size = new System.Drawing.Size(198, 22);
|
|
this.closeToolStripMenuItem.Text = "닫기(&C)";
|
|
this.closeToolStripMenuItem.Click += new System.EventHandler(this.closeToolStripMenuItem_Click);
|
|
//
|
|
// toolStripSeparator2
|
|
//
|
|
this.toolStripSeparator2.Name = "toolStripSeparator2";
|
|
this.toolStripSeparator2.Size = new System.Drawing.Size(195, 6);
|
|
//
|
|
// exitToolStripMenuItem
|
|
//
|
|
this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
|
|
this.exitToolStripMenuItem.Size = new System.Drawing.Size(198, 22);
|
|
this.exitToolStripMenuItem.Text = "종료(&X)";
|
|
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
|
|
//
|
|
// statusStrip1
|
|
//
|
|
this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
this.toolStripStatusLabel1});
|
|
this.statusStrip1.Location = new System.Drawing.Point(0, 751);
|
|
this.statusStrip1.Name = "statusStrip1";
|
|
this.statusStrip1.Size = new System.Drawing.Size(1200, 22);
|
|
this.statusStrip1.TabIndex = 1;
|
|
this.statusStrip1.Text = "statusStrip1";
|
|
//
|
|
// toolStripStatusLabel1
|
|
//
|
|
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
|
this.toolStripStatusLabel1.Size = new System.Drawing.Size(39, 17);
|
|
this.toolStripStatusLabel1.Text = "Ready";
|
|
//
|
|
// splitContainer1
|
|
//
|
|
this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.splitContainer1.Location = new System.Drawing.Point(0, 24);
|
|
this.splitContainer1.Name = "splitContainer1";
|
|
//
|
|
// splitContainer1.Panel1
|
|
//
|
|
this.splitContainer1.Panel1.Controls.Add(this.tabControl1);
|
|
this.splitContainer1.Panel1MinSize = 300;
|
|
this.splitContainer1.Size = new System.Drawing.Size(1200, 727);
|
|
this.splitContainer1.SplitterDistance = 300;
|
|
this.splitContainer1.TabIndex = 2;
|
|
//
|
|
// tabControl1
|
|
//
|
|
this.tabControl1.Controls.Add(this.tabPageNodes);
|
|
this.tabControl1.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.tabControl1.Location = new System.Drawing.Point(0, 0);
|
|
this.tabControl1.Name = "tabControl1";
|
|
this.tabControl1.SelectedIndex = 0;
|
|
this.tabControl1.Size = new System.Drawing.Size(300, 727);
|
|
this.tabControl1.TabIndex = 0;
|
|
//
|
|
// tabPageNodes
|
|
//
|
|
this.tabPageNodes.Controls.Add(this.listBoxNodes);
|
|
this.tabPageNodes.Controls.Add(this._propertyGrid);
|
|
this.tabPageNodes.Controls.Add(this.label1);
|
|
this.tabPageNodes.Location = new System.Drawing.Point(4, 22);
|
|
this.tabPageNodes.Name = "tabPageNodes";
|
|
this.tabPageNodes.Padding = new System.Windows.Forms.Padding(3);
|
|
this.tabPageNodes.Size = new System.Drawing.Size(292, 701);
|
|
this.tabPageNodes.TabIndex = 0;
|
|
this.tabPageNodes.Text = "노드 관리";
|
|
this.tabPageNodes.UseVisualStyleBackColor = true;
|
|
//
|
|
// listBoxNodes
|
|
//
|
|
this.listBoxNodes.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.listBoxNodes.FormattingEnabled = true;
|
|
this.listBoxNodes.ItemHeight = 12;
|
|
this.listBoxNodes.Location = new System.Drawing.Point(3, 3);
|
|
this.listBoxNodes.Name = "listBoxNodes";
|
|
this.listBoxNodes.Size = new System.Drawing.Size(286, 245);
|
|
this.listBoxNodes.TabIndex = 1;
|
|
//
|
|
// _propertyGrid
|
|
//
|
|
this._propertyGrid.Dock = System.Windows.Forms.DockStyle.Bottom;
|
|
this._propertyGrid.Location = new System.Drawing.Point(3, 248);
|
|
this._propertyGrid.Name = "_propertyGrid";
|
|
this._propertyGrid.Size = new System.Drawing.Size(286, 450);
|
|
this._propertyGrid.TabIndex = 6;
|
|
//
|
|
// label1
|
|
//
|
|
this.label1.AutoSize = true;
|
|
this.label1.Location = new System.Drawing.Point(6, 6);
|
|
this.label1.Name = "label1";
|
|
this.label1.Size = new System.Drawing.Size(57, 12);
|
|
this.label1.TabIndex = 0;
|
|
this.label1.Text = "노드 목록";
|
|
//
|
|
// MainForm
|
|
//
|
|
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
|
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
this.ClientSize = new System.Drawing.Size(1200, 773);
|
|
this.Controls.Add(this.splitContainer1);
|
|
this.Controls.Add(this.statusStrip1);
|
|
this.Controls.Add(this.menuStrip1);
|
|
this.MainMenuStrip = this.menuStrip1;
|
|
this.Name = "MainForm";
|
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
|
this.Text = "AGV Map Editor";
|
|
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing);
|
|
this.Load += new System.EventHandler(this.MainForm_Load);
|
|
this.menuStrip1.ResumeLayout(false);
|
|
this.menuStrip1.PerformLayout();
|
|
this.statusStrip1.ResumeLayout(false);
|
|
this.statusStrip1.PerformLayout();
|
|
this.splitContainer1.Panel1.ResumeLayout(false);
|
|
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
|
|
this.splitContainer1.ResumeLayout(false);
|
|
this.tabControl1.ResumeLayout(false);
|
|
this.tabPageNodes.ResumeLayout(false);
|
|
this.tabPageNodes.PerformLayout();
|
|
this.ResumeLayout(false);
|
|
this.PerformLayout();
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
private System.Windows.Forms.MenuStrip menuStrip1;
|
|
private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
|
|
private System.Windows.Forms.ToolStripMenuItem newToolStripMenuItem;
|
|
private System.Windows.Forms.ToolStripMenuItem openToolStripMenuItem;
|
|
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
|
|
private System.Windows.Forms.ToolStripMenuItem saveToolStripMenuItem;
|
|
private System.Windows.Forms.ToolStripMenuItem saveAsToolStripMenuItem;
|
|
private System.Windows.Forms.ToolStripMenuItem closeToolStripMenuItem;
|
|
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
|
|
private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
|
|
private System.Windows.Forms.StatusStrip statusStrip1;
|
|
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
|
|
private System.Windows.Forms.SplitContainer splitContainer1;
|
|
private System.Windows.Forms.TabControl tabControl1;
|
|
private System.Windows.Forms.TabPage tabPageNodes;
|
|
private System.Windows.Forms.ListBox listBoxNodes;
|
|
private System.Windows.Forms.Label label1;
|
|
private System.Windows.Forms.PropertyGrid _propertyGrid;
|
|
}
|
|
} |