MATLAB:getpts(ax)和getpts(图)之间的差异?

MATLAB:getpts(ax)和getpts(图)之间的差异?,matlab,Matlab,我在看Marc的答案,但我无法让getpts函数按所描述的那样工作。(顺便说一句,我只想对马克的答案发表评论,但该网站直到50岁的代表才允许我发表评论。)根据文件,马克使用 [x,y]=getpts(ax) 应该将用户的点选择限制在轴内,并禁止在图形的其余部分选择点。对吗 好吧,如果是这样的话,它就不起作用了。我正在编写一个程序,希望用户指定要切掉的图像的一部分。我通过imagesc()命令制作了一个带有图像的图形。然后,我尝试执行以下操作: 设置(0,'CurrentFigure',1)(因为

我在看Marc的答案,但我无法让getpts函数按所描述的那样工作。(顺便说一句,我只想对马克的答案发表评论,但该网站直到50岁的代表才允许我发表评论。)根据文件,马克使用

[x,y]=getpts(ax)

应该将用户的点选择限制在轴内,并禁止在图形的其余部分选择点。对吗

好吧,如果是这样的话,它就不起作用了。我正在编写一个程序,希望用户指定要切掉的图像的一部分。我通过
imagesc()
命令制作了一个带有图像的图形。然后,我尝试执行以下操作:

设置(0,'CurrentFigure',1)
(因为程序打开了多个图形)

ax=gca

[x,y]=getpts(ax)

小十字光标出现了,我可以单击并选择图形中的任何位置,包括图像外部的灰色边界区域。这与我运行
[x,y]=getpts(gcf)时得到的行为完全相同那么,这里发生了什么??无论哪种方式,点选择都允许在整个图形窗口中进行,而不仅仅限于我的图像所在的轴区域


我的Matlab版本是R2014a。

您可以查看
x,y
并根据矩阵尺寸拒绝图像上的任何点。