3DSlicer14:Loadable Module
生活随笔
收集整理的這篇文章主要介紹了
3DSlicer14:Loadable Module
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1.簡(jiǎn)述
可加載模塊是針對(duì)Slicer設(shè)計(jì)的C++ Plugin(插件)。他們?yōu)樘囟ǖ墓δ芏xGUI,因?yàn)樗麄儗?duì)應(yīng)用程序具有完全控制權(quán)。- C++共享庫(kù)
- 全權(quán)控制UI(基于Qt)和Slicer的內(nèi)部構(gòu)件(如MRML、logic、顯示管理)
- 為繁重的計(jì)算進(jìn)行優(yōu)化
2.何如設(shè)計(jì)Loadable Module?
PPT參考資料: https://na-mic.org/wiki/File:LoadableModules.pptx2.1 Slicer模塊的結(jié)構(gòu)
- Slicer/Modules/Core
- Slicer/Modules/CLI
- Slicer/Modules/Loadable:Colors、CropVolume、Data、Models、Tractograph、Transform、Volume、VolumeRendering
- Slicer/Modules/Scripted
2.2 創(chuàng)建 Loadable Module
- Module Plugin整體結(jié)構(gòu)
- 模塊邏輯Module Logic和模塊窗口部件Module Widget
2.3 Life of a module
1).啟動(dòng)Slicer2).Slicer發(fā)現(xiàn)我們創(chuàng)建的模塊MyModule
- 解決依賴(lài)項(xiàng)
- 在Menu中添加模塊標(biāo)題
- 創(chuàng)建模塊邏輯Module Logic:選擇性的注冊(cè)新的節(jié)點(diǎn)Nodes
- 模塊設(shè)置:選擇性地注冊(cè)IO、顯示管理DisplayableManager
- 注冊(cè)的IO可以讀取數(shù)據(jù)
- 顯示IO選項(xiàng)(用AddData對(duì)話(huà)框)
- 通過(guò)IO加載文件
2.4 代碼分析
這里分析一下PPT中給的代碼邏輯示意圖:原理圖(SIGNAL-SLOT、Event-SLOT)
實(shí)際運(yùn)行流程圖(SINGAL-SLOT→Synchronize→Event-SLOT) 更詳細(xì)的資料,請(qǐng)參考如下: How to creat a Loadable Module? https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/CreateLoadableModule 與50位技術(shù)專(zhuān)家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖
總結(jié)
以上是生活随笔為你收集整理的3DSlicer14:Loadable Module的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 3DSlicer13:Command L
- 下一篇: Internet Explorer 6