view arrowAnnotation.m @ 982:a0b3161e44f3 feature/getBoundaryOp

Add the following methods in LaplaceCurvilinear: getBoundaryOperator, getBoundaryQuadrature, getBoundaryBorrowing. Remove get_boundary_ops. Make interface and boundary_condition methods use the new methods.
author Martin Almquist <malmquist@stanford.edu>
date Tue, 08 Jan 2019 11:51:24 +0100
parents 2412f407749a
children
line wrap: on
line source

% Draw an arrow from p1 to p2, with text attached
function [h] = arrowAnnotation(p1,p2)
    ah = gca;
    xl = ah.XLim(1);
    xr = ah.XLim(2);

    yl = ah.YLim(1);
    yr = ah.YLim(2);

    dx = xr - xl;
    dy = yr - yl;

    s = [
        ah.Position(1) + (p1(1) - xl)/dx*ah.Position(3),
        ah.Position(1) + (p2(1) - xl)/dx*ah.Position(3),
    ];
    t = [
        ah.Position(2) + (p1(2) - yl)/dy*ah.Position(4),
        ah.Position(2) + (p2(2) - yl)/dy*ah.Position(4),
    ];

    h = annotation('arrow', s, t);
end