How can i measure length interactively in axes in gui?

7 vues (au cours des 30 derniers jours)
Abarairenji
Abarairenji le 6 Août 2012
I need to use interactive rulers for one of my axes in my gui. I need to measure length of a line i draw interactively in image. And see its length. All of my pictures are 20cm x 20cm so i know the lenght of my image so it will be easier. But i dont know how can i do it interactively in my gui creating ruler button. Thanks for helps...
Respectfully yours; Abarairenji

Réponse acceptée

Image Analyst
Image Analyst le 7 Jan 2014
Use imdistline() in the Image Processing Toolbox.

Plus de réponses (1)

Caleb
Caleb le 8 Août 2012
You should be able to use something like this:
figure;
axis manual
ruler = imline(gca);
% Get original position
pos = getPosition(ruler);
% Get updated position as the ruler is moved around
id = addNewPositionCallback(ruler,@(pos) title(mat2str(pos,3)));
You can use the getPosition function to get the original position and as you stretch it or drag it around, you use addNewPositionCallback to get the updated position. From here you can calculate the length using Pythagorean's theorem.
  1 commentaire
Zoltan
Zoltan le 7 Jan 2014
You need Image Processing Toolbox.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Image Processing and Computer Vision dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by