html/scripts/highchart/highcharts-more.src.js
function (value, reverse) {
		var axis = this,
			center = axis.center,
			chart = axis.chart,
			end = axis.getPosition(value),
			xAxis,
			xy,
			tickPositions,
			ret;
		
		// Spokes
		if (axis.isCircular) {
			ret = ['M', center[0] + chart.plotLeft, center[1] + chart.plotTop, 'L', end.x, end.y];
		
		// Concentric circles			
		} else if (axis.options.gridLineInterpolation === 'circle') {
			value = axis.translate(value);
			if (value) { // a value of 0 is in the center
				ret = axis.getLinePath(0, value);
			}
		// Concentric polygons 
		} else {
			// Find the X axis in the same pane
			each(chart.xAxis, function (a) {
				if (a.pane === axis.pane) {
					xAxis = a;
				}
			});
			ret = [];
			value = axis.translate(value);
			tickPositions = xAxis.tickPositions;
			if (xAxis.autoConnect) {
				tickPositions = tickPositions.concat([tickPositions[0]]);
			}
			// Reverse the positions for concatenation of polygonal plot bands
			if (reverse) {
				tickPositions = [].concat(tickPositions).reverse();
			}
				
			each(tickPositions, function (pos, i) {
				xy = xAxis.getPosition(pos, value);
				ret.push(i ? 'L' : 'M', xy.x, xy.y);
			});
			
		}
		return ret;
	}
function (value, reverse) {
		var axis = this,
			center = axis.center,
			chart = axis.chart,
			end = axis.getPosition(value),
			xAxis,
			xy,
			tickPositions,
			ret;
		
		// Spokes
		if (axis.isCircular) {
			ret = ['M', center[0] + chart.plotLeft, center[1] + chart.plotTop, 'L', end.x, end.y];
		
		// Concentric circles			
		} else if (axis.options.gridLineInterpolation === 'circle') {
			value = axis.translate(value);
			if (value) { // a value of 0 is in the center
				ret = axis.getLinePath(0, value);
			}
		// Concentric polygons 
		} else {
			// Find the X axis in the same pane
			each(chart.xAxis, function (a) {
				if (a.pane === axis.pane) {
					xAxis = a;
				}
			});
			ret = [];
			value = axis.translate(value);
			tickPositions = xAxis.tickPositions;
			if (xAxis.autoConnect) {
				tickPositions = tickPositions.concat([tickPositions[0]]);
			}
			// Reverse the positions for concatenation of polygonal plot bands
			if (reverse) {
				tickPositions = [].concat(tickPositions).reverse();
			}
				
			each(tickPositions, function (pos, i) {
				xy = xAxis.getPosition(pos, value);
				ret.push(i ? 'L' : 'M', xy.x, xy.y);
			});
			
		}
		return ret;
	}
function ( value , reverse ) { var axis = this , center = axis . center , chart = axis . chart , end = axis . getPosition ( value ) , xAxis , xy , tickPositions , ret ; // Spokes if ( axis . isCircular ) { ret = [ 'M' , center [ 0 ] + chart . plotLeft , center [ 1 ] + chart . plotTop , 'L' , end . x , end . y ] ; // Concentric circles			 } else if ( axis . options . gridLineInterpolation === 'circle' ) { value = axis . translate ( value ) ; if ( value ) { // a value of 0 is in the center ret = axis . getLinePath ( 0 , value ) ; } // Concentric polygons  } else { // Find the X axis in the same pane each ( chart . xAxis , function ( a ) { if ( a . pane === axis . pane ) { xAxis = a ; } } ) ; ret = [ ] ; value = axis . translate ( value ) ; tickPositions = xAxis . tickPositions ; if ( xAxis . autoConnect ) { tickPositions = tickPositions . concat ( [ tickPositions [ 0 ] ] ) ; } // Reverse the positions for concatenation of polygonal plot bands if ( reverse ) { tickPositions = [ ] . concat ( tickPositions ) . reverse ( ) ; } each ( tickPositions , function ( pos , i ) { xy = xAxis . getPosition ( pos , value ) ; ret . push ( i ? 'L' : 'M' , xy . x , xy . y ) ; } ) ; } return ret ; }
Find the path for plot lines perpendicular to the radial axis.
Find the path for plot lines perpendicular to the radial axis .