view arrowAnnotation.m @ 1098:36d092a00040 feature/dataspline

Bugfix Curve.arcLengthParametrization() by using linear interpolation instead of higher-order spline for parameter as a funciton of arclength. Generalize dataSpline() to curves in higher dimensions.
author Martin Almquist <malmquist@stanford.edu>
date Tue, 09 Apr 2019 09:50:44 -0700
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