how to force Draggable points to move along a line?
    조회 수: 2 (최근 30일)
  
       이전 댓글 표시
    
Hi All. I would like to use impoint to generate a draggable point. But I want to force it to move along a line. I try to do so by setPosition, but it does not work properly. Any help?
function test()
      h1 = impoint(gca,[5, 5])
      setString(h1,'h1');
      addNewPositionCallback(h1,@(h1) CallThis(1,[1 2],[ 2 ]));
      axis([0 10 0 10])
      function CallThis(varargin)
          pos = h1.getPosition()
          h1.setPosition([pos(1,1), 2*pos(1,1)])
      end
end
댓글 수: 2
  Jan
      
      
 2013년 5월 14일
				"It does not work properly" is a vague description only. Please do not let us guess, but explain the difference between your expectations and the results.
답변 (1개)
  Roman Willi
 2018년 7월 2일
        move along a line:
    obj.dragPoint = impoint();
    hp = addNewPositionCallback(obj.dragPoint,@(pos) point_move(obj,pos));
    function point_move(obj, pos)
        pos = [.....] % Calc Y Point of line
        axilim = [.....] % X axi limit
        fcn = makeConstrainToRectFcn('impoint',axilim, [pos pos]);
        setPositionConstraintFcn(obj.dragPoint, fcn);
    end
댓글 수: 0
참고 항목
카테고리
				Help Center 및 File Exchange에서 Map Display에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


