imdistline

5 次查看(过去 30 天)
Razvan
Razvan 2011-10-17
Hi
Is it possible to disable the distance label on the line created by imdistline? If the two end points are too close, then sometimes the label is on top of one of the end points...
Thanks,
Razvan

采纳的回答

Image Analyst
Image Analyst 2011-10-17
It's in the help, but not a real explicit example like my example for you below:
h = imdistline(gca);
api = iptgetapi(h);
api.setLabelVisible(false);
  3 个评论
Razvan
Razvan 2011-10-17
Hmm... for some reason it's not working for me...
I have in my code:
hDist1 = imdistline(hPlotAxes);
hDist2 = imdistline(hPlotAxes);
pause();
api1 = iptgetapi(hDist1);
api1.setLabelVisible(false);
api2 = iptgetapi(hDist2);
api2.setLabelVisible(false);
dist1 = api1.getDistance();
dist2 = api2.getDistance();
Am I doing something wrong here?
Razvan
Razvan 2011-10-18
Nevermind... if I move the pause command after setLabelVisible, then it works.
Thanks

请先登录,再进行评论。

更多回答(1 个)

norfaizayu
norfaizayu 2012-2-2
can you give me the example of imdistline?i cannot get it how it function.
  1 个评论
Razvan
Razvan 2012-2-2
Here is an example:
% load an image
load flujet
imagesc(X);
% set up the measuring tool
h = imdistline(gca);
api = iptgetapi(h);
api.setLabelVisible(false);
% pause -- you can move the edges of the segment and then press a key to continue
pause();
% get the distance
dist = api.getDistance();
% print the result
fprintf('The length of the segment is: %0.2f pixels \n', dist)

请先登录,再进行评论。

标签

Community Treasure Hunt

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

Start Hunting!

Translated by