This commit is contained in:
2026-03-19 14:54:09 +03:00
parent 7145b66e0e
commit 37036f8f75
26 changed files with 5466 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
@startuml
title Zivro: компонентная архитектура
skinparam componentStyle rectangle
skinparam shadowing false
package "UI Layer" {
[main.zig\nEvent Loop]
[ui/*\nMenu/Tab/Panels]
[Canvas.zig\nViewport + Redraw]
}
package "Application State" {
[WindowContext.zig\nOpenDocument tabs]
[models/Document.zig\nObject tree]
[models/Object.zig\nProperties + Children]
}
package "Render Layer" {
[RenderEngine.zig\nInterface]
[CpuRenderEngine.zig\nCPU backend]
[cpu/draw.zig\nRecursive draw]
[cpu/pipeline.zig\nTransforms + blend]
[cpu/line.zig]
[cpu/ellipse.zig]
[cpu/broken.zig]
}
package "Persistence" {
[persistence/json_io.zig]
}
[main.zig\nEvent Loop] --> [WindowContext.zig\nOpenDocument tabs]
[ui/*\nMenu/Tab/Panels] --> [WindowContext.zig\nOpenDocument tabs]
[Canvas.zig\nViewport + Redraw] --> [RenderEngine.zig\nInterface]
[Canvas.zig\nViewport + Redraw] --> [models/Document.zig\nObject tree]
[WindowContext.zig\nOpenDocument tabs] --> [Canvas.zig\nViewport + Redraw]
[WindowContext.zig\nOpenDocument tabs] --> [CpuRenderEngine.zig\nCPU backend]
[RenderEngine.zig\nInterface] <|.. [CpuRenderEngine.zig\nCPU backend]
[CpuRenderEngine.zig\nCPU backend] --> [cpu/draw.zig\nRecursive draw]
[cpu/draw.zig\nRecursive draw] --> [cpu/pipeline.zig\nTransforms + blend]
[cpu/draw.zig\nRecursive draw] --> [cpu/line.zig]
[cpu/draw.zig\nRecursive draw] --> [cpu/ellipse.zig]
[cpu/draw.zig\nRecursive draw] --> [cpu/broken.zig]
[models/Document.zig\nObject tree] --> [models/Object.zig\nProperties + Children]
[persistence/json_io.zig] ..> [models/Document.zig\nObject tree] : save/load
@enduml