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

 Akzeptierte Antwort

Image Analyst
Image Analyst am 17 Okt. 2011

0 Stimmen

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 Kommentare

Razvan
Razvan am 17 Okt. 2011
Thanks!
Razvan
Razvan am 17 Okt. 2011
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 am 18 Okt. 2011
Nevermind... if I move the pause command after setLabelVisible, then it works.
Thanks

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

norfaizayu
norfaizayu am 2 Feb. 2012

1 Stimme

can you give me the example of imdistline?i cannot get it how it function.

1 Kommentar

Razvan
Razvan am 2 Feb. 2012
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)

Melden Sie sich an, um zu kommentieren.

Kategorien

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by