日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

3DSlicer23:Module-Create Loadable

發(fā)布時間:2025/3/15 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 3DSlicer23:Module-Create Loadable 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.Overview

可加載模塊可以看做是Logic和UI聯(lián)合構(gòu)成的。

2.Creating Loadable Module

  • 創(chuàng)建模塊目錄
建議使用ExtensionWizard采用模板的方法生成文件和文件目錄。
  • Build
可以使用CMake GUI、也可以使用命令行的方法。注意的是一定要指定Slicer_DIR為實體。 例如:Slicer_DIR=D:\Slicer4D\Slicer-build
  • Installing
之前也談到過這一點,對于Slicer的機制,并沒有“Installing”一說。我們可以理解為對插件的注冊。 在Application Setting Dialog中設(shè)置Addition Module Path的時候,路徑指示到模塊的庫目錄。 例如:D:\Slicer4D\Slicer-build\ModuleTest\myLoadable-build\lib\Slicer-4.7\qt-loadable-modules\Debug
  • Check the module
打開Slicer.exe,就可以在Module Navigation Interface中找到我們新建立的模塊。
Slicer官網(wǎng)提供給了我們修改module名字的方法如4,本人不建議改來改去的麻煩。
  • 使用啟動器(Launcher)打開Qt Designer
在Slicer開發(fā)中,我們慢慢會發(fā)現(xiàn)啟動VS、QtDesigner等開發(fā)環(huán)境和以往很不同,往往是在命令行中利用Launcher(Slicer.exe)進行啟動。 d: cd Slicer4D/Slicer-build Slicer.exe --designer
  • Change the UI
使用Qt Designer,編輯模塊的UI文件,例如,我的UI文件位于: D:\Slicer4D\Slicer-build\ModuleTest\myLoadable\myLoadable\Resources\UI 通過上面的展圖,可以發(fā)現(xiàn)我這里是存在兩個UI文件的: qSlicermyLoadableFooBarWidget.ui、qSlicermyLoadableModuleWidget.ui。細節(jié)參考3.2.
  • Edit Module Files
Slicer4/Modules/Loadable/MY_MODULE_NAME/qSlicerMY_MODULE_NAME.[h|cxx]
Slicer4/Modules/Loadable/MY_MODULE_NAME/qSlicerMY_MODULE_NAMEWidget.[h|cxx]
Slicer4/Modules/Loadable/MY_MODULE_NAME/Logic/vtkSlicerMY_MODULE_NAMELogic.[h|cxx]

3.如何使用QtDesigner進行開發(fā)?


3.1 加載CTK和MRML部件

為了在Qt Designer中擁有CTK Widget和MRML Widget部件,Qt Designer提供了兩個選項:
  • the first is to copy the CTK and MRML plugin libraries into %QT_DIR%/plugins/designer
  • the second is to set the environment variable QT_PLUGIN_PATH to the directory Slicer-build/bin containing the subdirectory designer with the plugin libraries.
Windows Note: 利用正確的環(huán)境變量運行Qt Designer:Slicer.exe --designer。 如果Slicer處于Debug模式下,那么Qt也必須用Debug模式。

3.2 Building & Installing


官網(wǎng)給的Build方法比較麻煩,這里我嘗試了一種相對比較簡單的方法:
  • UI設(shè)計好之后保存;
  • 利用CMake進行編譯生成*****.sln
  • 利用VisualStudio打開*****.sln,進行編譯
  • 按照3方法進行注冊即可
VisualStudio編譯是為了根據(jù)UI文件生成ui_qSlicer_*Name*_ModuleWidget.h,例如本例生成了ui_qSlicermyLoadableModuleWidget.h。 該文件被qSlicermyLoadableModuleWidgetGenericTest.cxx使用。

4.模塊間的依存

原理如5.6所示,具體還有待研究。

5.參考資料

1.Creating:https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/CreateLoadableModule 2.Building:https://www.slicer.org/wiki/Documentation/Nightly/Developers/ExtensionWizard#Building 3.Installing:https://www.slicer.org/wiki/Documentation/Nightly/Developers/ExtensionWizard#.22Installation.22 4.Checking:https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/CreateLoadableModul 5.QtDesigner:https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/QtDesigner 6.ModuleDependency:https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/CreateLoadableModule 與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的3DSlicer23:Module-Create Loadable的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。