flo-utils
Version:
19 lines (18 loc) • 892 B
JavaScript
// 三角函数画直线中间的箭头
var drawLineArrow = function drawLineArrow(x1, y1, x2, y2) {
var path;
var Par = 10.0;
var slopy = Math.atan2(y1 - y2, x1 - x2);
var cosy = Math.cos(slopy);
var siny = Math.sin(slopy);
path = "M".concat(x1, ",").concat(y1);
var x3 = (Number(x1) + Number(x2)) / 2;
var y3 = (Number(y1) + Number(y2)) / 2;
path += " L".concat(x3, ",").concat(y3);
path += " L".concat(Number(x3) + Number(Math.ceil(Par * cosy - Par / 2.0 * siny)), ",").concat(Number(y3) + Number(Math.ceil(Par * siny + Par / 2.0 * cosy)));
path += " L".concat(x3, ",").concat(y3);
path += " L".concat(Number(x3) + Number(Math.ceil(Par * cosy + Par / 2.0 * siny)), ",").concat(Number(y3) - Number(Math.ceil(Par / 2.0 * cosy - Par * siny)));
path += " L".concat(x3, ",").concat(y3, " L").concat(x2, ",").concat(y2);
return path;
};
export default drawLineArrow;