AppDesigne​rで複数の図形をプロ​ットした座標軸上での​クリックした点の座標​を取得する方法を教え​てください。

座標軸のコールバック上でcrurentPointを使ったところ、図形がプロットされていない点での座標は取得できましたが、
図形上の点ではクリックしても座標を取得することができませんでした。
代わりにginputを使用しましたが、新しく作成されたfigure上での座標の取得しかできず、アプリ上の座標軸に対しての座標の取得ができませんでした。

 채택된 답변

4 개 추천

図形をクリックすると、図形へのクリック判定になり、座標軸のコールバック判定が発生していないと考えられます。
これを回避するには、図形のプロパティのHitTestをoffにすると、図形のクリック判定がなくなり、かわりに親オブジェクトへのクリック判定になります。
下記は、patchで作成した三角形のHitTestをオフにし、三角形上をクリックしても、uiaxesで定義したButtonDownFcnが実行される例です。
a = uiaxes('Units', 'normalized', 'Position', [0.1 0.1 0.8 0.8], 'ButtonDownFcn', @(src, event) disp(src.CurrentPoint));
patch(a, [0,1,0.5], [0,0,1], [.5,.5,.5], 'HitTest', 'off');

댓글 수: 1

旬太
旬太 2023년 4월 25일
図形のプロパティのHitTestをoffにすることで、図形へのクリック判定がなくなり、座標軸のコールバック判定となりました。
とても助かりました。ありがとうございます。

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터 및 File Exchange에서 視覚的探索에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!