Skip to content

Daedalus CAD Inventory (2026-04-10)

Scope

  • File: frontend/src/components/Daedalus/Drafting/D_Daedalus.vue
  • Related UI: D_DaedalusRibbon.vue, D_DaedalusRightSidebar.vue, D_DaedalusMenuBar.vue
  • Related core: cad-core/document/, cad-core/layouts/, cad-core/history/*

Current Architecture Summary

  • CAD document source of truth is synchronized into the Pinia document store.
  • UI events are being migrated from direct state mutation + snapshot history to document operation + history adapter.
  • History command strategy:
    • Entity and selection changes use dedicated command types.
    • Layout and viewport changes are normalized as edit-layouts commands.

Implemented Operation Paths

  • Layer state:
    • set-layer-visibility
    • set-layer-lock
    • set-layer-printable
  • Layout state:
    • set-active-space
    • set-active-layout
  • Viewport state:
    • set-layout-viewport
    • add-layout-viewport
    • remove-layout-viewport
    • set-layout-viewport-lock
  • Title block state:
    • set-layout-title-block
    • set-layout-title-block-field

Adapter Mapping Status

  • Implemented in operationHistoryAdapter.ts:
    • set-selection -> change-selection
    • replace-entities -> edit-entities
    • layer operations -> change-layer-* commands
    • layout/viewport/title operations -> edit-layouts

Remaining Direct-Mutation Risk Zones

  • Live viewport drag preview while pointer is moving intentionally keeps direct updateCadLayout updates.
  • Some non-layout UI functions still use commitHistory snapshot flow by design.

Validation Snapshot

  • Type diagnostics on edited files: no errors.
  • Build command intentionally skipped during this step.

Last updated:

この記事の著者

MECHPHAISTOS | センサーを使わない保全

Yoshitaka Notoです。保全業務に携わり、AI時代の3Kと呼ばれるメンテナンス保全をもっと楽にしたい。 そういった保全ツール開発してます。