@@ -287,9 +287,9 @@ drawing.symbolNumber = function(v) {
287
287
0 : Math . floor ( Math . max ( v , 0 ) ) ;
288
288
} ;
289
289
290
- function makePointPath ( symbolNumber , r , t ) {
290
+ function makePointPath ( symbolNumber , r , t , s ) {
291
291
var base = symbolNumber % 100 ;
292
- return drawing . symbolFuncs [ base ] ( r , t ) + ( symbolNumber >= 200 ? DOTPATH : '' ) ;
292
+ return drawing . symbolFuncs [ base ] ( r , t , s ) + ( symbolNumber >= 200 ? DOTPATH : '' ) ;
293
293
}
294
294
295
295
var HORZGRADIENT = { x1 : 1 , x2 : 0 , y1 : 0 , y2 : 0 } ;
@@ -650,8 +650,9 @@ drawing.singlePointStyle = function(d, sel, trace, fns, gd) {
650
650
d . om = x % 200 >= 100 ;
651
651
652
652
var angle = getMarkerAngle ( d , trace ) ;
653
+ var standoff = getMarkerStandoff ( d , trace ) ;
653
654
654
- sel . attr ( 'd' , makePointPath ( x , r , angle ) ) ;
655
+ sel . attr ( 'd' , makePointPath ( x , r , angle , standoff ) ) ;
655
656
}
656
657
657
658
var perPointGradient = false ;
@@ -900,7 +901,7 @@ drawing.selectedPointStyle = function(s, trace) {
900
901
var mx = d . mx || marker . symbol || 0 ;
901
902
var mrc2 = fns . selectedSizeFn ( d ) ;
902
903
903
- pt . attr ( 'd' , makePointPath ( drawing . symbolNumber ( mx ) , mrc2 , getMarkerAngle ( d , trace ) ) ) ;
904
+ pt . attr ( 'd' , makePointPath ( drawing . symbolNumber ( mx ) , mrc2 , getMarkerAngle ( d , trace ) , getMarkerStandoff ( d , trace ) ) ) ;
904
905
905
906
// save for Drawing.selectedTextStyle
906
907
d . mrc2 = mrc2 ;
@@ -1450,6 +1451,16 @@ drawing.setTextPointsScale = function(selection, xScale, yScale) {
1450
1451
} ) ;
1451
1452
} ;
1452
1453
1454
+ function getMarkerStandoff ( d , trace ) {
1455
+ var standoff = d . mf ;
1456
+
1457
+ if ( standoff === undefined ) {
1458
+ standoff = trace . marker . standoff || 0 ;
1459
+ }
1460
+
1461
+ return standoff ;
1462
+ }
1463
+
1453
1464
var atan2 = Math . atan2 ;
1454
1465
var cos = Math . cos ;
1455
1466
var sin = Math . sin ;
0 commit comments