Using impoly on a surface plot.

I would like to use Matlab's impoly (or any of the imroi functions) on a 3D surface. However, there seems to be a problem when calling createMask.
[X,Y,Z] = peaks(101);
surf(X,Y,Z);
h = impoly(gca);
mask = createMask(h);
Interesting is that this works.
pos = getPosition(h)
Any help would be much appreciated.

回答(1 个)

Massimo Zanetti
Massimo Zanetti 2016-10-6

3 个投票

After launching your code, click on the sufrace and impoly will work.

1 个评论

I don't follow.
This part of the example works fine:
[X,Y,Z] = peaks(101);
surf(X,Y,Z);
h = impoly(gca);
However, when I call
mask = createMask(h);
I get the following error: Error using imroi/parseInputsForCreateMask (line 103) createMask expects a current figure containing an image.
Is there a way around this?

请先登录,再进行评论。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by