ImageJ选定位置后一键截图代码

问题

在PPT甚至文章展示的时候

需要使用单个细胞的截图

为了保持截图的长宽和Scale一致

如果使用一般的截图工具

比如GreenShot或者Picpick

就不是很方便

如果能够只在单细胞中心点击一下

程序自动截取好制定长宽的图像

就非常完美了。

下面就开始用ImageJ的宏语言进行编程了。


编程思路

1. 用户点击图像某一点,并记录该点坐标

2. 基于特定点坐标截取指定大小的图像


代码实现
/*
 * 单细胞截图工具
 * 细胞位置调整,并且将其他区域调整颜色
 * input:大图,包含多个细胞程序运行后
 * 左键点击细胞中央
 * output:1001*1001单细胞图像
 */

//截图区域半径
size = 500;

//主程序
leftButton = 16;
flags = 0;
ID = getTitle();
while(flags&leftButton == 0) getCursorLoc(x,y,z,flags);
showMessage("Mark Contour Center:"+x+","+y);
makeRectangle(x-size,y-size,2*size+1,2*size+1);
run("Duplicate...","title=cell_"+ID);
大家可以对代码中的size进行更改,也不一定非得是正方形的。

你可能感兴趣的:(ImageJ)