黄金民的个人文档

黄金民的个人文档


重做

<h2>类图</h2> <p><strong>LabMainWnd</strong>:播放器UI主窗口 <strong>LabLearnStep_Wnd</strong>:实验学习步骤UI窗口 <strong>MasterController</strong>:主控外壳 <strong>CourseScene</strong>:处理实验用品序列化数据类 <strong>StepManager</strong>:控制实验步骤播放业务的管理器 <strong>TeachingStepController</strong>:控制学习步骤的控制器类 <strong>IVLabExprimentStep</strong>:实验步骤控制器接口</p> <pre><code class="language-plantuml">@startuml class LabMainWnd { Dictionary&lt;int, string&gt; _stepSaveData void RedoStepFromBegin(); void StartRedoStep(int index) void ReloadStepData() } class LabLearnStep_Wnd { void UpdateLearnStepState_Finish(int index) void UpdateLearnStepState_Waiting(int index) } class MasterController { void MasterMsgEvent_Register() void MasterMsgEvent_UnRegister() void StepRestartFrom(string msgName, object content); } class CourseScene { void GetEquipObjectModel(); } class StepManager { void RestartFrom(int stepIndex) } class TeachingStepController { void Init() void Start() void Stop() } interface IVLabExprimentStep { void Init() void Stop() void Start() } LabLearnStep_Wnd --* LabMainWnd LabMainWnd --&gt; CourseScene MasterController --&gt; StepManager TeachingStepController --* StepManager IVLabExprimentStep --* TeachingStepController note "通过消息" as N1 LabMainWnd .. N1 N1 .. MasterController @enduml</code></pre> <h2>时序图</h2> <pre><code class="language-plantuml">participant User User -&gt; LabMainWnd: StartRedoStep activate LabMainWnd LabMainWnd -&gt; LabMainWnd: ResetView() LabMainWnd -&gt; LabMainWnd: HideOherButton() LabMainWnd -&gt; LabMainWnd: OpenWaitingWnd() LabMainWnd -&gt; LabMainWnd: UpdateStepBegaviourByIndex() LabMainWnd -&gt; LabMainWnd: ReloadProcess() activate LabMainWnd LabMainWnd -&gt; LabLearnStep_Wnd: ActiveLearnStepWnd() LabLearnStep_Wnd --&gt; LabMainWnd LabMainWnd -&gt; LabMainWnd: StopEngine() LabMainWnd -&gt; LabMainWnd: ReloadStepData() activate LabMainWnd LabMainWnd -&gt; CourseScene:ResetEquipObjectModel CourseScene --&gt; LabMainWnd: LabMainWnd -&gt; ICoursewarePlayer:Rebuild3DSceneRuntimeAsync ICoursewarePlayer --&gt; LabMainWnd LabMainWnd -&gt; MasterController: sendMsg(Master_Step_RestartFrom) activate MasterController MasterController -&gt; StepManager:RestartFrom StepManager -&gt; TeachingStepController:Start TeachingStepController --&gt; StepManager StepManager --&gt; MasterController MasterController --&gt; LabMainWnd LabMainWnd -&gt; LabMainWnd: ReopenEngine() @enduml</code></pre>

页面列表

ITEM_HTML