Skip to content

Commit 3d8eef2

Browse files
committed
improve polar setConvert
- introduce 'g'eomtric coordinate system, that handles angular rotation / directrion and radial range shifts - add 't'icks coord system for angular axes tick vals - add setGeometry (which sets the c2g converters) - make 'c' linear theta coordinates be in radians, eliminating trace.thetaunit deps after 'calc'
1 parent 80717d5 commit 3d8eef2

File tree

10 files changed

+276
-217
lines changed

10 files changed

+276
-217
lines changed

Diff for: src/lib/angles.js

+5
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,8 @@ exports.wrap180 = function(deg) {
2727
if(Math.abs(deg) > 180) deg -= Math.round(deg / 360) * 360;
2828
return deg;
2929
};
30+
31+
exports.isFullCircle = function(sector) {
32+
var arc = Math.abs(sector[1] - sector[0]);
33+
return arc === 360;
34+
};

Diff for: src/lib/index.js

+1
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ lib.deg2rad = anglesModule.deg2rad;
8787
lib.rad2deg = anglesModule.rad2deg;
8888
lib.wrap360 = anglesModule.wrap360;
8989
lib.wrap180 = anglesModule.wrap180;
90+
lib.isFullCircle = anglesModule.isFullCircle;
9091

9192
var geom2dModule = require('./geometry2d');
9293
lib.segmentsIntersect = geom2dModule.segmentsIntersect;

Diff for: src/plots/polar/helpers.js

-61
This file was deleted.

Diff for: src/plots/polar/layout_defaults.js

+2-5
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,9 @@ var handleTickLabelDefaults = require('../cartesian/tick_label_defaults');
1919
var handleCategoryOrderDefaults = require('../cartesian/category_order_defaults');
2020
var handleLineGridDefaults = require('../cartesian/line_grid_defaults');
2121
var autoType = require('../cartesian/axis_autotype');
22-
var setConvert = require('../cartesian/set_convert');
2322

24-
var setConvertAngular = require('./helpers').setConvertAngular;
2523
var layoutAttributes = require('./layout_attributes');
24+
var setConvert = require('./set_convert');
2625
var constants = require('./constants');
2726
var axisNames = constants.axisNames;
2827

@@ -66,7 +65,7 @@ function handleDefaults(contIn, contOut, coerce, opts) {
6665
});
6766

6867
var visible = coerceAxis('visible');
69-
setConvert(axOut, layoutOut);
68+
setConvert(axOut, contOut, layoutOut);
7069

7170
var dfltColor;
7271
var dfltFontColor;
@@ -140,8 +139,6 @@ function handleDefaults(contIn, contOut, coerce, opts) {
140139

141140
var direction = coerceAxis('direction');
142141
coerceAxis('rotation', {counterclockwise: 0, clockwise: 90}[direction]);
143-
144-
setConvertAngular(axOut);
145142
break;
146143
}
147144

0 commit comments

Comments
 (0)