32 lines
1.3 KiB
Plaintext
32 lines
1.3 KiB
Plaintext
define(function (require) {
|
|
|
|
return function (ecModel) {
|
|
ecModel.eachSeriesByType('lines', function (seriesModel) {
|
|
var coordSys = seriesModel.coordinateSystem;
|
|
var fromData = seriesModel.fromData;
|
|
var toData = seriesModel.toData;
|
|
var lineData = seriesModel.getData();
|
|
|
|
var dims = coordSys.dimensions;
|
|
fromData.each(dims, function (x, y, idx) {
|
|
fromData.setItemLayout(idx, coordSys.dataToPoint([x, y]));
|
|
});
|
|
toData.each(dims, function (x, y, idx) {
|
|
toData.setItemLayout(idx, coordSys.dataToPoint([x, y]));
|
|
});
|
|
lineData.each(function (idx) {
|
|
var p1 = fromData.getItemLayout(idx);
|
|
var p2 = toData.getItemLayout(idx);
|
|
var curveness = lineData.getItemModel(idx).get('lineStyle.normal.curveness');
|
|
var cp1;
|
|
if (curveness > 0) {
|
|
cp1 = [
|
|
(p1[0] + p2[0]) / 2 - (p1[1] - p2[1]) * curveness,
|
|
(p1[1] + p2[1]) / 2 - (p2[0] - p1[0]) * curveness
|
|
];
|
|
}
|
|
lineData.setItemLayout(idx, [p1, p2, cp1]);
|
|
});
|
|
});
|
|
};
|
|
}); |