(categories, series, opts, config, context)
| 3287 | } |
| 3288 | |
| 3289 | function drawGaugeDataPoints(categories, series, opts, config, context) { |
| 3290 | var process = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 1; |
| 3291 | var gaugeOption = assign({}, { |
| 3292 | startAngle: 0.75, |
| 3293 | endAngle: 0.25, |
| 3294 | width: 15, |
| 3295 | splitLine: { |
| 3296 | fixRadius: 0, |
| 3297 | splitNumber: 10, |
| 3298 | width: 15, |
| 3299 | color: '#FFFFFF', |
| 3300 | childNumber: 5, |
| 3301 | childWidth: 5 |
| 3302 | }, |
| 3303 | pointer: { |
| 3304 | width: 15, |
| 3305 | color: 'auto' |
| 3306 | } |
| 3307 | }, opts.extra.gauge); |
| 3308 | |
| 3309 | if (gaugeOption.oldAngle == undefined) { |
| 3310 | gaugeOption.oldAngle = gaugeOption.startAngle; |
| 3311 | } |
| 3312 | if (gaugeOption.oldData == undefined) { |
| 3313 | gaugeOption.oldData = 0; |
| 3314 | } |
| 3315 | categories = getGaugeAxisPoints(categories, gaugeOption.startAngle, gaugeOption.endAngle); |
| 3316 | |
| 3317 | var centerPosition = { |
| 3318 | x: opts.width / 2, |
| 3319 | y: opts.height / 2 |
| 3320 | }; |
| 3321 | var radius = Math.min(centerPosition.x, centerPosition.y); |
| 3322 | radius -= 5 * opts.pixelRatio; |
| 3323 | radius -= gaugeOption.width / 2; |
| 3324 | var innerRadius = radius - gaugeOption.width; |
| 3325 | |
| 3326 | //画背景 |
| 3327 | context.setLineWidth(gaugeOption.width); |
| 3328 | context.setLineCap('butt'); |
| 3329 | for (let i = 0; i < categories.length; i++) { |
| 3330 | let eachCategories = categories[i]; |
| 3331 | context.beginPath(); |
| 3332 | context.setStrokeStyle(eachCategories.color); |
| 3333 | context.arc(centerPosition.x, centerPosition.y, radius, eachCategories._startAngle_ * Math.PI, eachCategories._endAngle_ * |
| 3334 | Math.PI, false); |
| 3335 | context.stroke(); |
| 3336 | } |
| 3337 | context.save(); |
| 3338 | |
| 3339 | //画刻度线 |
| 3340 | let totalAngle = gaugeOption.startAngle - gaugeOption.endAngle + 1; |
| 3341 | let splitAngle = totalAngle / gaugeOption.splitLine.splitNumber; |
| 3342 | let childAngle = totalAngle / gaugeOption.splitLine.splitNumber / gaugeOption.splitLine.childNumber; |
| 3343 | let startX = -radius - gaugeOption.width * 0.5 - gaugeOption.splitLine.fixRadius; |
| 3344 | let endX = -radius - gaugeOption.width * 0.5 - gaugeOption.splitLine.fixRadius + gaugeOption.splitLine.width; |
| 3345 | let childendX = -radius - gaugeOption.width * 0.5 - gaugeOption.splitLine.fixRadius + gaugeOption.splitLine.childWidth; |
| 3346 |
no test coverage detected