How zx971020/agv-map-editor works
AGV Map Editor is a browser-based visual editor for composing and managing layered AGV maps. The intended workflow is to choose a map, drag map elements onto the canvas, arrange and inspect them, and adjust map or element properties; canvas zooming and panning support that editing. The README also documents layered maps and element selection/movement. Canvas, map-list, and property-panel implementation details are only partly sampled, so their interactions are shown at the documented capability level; no persistence or export backend is evidenced.
Main entry points: App.vue Editor composition · CanvasArea.vue Canvas workspace · ElementPanel.vue Element palette · MapList.vue Map list
Components 16
Editor shell
- Vue entry
src/main.ts - Editor composition
src/App.vue - Three-panel layout
src/components/layout/AppLayout.vue
Map editing
- Canvas workspace
src/components/workspace/CanvasArea.vue - Canvas tools
src/components/workspace/CanvasToolbar.vue - Workspace header
src/components/workspace/WorkspaceHeader.vue - Workspace status
src/components/workspace/BottomBar.vue - Map and element properties
src/components/properties/PropertiesPanel.vue
Map structure
- Element palette
src/components/sidebar/ElementPanel.vue - Map list
src/components/sidebar/MapList.vue - Element catalog
src/assets/element-list.json
UI foundation
- Map and canvas settings
src/config/index.ts - Map data types
src/types/index.ts - Theme preference
src/composables/useDarkMode.ts
Other components
- Map editor user
- Browser local storage
Connections 22
- Map editor user → Vue entry: opens editor
- Vue entry → Editor composition: mounts
- Editor composition → Three-panel layout: composes
- Editor composition → Canvas workspace: renders workspace
- Editor composition → Canvas tools: renders tools
- Editor composition → Workspace header: renders header
- Editor composition → Workspace status: renders status
- Editor composition → Map and element properties: renders properties
- Editor composition → Element palette: renders palette
- Editor composition → Map list: renders map list
- Element catalog → Element palette: loads catalog
- Map editor user → Map list: chooses map
- Map editor user → Element palette: drags element
- Element palette → Canvas workspace: transfers element
- Map editor user → Canvas workspace: selects and moves
- Map editor user → Canvas tools: sets zoom and pan
- Map editor user → Map and element properties: edits properties
- Map and canvas settings → Canvas workspace: configures canvas
- Map data types → Map list: defines map model
- Map data types → Canvas workspace: defines elements
- Map editor user → Theme preference: sets appearance
- Theme preference → Browser local storage: reads and writes theme