Skip to content

Commit efa0005

Browse files
committed
draw angular draglayer as punched polygon for gridshape: 'linear'
1 parent a26b56f commit efa0005

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

src/plots/polar/polar.js

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -906,9 +906,19 @@ proto.updateAngularDrag = function(fullLayout, polarLayout) {
906906

907907
var angularDrag = dragBox.makeDragger(layers, 'path', 'angulardrag', 'move');
908908
var dragOpts = {element: angularDrag, gd: gd};
909+
var angularDragPath;
910+
911+
if(_this.vangles) {
912+
// use evenodd svg rule
913+
var outer = invertY(makePolygon(radius + dbs, sector, _this.vangles));
914+
var inner = invertY(makePolygon(radius, sector, _this.vangles));
915+
angularDragPath = 'M' + outer.reverse().join('L') + 'M' + inner.join('L');
916+
} else {
917+
angularDragPath = pathAnnulus(radius, radius + dbs, sector);
918+
}
909919

910920
d3.select(angularDrag)
911-
.attr('d', pathAnnulus(radius, radius + dbs, sector))
921+
.attr('d', angularDragPath)
912922
.attr('transform', strTranslate(cx, cy))
913923
.call(setCursor, 'move');
914924

0 commit comments

Comments
 (0)