Skip to content

Latest commit

 

History

History
26 lines (20 loc) · 2.31 KB

File metadata and controls

26 lines (20 loc) · 2.31 KB

MaplatEditor-next Future Plan

This document outlines potential future enhancements, features, and UI/UX improvements identified during the modernization of MaplatEditor to MaplatEditor-next.

1. Map-Specific Base Map Configuration UI

Current state: Base maps are appended via tmsList.json and map-specific suppression rules are defined in tmsList.[mapID].json. Both currently require manual JSON file editing inside the settings directory. Proposed improvement:

  • Create a dedicated UI panel (e.g., in MapEdit.vue or a new Settings.vue tab) to let users visually toggle which base maps should be visible/available for the currently edited historical map.
  • Migrate this configuration storage from standalone JSON files to the main database (e.g., NeDB or its successor) to ensure data integrity and easier querying.

2. Global Base Map Management UI

Current state: The global list of custom base maps (tms_list.json in project root or tmsList.json in settings) is managed by manual file edits. Proposed improvement:

  • Build a "Base Map Manager" interface allowing users to Add/Edit/Delete custom TMS endpoints, complete with preview functionality and attribution fields.

3. General UI/UX Modernization

Current state: The UI is being ported from a legacy Bootstrap 3/jQuery design to Vue 3/Bootstrap 5. Proposed improvements:

  • State management: Use Pinia for complex state sharing across components instead of heavy prop drilling or global window variables.
  • Componentization: Break down monolithic files like MapEdit.vue into smaller, reusable components (e.g., LayerSettings.vue, CoordinateEditor.vue, MapToolbar.vue).

4. TIN計算の高速化(WASM化)

現状: TIN計算(Delaunay三角分割)は Electron のメインプロセス(Node.js)経由で @maplat/tin を実行しており、2000点超の大規模データで約7秒を要する。オリジナル実装と同等の速度ではあるが、実用的にはまだ遅い。
提案: @maplat/tin のコア計算ロジックを WASM 化、あるいは高性能な Delaunay 実装(d3-delaunay + WASM ラッパー等)へ差し替えることで、大幅な高速化が見込まれる。

Note: This document should be updated continuously as more areas for improvement are discovered during the porting process.