How user move lines that is drawed in a figure interactivly and extract the data of new location of lines ?

3 ビュー (過去 30 日間)
After executed some codes; a result will come out with 4 lines that made a rectangular and drawn in a figure (with image background). User wants to move these lines (one or more lines) of rectangular (while they be stayed rectangular) to new location interactivly. The new data of these lines is required for using. Maybe the angles of the lines be changed(no parallel). Based on the attachment picture, first location is in red lines. User wants to change the location of lines to the 2nd location by mouse (green lines). I have the points of edges (cross lines) of lines red lines. I want the points of edges (cross lines) of 2nd location (green lines).
I prefer the function be able to use Matlab coder but it's not necessary.
  3 件のコメント
marya anderson
marya anderson 2018 年 5 月 31 日
編集済み: marya anderson 2018 年 6 月 3 日
Yes, impoly works very well. In my case, I used imrect and impoly well. Thank you so mush. It was really helpful.
marya anderson
marya anderson 2018 年 6 月 3 日
Thank you sloppydisk for ur answer.it works perfectly. Please put ur answer in answer box, thus, I can accept your answer. I used it in following code (ex; doc impoly):
PG = impoly(gca, P); %% P comes from my defualt Points api = iptgetapi(PG); % % Set the color of the polygon to yellow. api.setColor('yellow'); %% Create the function that constrains the movement of the polygon, specifying the boundary of the image as the limits, and then set the value of the setPositionConstraintFcn property. fcn = makeConstrainToRectFcn('impoly',get(gca,'XLim'),get(gca,'YLim')); api.setPositionConstraintFcn(fcn);
%%waiting till user double click then new points be update. wait(PG); UpdatedPoints = getPosition(PG);

サインインしてコメントする。

採用された回答

sloppydisk
sloppydisk 2018 年 6 月 3 日
Take a look at
doc impoly
or
doc imline
For example:
imshow('gantrycrane.png');
impoly

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

製品


リリース

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by