2016-09-15 47 views
0

我試圖從一個宏傳遞參數到宏中運行的插件,但插件返回錯誤,當我嘗試檢索傳遞的字符串參數。我相信這意味着我需要導入一個類,但是我試過的所有東西都沒有奏效。下面的代碼:斐濟Jython:Macro.getOptions()返回錯誤「'宏'未定義」

from ij import IJ, ImagePlus, WindowManager, ImageStack 
from ij.process import FloatProcessor, ImageProcessor, ByteProcessor 
from ij.gui import ProgressBar, PointRoi 
from ij.measure import ResultsTable 

import ij 
import ij.macro.Interpreter 

import java.util.ArrayList as ArrayList 

#stackOpen = IJ.openImage("/home/srammie/Pictures/Chain_Demo1/chainStack1.tif") 
imageOpen = WindowManager.getCurrentImage() 
imageOpenTitle = imageOpen.getTitle() 
imageOpenTitle = imageOpenTitle.split("-") 
amplitude = imageOpenTitle[0] 
#imageOpen = IJ.openImage("/home/srammie/Pictures/chain_slap_eval1/summaryImage1.tif") 
summaryImage = imageOpen.getProcessor() 
print amplitude + " image being analyzed!" 

dupImageOpen = imageOpen.createImagePlus() 
dupSummaryImage = imageOpen.getProcessor().duplicate() 
dupSummaryImageTitle = amplitude + "_resultsImage" 
dupImageOpen.setProcessor(dupSummaryImageTitle, dupSummaryImage) 

lowerBoundArray = ArrayList() 
lowerBoundArrayRight = ArrayList() 
lowerBoundArrayLeft = ArrayList() 
upperBoundArray = ArrayList() 
upperBoundArrayRight = ArrayList() 
upperBoundArrayLeft = ArrayList() 
deltaArray = ArrayList() 
deltaArrayRight = ArrayList() 
deltaArrayLeft = ArrayList() 
largestDelta = 0 
smallestDelta = 100 

#print "Break" 
pRoi = ArrayList() 

arguments = Macro.getOptions() 
arg = arguments.split(" ") 
for i in range(0, len(arg)-1): 
    argString = arg[i].split("=") 
    pRoi.add(argString[1]) 

這個腳本是工作對我來說是第一次創建,但在重新啓動斐濟後,腳本開始返回錯誤

NameError:名字「宏」沒有定義

有什麼建議嗎?謝謝!

編輯: 重新啓動斐濟再次似乎已使這個問題消失。

回答

1

您沒有導入宏類。我改變了進口:

from ij import IJ, ImagePlus, WindowManager, ImageStack, Macro 
from ij.process import FloatProcessor, ImageProcessor, ByteProcessor 
from ij.gui import ProgressBar, PointRoi 
from ij.measure import ResultsTable 
from ij.macro import Interpreter 
from java.util import ArrayList 
+0

那是不是*進口ij.macro.Interpreter不同「 –

+0

看一看這個文檔:http://www.ster.kuleuven.ac.be/~rik/ hdp/import-tutorial/ch01s02.html。 – Marcel

+0

太好了,謝謝! –