chartjs/Chart.js

View on GitHub
src/plugins/plugin.filler/simpleArc.js

Summary

Maintainability
A
0 mins
Test Coverage
import {TAU} from '../../helpers/index.js';
 
TODO found
// TODO: use elements.ArcElement instead
export class simpleArc {
constructor(opts) {
this.x = opts.x;
this.y = opts.y;
this.radius = opts.radius;
}
 
pathSegment(ctx, bounds, opts) {
const {x, y, radius} = this;
bounds = bounds || {start: 0, end: TAU};
ctx.arc(x, y, radius, bounds.end, bounds.start, true);
return !opts.bounds;
}
 
interpolate(point) {
const {x, y, radius} = this;
const angle = point.angle;
return {
x: x + Math.cos(angle) * radius,
y: y + Math.sin(angle) * radius,
angle
};
}
}