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:名字“宏”没有定义 。
有什么建议吗?谢谢!
编辑: 重新启动斐济再次似乎已使这个问题消失。
那是不是*进口ij.macro.Interpreter不同“ –
看一看这个文档:http://www.ster.kuleuven.ac.be/~rik/ hdp/import-tutorial/ch01s02.html。 – Marcel
太好了,谢谢! –