Using impoly on a surface plot.

5 views (last 30 days)
Thorsten Becker
Thorsten Becker on 6 Oct 2016
Commented: Thorsten Becker on 6 Oct 2016
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.

Answers (1)

Massimo Zanetti
Massimo Zanetti on 6 Oct 2016
After launching your code, click on the sufrace and impoly will work.
  1 Comment
Thorsten Becker
Thorsten Becker on 6 Oct 2016
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?

Sign in to comment.

Categories

Find more on Graphics Object Properties in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!