3DSlicer22:Module-ExtensionWizard Build Install
生活随笔
收集整理的這篇文章主要介紹了
3DSlicer22:Module-ExtensionWizard Build Install
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.前言
Slicer模塊典型包含幾種不同類型的模塊,如CMake文件、Source文件、資源文件。 在大多數情況下,為了方便編譯,文件名稱和文件中文本字符串的名稱需要保持一致。 ExtensionWizard是一個簡化創建流程的工具。2.使用GUI進入Extension
開啟Slicer,選擇ExtensionWizard即可。創建Extension: ExtensionWizard利用Template機制創建Module和Extension。GUI會自動創建相關文件并產生代碼。
- 點擊“Create Extension”:
為我們的Extension/Module指定一個名字,和一個空的文件夾作為目標目錄。OK
- 可選擇地指定Extension/Module的細節描述:
- 點擊“Add module to extension”
指定名字和模塊的類型。首次開發情況下都會選用“scripted”作為模塊類型,因為只有Python的scripted模塊可以不經過Slicer自定義地Build,就可以創建并使用。OK。
- 勾選“Add selected module to search paths”
- 從Module列表中打開我們創建的模塊
3.命令行中2的創建過程
從上面我們可以得出以下結論:
- 從源碼中拷貝模板文件夾,并修改名稱為ScriptTest,創建相應的CMakeList.txt文件和ScriptTest.png圖標文件
- 從源碼中拷貝Scripted類型的模板,并修改名字為ScriptTest,創建相應的CMakeList.txt文件、ScriptTest.py文件、Resource/Icon/ScriptTest.png文件、Testing/CMakeList.txt文件、Testing/Python/CMakeList.txt文件
- cli:提供自定義命令行接口
- loadable:在Slicer中提供一個新的功能/C++
- scripted:在Slicer中提供一個新的功能/Python
4.Build Extension
如果我們的程序不是使用“Pure Python”編寫的,若想使用這個模塊,那么我們就必須要先學會編譯它。 Notice:若想Build Extension,我們必須已經在本機上編譯過源碼了。 我的Extension源代碼位于D:\Slicer4D\Slicer-build\ModuleTest\myLoadable 通用編譯步驟:- CMake:
- 選擇源代碼文件和目標文件(例如:myLoadable-build)
- 在CMake中設置Slicer_DIR(例如:D:/Slicer4D/Slicer-build)
- configure & generate
- VisualStudio
- 打開myLoadable.sln,選擇Debug(Debug or Release要根據Slicer-build的版本選取)
- Project->Build Solution
5.Install Extension
對于Slicer而言,并沒有“Install”的說法,因為Slicer采用的Plug-in機制,所以我們可以理解為注冊就好:
3DSlicer->Edit->Application Setting Dialog->Module->Add Additional Path:
- ~/code/MyExtension/build/lib/Slicer-<version>/qt-loadable-modules
- ~/code/MyExtension/build/lib/Slicer-<version>/qt-scripted-modules
- ~/code/MyExtension/MyPythonModule (因為Pure Python 無需編譯可以直接使用)
6.參考文獻
1.ExtensionWizard:https://www.slicer.org/wiki/Documentation/Nightly/Developers/ExtensionWizard 2.BuildExtension:https://www.slicer.org/wiki/Documentation/Nightly/Developers/FAQ#How_to_build_an_extension_.3F 3.InstallExtension:https://www.slicer.org/wiki/Documentation/Nightly/Developers/ExtensionWizard總結
以上是生活随笔為你收集整理的3DSlicer22:Module-ExtensionWizard Build Install的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows下配置环境变量和需不需要重
- 下一篇: QQ尾巴病毒的Visual C++实现探