I am trying to draw a rectangle that has a width (lx) and length (ly) defined by user input with an edit text field using GUIDE. For some reason, the rectangle is not drawing correctly. Below I have the variables and corresponding values where X(1) and Y(1) is the location of the user's mouse click. For some reason, even though lx prints as the correct value, 2, when used in the equation X(1)-lx, lx suddenly becomes 50 and I have no idea why.
disp(lx)
disp(X(1))
disp(X(1)-lx)
disp(X(1)+lx)
2
299
249
349

 Réponse acceptée

Rik
Rik le 24 Fév 2018

1 vote

disp is hiding the fact that lx actually contains a char. If you do double('2') you will see the result is 50. To fix you calculations, use something like str2double.

Plus de réponses (0)

Catégories

En savoir plus sur Function Creation dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by