【发布时间】:2014-06-06 21:19:51
【问题描述】:
我正在尝试将参数从 ImageJ 插件传递到 imageJ 宏。基本上,我从我的 ImageJ Java 插件中调用宏来打开一堆图像,并希望能够将一个整数值传递给插件,以便能够将其附加到文件路径的末尾。
现在我可以打开一堆图像,对插件内的活动图像执行我需要执行的任何操作,然后关闭图像堆栈以便我可以打开下一个图像堆栈。
这是我在 Java 插件中所做的基本格式:
(general import stuff)
import ij.plugin.Macro_Runner;
Macro_Runner test_runner = new Macro_Runner();
test_runner.run("OpenFrameSequence.ijm");
// pixel analysis
test_runner.run("closeMacro.ijm");**
这是宏 OpenFrameSequence.ijm:
var x = 0;
x = getNumber("Bias Frame Sequence Length:", x);
run("Image Sequence...", "open=[C:\\Documents and Settings\\Developer\\Desktop\\PLPT_IMAGEJ_PICS\\BiasFrameSequence\\1.jpg] number=x sort use");
这里是宏 closeMacro.imj
close();
上面插件部分的第四行是我遇到的问题,我可以调用另一个函数runMacro();,它在这里定义:
http://rsbweb.nih.gov/ij/developer/api/ij/plugin/Macro_Runner.html
所以我想做的是:
int i = 1;
test_runner.runMacro("OpenFrameSequence.ijm", i);
然后,在宏中,取 i 的值并将其用作变量。 runMacro() 函数似乎不起作用(我也尝试发送一个字符串来代替 int i)。
任何帮助将不胜感激。
【问题讨论】:
标签: java plugins macros imagej