Skip to content

Commit c095271

Browse files
committed
simplify transform function and expand to reuse in pie and sunburst
1 parent 0d3e289 commit c095271

File tree

1 file changed

+21
-22
lines changed

1 file changed

+21
-22
lines changed

src/lib/index.js

Lines changed: 21 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1182,31 +1182,30 @@ lib.isHidden = function(gd) {
11821182
return !display || display === 'none';
11831183
};
11841184

1185-
lib.getTextTransform = function(opts) {
1185+
lib.getTextTransform = function(opts, isCenter) {
11861186
var textX = opts.textX;
11871187
var textY = opts.textY;
11881188
var targetX = opts.targetX;
11891189
var targetY = opts.targetY;
1190-
var scale = opts.scale;
11911190
var rotate = opts.rotate;
1192-
1193-
var transformScale;
1194-
var transformRotate;
1195-
var transformTranslate;
1196-
1197-
if(scale < 1) transformScale = 'scale(' + scale + ') ';
1198-
else {
1199-
scale = 1;
1200-
transformScale = '';
1201-
}
1202-
1203-
transformRotate = (rotate) ?
1204-
'rotate(' + rotate + ' ' + textX + ' ' + textY + ') ' : '';
1205-
1206-
// Note that scaling also affects the center of the text box
1207-
var translateX = (targetX - scale * textX);
1208-
var translateY = (targetY - scale * textY);
1209-
transformTranslate = 'translate(' + translateX + ' ' + translateY + ')';
1210-
1211-
return transformTranslate + transformScale + transformRotate;
1191+
var scale = opts.scale;
1192+
if(!scale) scale = 0;
1193+
else if(scale > 1) scale = 1;
1194+
1195+
return (
1196+
'translate(' +
1197+
(targetX - scale * textX) + ',' +
1198+
(targetY - scale * textY) +
1199+
')' +
1200+
(scale < 1 ?
1201+
'scale(' + scale + ')' :
1202+
''
1203+
) +
1204+
(rotate ?
1205+
'rotate(' + rotate +
1206+
(isCenter ? '' : ' ' + textX + ' ' + textY) +
1207+
')' :
1208+
''
1209+
)
1210+
);
12121211
};

0 commit comments

Comments
 (0)