3DSlicer22:Module-ExtensionWizard Build Install
生活随笔
收集整理的這篇文章主要介紹了
3DSlicer22:Module-ExtensionWizard Build Install
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1.前言
Slicer模塊典型包含幾種不同類(lèi)型的模塊,如CMake文件、Source文件、資源文件。 在大多數(shù)情況下,為了方便編譯,文件名稱(chēng)和文件中文本字符串的名稱(chēng)需要保持一致。 ExtensionWizard是一個(gè)簡(jiǎn)化創(chuàng)建流程的工具。2.使用GUI進(jìn)入Extension
開(kāi)啟Slicer,選擇ExtensionWizard即可。創(chuàng)建Extension: ExtensionWizard利用Template機(jī)制創(chuàng)建Module和Extension。GUI會(huì)自動(dòng)創(chuàng)建相關(guān)文件并產(chǎn)生代碼。
- 點(diǎn)擊“Create Extension”:
為我們的Extension/Module指定一個(gè)名字,和一個(gè)空的文件夾作為目標(biāo)目錄。OK
- 可選擇地指定Extension/Module的細(xì)節(jié)描述:
- 點(diǎn)擊“Add module to extension”
指定名字和模塊的類(lèi)型。首次開(kāi)發(fā)情況下都會(huì)選用“scripted”作為模塊類(lèi)型,因?yàn)橹挥蠵ython的scripted模塊可以不經(jīng)過(guò)Slicer自定義地Build,就可以創(chuàng)建并使用。OK。
- 勾選“Add selected module to search paths”
- 從Module列表中打開(kāi)我們創(chuàng)建的模塊
3.命令行中2的創(chuàng)建過(guò)程
從上面我們可以得出以下結(jié)論:
- 從源碼中拷貝模板文件夾,并修改名稱(chēng)為ScriptTest,創(chuàng)建相應(yīng)的CMakeList.txt文件和ScriptTest.png圖標(biāo)文件
- 從源碼中拷貝Scripted類(lèi)型的模板,并修改名字為ScriptTest,創(chuàng)建相應(yīng)的CMakeList.txt文件、ScriptTest.py文件、Resource/Icon/ScriptTest.png文件、Testing/CMakeList.txt文件、Testing/Python/CMakeList.txt文件
- cli:提供自定義命令行接口
- loadable:在Slicer中提供一個(gè)新的功能/C++
- scripted:在Slicer中提供一個(gè)新的功能/Python
4.Build Extension
如果我們的程序不是使用“Pure Python”編寫(xiě)的,若想使用這個(gè)模塊,那么我們就必須要先學(xué)會(huì)編譯它。 Notice:若想Build Extension,我們必須已經(jīng)在本機(jī)上編譯過(guò)源碼了。 我的Extension源代碼位于D:\Slicer4D\Slicer-build\ModuleTest\myLoadable 通用編譯步驟:- CMake:
- 選擇源代碼文件和目標(biāo)文件(例如:myLoadable-build)
- 在CMake中設(shè)置Slicer_DIR(例如:D:/Slicer4D/Slicer-build)
- configure & generate
- VisualStudio
- 打開(kāi)myLoadable.sln,選擇Debug(Debug or Release要根據(jù)Slicer-build的版本選取)
- Project->Build Solution
5.Install Extension
對(duì)于Slicer而言,并沒(méi)有“Install”的說(shuō)法,因?yàn)镾licer采用的Plug-in機(jī)制,所以我們可以理解為注冊(cè)就好:
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 (因?yàn)镻ure Python 無(wú)需編譯可以直接使用)
6.參考文獻(xiàn)
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總結(jié)
以上是生活随笔為你收集整理的3DSlicer22:Module-ExtensionWizard Build Install的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Windows下配置环境变量和需不需要重
- 下一篇: 3DSlicer23:Module-Cr