提交 ea52994c 编写于 作者: K kener

zrender 2.0 merge

上级 2909d9f3
......@@ -729,19 +729,11 @@ define(function(require) {
var _merge = zrUtil.merge;
opt = _merge(
opt || {},
ecConfig.chord,
{
'overwrite' : false,
'recursive' : true
}
ecConfig.chord
);
opt.itemStyle.normal.label.textStyle = _merge(
opt.itemStyle.normal.label.textStyle || {},
ecConfig.textStyle,
{
'overwrite' : false,
'recursive' : true
}
ecConfig.textStyle
);
}
......
......@@ -39,7 +39,7 @@ define(function(require) {
var _symbol = ecConfig.symbolList;
var _sIndex2ShapeMap = {}; // series拐点图形类型,seriesIndex索引到shape type
IconShape.iconLibrary['legendLineIcon'] = legendLineIcon;
IconShape.prototype.iconLibrary['legendLineIcon'] = legendLineIcon;
function _buildShape() {
finalPLMap = {};
......@@ -1047,7 +1047,7 @@ define(function(require) {
x += Math.round((width - height) / 2) - 1;
width = height = height + 2;
}
symbol = IconShape.iconLibrary[symbol];
symbol = IconShape.prototype.iconLibrary[symbol];
if (symbol) {
var x2 = style.x;
......
......@@ -95,13 +95,13 @@ define(function(require) {
|| {};
if (series[i].textFixed) {
zrUtil.mergeFast(
_textFixed, series[i].textFixed, true, false
zrUtil.merge(
_textFixed, series[i].textFixed, true
);
}
if (series[i].geoCoord) {
zrUtil.mergeFast(
_geoCoord, series[i].geoCoord, true, false
zrUtil.merge(
_geoCoord, series[i].geoCoord, true
);
}
......
......@@ -400,11 +400,7 @@ define(function(require) {
// serie里有默认配置,放心大胆的用!
var itemStyle = zrUtil.merge(
zrUtil.clone(data.itemStyle) || {},
serie.itemStyle,
{
'overwrite' : false,
'recursive' : true
}
serie.itemStyle
);
// label配置
var labelControl = itemStyle[status].label;
......@@ -540,11 +536,7 @@ define(function(require) {
// serie里有默认配置,放心大胆的用!
var itemStyle = zrUtil.merge(
zrUtil.clone(data.itemStyle) || {},
serie.itemStyle,
{
'overwrite' : false,
'recursive' : true
}
serie.itemStyle
);
// labelLine配置
var labelLineControl = itemStyle[status].labelLine;
......@@ -563,7 +555,7 @@ define(function(require) {
var cosValue = zrMath.cos(midAngle, true);
var sinValue = zrMath.sin(midAngle, true);
// 三角函数缓存已在zrender/tool/math中做了
return new BorkenLineShape({
return new BrokenLineShape({
shape : 'brokenLine',
zlevel : _zlevelBase + 1,
hoverable : false,
......@@ -638,29 +630,17 @@ define(function(require) {
var _merge = zrUtil.merge;
opt = _merge(
opt || {},
ecConfig.pie,
{
'overwrite' : false,
'recursive' : true
}
ecConfig.pie
);
// 通用字体设置
opt.itemStyle.normal.label.textStyle = _merge(
opt.itemStyle.normal.label.textStyle || {},
ecConfig.textStyle,
{
'overwrite' : false,
'recursive' : true
}
ecConfig.textStyle
);
opt.itemStyle.emphasis.label.textStyle = _merge(
opt.itemStyle.emphasis.label.textStyle || {},
ecConfig.textStyle,
{
'overwrite' : false,
'recursive' : true
}
ecConfig.textStyle
);
return opt;
......
......@@ -93,10 +93,7 @@ define(function(require) {
return zrUtil.merge(
opt || {},
zrUtil.clone(ecConfig[self.type] || {}),
{
'overwrite': false,
'recursive': true
}
false
);
}
......@@ -129,8 +126,7 @@ define(function(require) {
function getFont(textStyle) {
var finalTextStyle = zrUtil.merge(
zrUtil.clone(textStyle) || {},
ecConfig.textStyle,
{ 'overwrite': false}
ecConfig.textStyle
);
return finalTextStyle.fontStyle + ' '
+ finalTextStyle.fontWeight + ' '
......@@ -356,11 +352,7 @@ define(function(require) {
function _markPoint(serie, seriesIndex, mpOption, component) {
zrUtil.merge(
mpOption,
ecConfig.markPoint,
{
'overwrite': false,
'recursive': true
}
ecConfig.markPoint
);
mpOption.name = serie.name;
......@@ -448,11 +440,7 @@ define(function(require) {
function _markLine(serie, seriesIndex, mlOption, component) {
zrUtil.merge(
mlOption,
ecConfig.markLine,
{
'overwrite': false,
'recursive': true
}
ecConfig.markLine
);
// 标准化一些同时支持Array和String的参数
mlOption.symbol = mlOption.symbol instanceof Array
......
......@@ -98,11 +98,7 @@ define(function (require) {
self.getFont(
zrUtil.merge(
data[i].textStyle,
option.axisLabel.textStyle,
{
'overwrite': false,
'recursive': true
}
option.axisLabel.textStyle
)
)
);
......@@ -352,8 +348,7 @@ define(function (require) {
}
dataTextStyle = zrUtil.merge(
data[i].textStyle || {},
textStyle,
{'overwrite': false}
textStyle
);
axShape = {
shape : 'text',
......@@ -404,8 +399,7 @@ define(function (require) {
}
dataTextStyle = zrUtil.merge(
data[i].textStyle || {},
textStyle,
{'overwrite': false}
textStyle
);
axShape = {
shape : 'text',
......@@ -631,19 +625,11 @@ define(function (require) {
// 通用字体设置
option.axisLabel.textStyle = zrUtil.merge(
option.axisLabel.textStyle || {},
ecConfig.textStyle,
{
'overwrite' : false,
'recursive' : true
}
ecConfig.textStyle
);
option.axisLabel.textStyle = zrUtil.merge(
option.axisLabel.textStyle || {},
ecConfig.textStyle,
{
'overwrite' : false,
'recursive' : true
}
ecConfig.textStyle
);
}
self.clear();
......
......@@ -90,8 +90,7 @@ define(function (require) {
for (var i = 0; i < dataLength; i++) {
dataTextStyle = zrUtil.merge(
data[i].textStyle || {},
textStyle,
{'overwrite': false}
textStyle
);
dataFont = self.getFont(dataTextStyle);
......@@ -324,8 +323,7 @@ define(function (require) {
}
dataTextStyle = zrUtil.merge(
data[i].textStyle || {},
textStyle,
{'overwrite': false}
textStyle
);
temp += itemWidth
+ zrArea.getTextWidth(
......@@ -333,8 +331,7 @@ define(function (require) {
data[i].textStyle
? self.getFont(zrUtil.merge(
data[i].textStyle || {},
textStyle,
{'overwrite': false}
textStyle
))
: font
)
......@@ -359,8 +356,7 @@ define(function (require) {
data[i].textStyle
? self.getFont(zrUtil.merge(
data[i].textStyle || {},
textStyle,
{'overwrite': false}
textStyle
))
: font
)
......
......@@ -257,6 +257,9 @@ define(function(require) {
vector[0], vector[1]
];
}
else {
rotation = [0, 0, 0];
}
self.shapeList.push(new TextShape({
style : style,
......
......@@ -134,7 +134,7 @@ define(function (require) {
}
self.shapeList.push(new TextShape(textShape));
subtext !== '' && self.shapeList.push(new TextSahpe(subtextShape));
subtext !== '' && self.shapeList.push(new TextShape(subtextShape));
}
function _buildBackground() {
......@@ -250,19 +250,11 @@ define(function (require) {
titleOption = option.title;
titleOption.textStyle = zrUtil.merge(
titleOption.textStyle,
ecConfig.textStyle,
{
'overwrite': false,
'recursive': false
}
ecConfig.textStyle
);
titleOption.subtextStyle = zrUtil.merge(
titleOption.subtextStyle,
ecConfig.textStyle,
{
'overwrite': false,
'recursive': false
}
ecConfig.textStyle
);
self.clear();
......
......@@ -8,6 +8,7 @@
define(function (require) {
var LineShape = require('zrender/shape/Line');
var RectangleShape = require('zrender/shape/Rectangle');
var rectangleInstance = new RectangleShape({});
/**
* 构造函数
......@@ -77,7 +78,7 @@ define(function (require) {
// strokeColor : ecConfig.categoryAxis.axisLine.lineStyle.color
}
});
var _axisShadowShape = LineShape({
var _axisShadowShape = new LineShape({
zlevel: 1, // grid上,chart下
invisible : true,
hoverable: false,
......@@ -1130,7 +1131,7 @@ define(function (require) {
if (_needAxisTrigger
&& grid
&& zrArea.isInside(
RectangleShape,
rectangleInstance,
grid.getArea(),
mx,
my
......@@ -1497,11 +1498,7 @@ define(function (require) {
option.tooltip = self.reformOption(option.tooltip);
option.tooltip.textStyle = zrUtil.merge(
option.tooltip.textStyle,
ecConfig.textStyle,
{
'overwrite': false,
'recursive': true
}
ecConfig.textStyle
);
// 补全padding属性
option.tooltip.padding = self.reformCssArray(
......@@ -1520,7 +1517,6 @@ define(function (require) {
break;
}
}
_showDelay = option.tooltip.showDelay;
_hideDelay = option.tooltip.hideDelay;
_defaultCssText = _style(option.tooltip);
......@@ -1540,11 +1536,7 @@ define(function (require) {
option.tooltip = self.reformOption(option.tooltip);
option.tooltip.textStyle = zrUtil.merge(
option.tooltip.textStyle,
ecConfig.textStyle,
{
'overwrite': false,
'recursive': true
}
ecConfig.textStyle
);
// 补全padding属性
option.tooltip.padding = self.reformCssArray(
......
......@@ -851,19 +851,11 @@ define(function (require) {
// 通用字体设置
option.axisLabel.textStyle = zrUtil.merge(
option.axisLabel.textStyle || {},
ecConfig.textStyle,
{
'overwrite' : false,
'recursive' : true
}
ecConfig.textStyle
);
option.axisLabel.textStyle = zrUtil.merge(
option.axisLabel.textStyle || {},
ecConfig.textStyle,
{
'overwrite' : false,
'recursive' : true
}
ecConfig.textStyle
);
series = newSeries;
}
......
......@@ -128,10 +128,6 @@ define(function(require) {
_zr.on(zrConfig.EVENT.DRAGLEAVE, _ondragleave);
_zr.on(zrConfig.EVENT.DROP, _ondrop);
// 动态扩展zrender shape:icon、markLine
require('./util/shape/icon');
require('./util/shape/markLine');
// 内置图表注册
var chartLibrary = require('./chart');
require('./chart/island');
......@@ -894,16 +890,13 @@ define(function(require) {
var zrUtil = require('zrender/tool/util');
zrUtil.merge(
magicOption, param.option,
{ 'overwrite': true, 'recursive': true }
magicOption, param.option, true
);
zrUtil.merge(
_optionBackup, param.option,
{ 'overwrite': true, 'recursive': true }
_optionBackup, param.option, true
);
zrUtil.merge(
_optionRestore, param.option,
{ 'overwrite': true, 'recursive': true }
_optionRestore, param.option, true
);
_island.refresh(magicOption);
_toolbox.refresh(magicOption);
......@@ -1023,10 +1016,7 @@ define(function(require) {
zrUtil.merge(
_option,
zrUtil.clone(option),
{
'overwrite': true,
'recursive': true
}
true
);
}
else {
......@@ -1529,8 +1519,7 @@ define(function(require) {
var finalTextStyle = zrUtil.merge(
zrUtil.clone(loadingOption.textStyle),
_themeConfig.textStyle,
{ 'overwrite': false}
_themeConfig.textStyle
);
loadingOption.textStyle.textFont = finalTextStyle.fontStyle + ' '
+ finalTextStyle.fontWeight + ' '
......@@ -1599,8 +1588,7 @@ define(function(require) {
// 应用新主题
zrUtil.merge(
_themeConfig, zrUtil.clone(theme),
{ 'overwrite': true, 'recursive': true }
_themeConfig, zrUtil.clone(theme), true
);
}
......
......@@ -64,8 +64,7 @@ define(function() {
}
else {
zrUtil.merge(
finalOption, tempOption,
{ 'overwrite': true, 'recursive': true }
finalOption, tempOption, true
);
}
}
......
......@@ -8,6 +8,7 @@
define(
function(require) {
var Base = require('zrender/shape/Base');
var PolygonShape = require('zrender/shape/Polygon');
var matrix = require('zrender/tool/matrix');
function HandlePolygon(options) {
......@@ -22,7 +23,7 @@ define(
* @param {Object} style 样式
*/
buildPath : function(ctx, style) {
require('zrender/shape').get('polygon').buildPath(
PolygonShape.prototype.buildPath(
ctx, style
);
return;
......@@ -45,7 +46,7 @@ define(
y = originPos[1];
}
var rect = e.style.rect;
var rect = this.style.rect;
if (x >= rect.x
&& x <= (rect.x + rect.width)
&& y >= rect.y
......
......@@ -340,10 +340,10 @@ define(
}
function _iconStar(ctx, style) {
var StarShape = require('zrender/shape/Star');
var width = style.width / 2;
var height = style.height / 2;
var star = require('zrender/shape').get('star');
star.buildPath(ctx, {
StarShape.prototype.buildPath(ctx, {
x : style.x + width,
y : style.y + height,
r : Math.min(width, height),
......@@ -352,8 +352,8 @@ define(
}
function _iconHeart(ctx, style) {
var heart = require('zrender/shape').get('heart');
heart.buildPath(ctx, {
var HeartShape = require('zrender/shape/Heart');
HeartShape.prototype.buildPath(ctx, {
x : style.x + style.width / 2,
y : style.y + style.height * 0.2,
a : style.width / 2,
......@@ -362,8 +362,8 @@ define(
}
function _iconDroplet(ctx, style) {
var droplet = require('zrender/shape').get('droplet');
droplet.buildPath(ctx, {
var DropletShape = require('zrender/shape/Droplet');
DropletShape.prototype.buildPath(ctx, {
x : style.x + style.width * 0.5,
y : style.y + style.height * 0.5,
a : style.width * 0.5,
......@@ -389,7 +389,8 @@ define(
function _iconImage(ctx, style) {
setTimeout(function(){
require('zrender/shape').get('image').brush(ctx, {
var ImageShape = require('zrender/shape/Image');
ImageShape.prototype.brush(ctx, {
style : style
});
},100);
......
......@@ -8,8 +8,17 @@
define(
function(require) {
var Base = require('zrender/shape/Base');
var IconShape = require('./Icon');
var LineShape = require('zrender/shape/Line');
var lineInstance = new LineShape({});
var BrokenLineShape = require('zrender/shape/BrokenLine');
var brokenLineInstance = new BrokenLineShape({});
var matrix = require('zrender/tool/matrix');
var area = require('zrender/tool/area');
var dashedLineTo = require('zrender/shape/util/dashedLineTo');
var smoothSpline = require('zrender/shape/util/smoothSpline');
function MarkLine(options) {
Base.call(this, options);
......@@ -87,7 +96,7 @@ define(
* (style.lineType == 'dashed' ? 5 : 1);
ctx.moveTo(pointList[0][0],pointList[0][1]);
for (var i = 1; i < len; i++) {
this.dashedLineTo(
dashedLineTo(
ctx,
pointList[i - 1][0], pointList[i - 1][1],
pointList[i][0], pointList[i][1],
......@@ -158,7 +167,7 @@ define(
style.y = y - symbolSize,
style.width = symbolSize * 2;
style.height = symbolSize * 2;
require('zrender/shape').get('icon').buildPath(ctx, style);
IconShape.prototype.buildPath(ctx, style);
}
ctx.closePath();
......@@ -254,7 +263,7 @@ define(
pointList[3] = [lastPointX, lastPointY];
pointList[1] = this.getOffetPoint(pointList[0], pointList[3]);
pointList[2] = this.getOffetPoint(pointList[3], pointList[0]);
pointList = this.smoothSpline(pointList, false);
pointList = smoothSpline(pointList, false);
// 修正最后一点在插值产生的偏移
pointList[pointList.length - 1] = [lastPointX, lastPointY];
}
......@@ -329,8 +338,8 @@ define(
isCover : function(x, y) {
return this.style.smooth !== 'spline'
? area.isInside(require('zrender/shape/Line'), this.style, x, y)
: area.isInside(require('zrender/shape/BrokenLine'), this.style, x, y);
? area.isInside(lineInstance, this.style, x, y)
: area.isInside(brokenLineInstance, this.style, x, y);
}
};
......
......@@ -34,6 +34,8 @@
define(
function(require) {
var Base = require('zrender/shape/Base');
var PolygonShape = require('zrender/shape/Polygon')
var polygonInstance = new PolygonShape({});
function Symbol(options) {
Base.call(this, options);
......@@ -91,7 +93,7 @@ define(
* @param {Object} style
*/
getRect : function(style) {
return require('zrender/shape/Polygon').getRect(style);
return polygonInstance.getRect(style);
},
isCover : function() {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册