Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
// -----------------------------------------------------------------------
// Sequential
// -----------------------------------------------------------------------
let Blue: string = d3ScaleChromatic.interpolateBlues(1); // rgb(8, 48, 107)
let Green: string = d3ScaleChromatic.interpolateGreens(1); // rgb(0, 68, 27)
let Grey: string = d3ScaleChromatic.interpolateGreys(1); // rgb(0, 0, 0)
let Orange: string = d3ScaleChromatic.interpolateOranges(1); // rgb(127, 39, 4)
let Purple: string = d3ScaleChromatic.interpolatePurples(1); // rgb(63, 0, 125)
let Red: string = d3ScaleChromatic.interpolateReds(1); // rgb(103, 0, 13)
// -----------------------------------------------------------------------
// Sequential(Multi-Hue)
// -----------------------------------------------------------------------
let BuGn: string = d3ScaleChromatic.interpolateBuGn(1); // rgb(0, 68, 27)
let BuPu: string = d3ScaleChromatic.interpolateBuPu(1); // rgb(77, 0, 75)
let GnBu: string = d3ScaleChromatic.interpolateGnBu(1); // rgb(8, 64, 129)
let OrRd: string = d3ScaleChromatic.interpolateOrRd(1); // rgb(127, 0, 0)
let PuBuGn: string = d3ScaleChromatic.interpolatePuBuGn(1); // rgb(1, 70, 54)
let PuBu: string = d3ScaleChromatic.interpolatePuBu(1); // rgb(2, 56, 88)
let PuRd: string = d3ScaleChromatic.interpolatePuRd(1); // rgb(103, 0, 31)
let RdPu: string = d3ScaleChromatic.interpolateRdPu(1); // rgb(73, 0, 106)
let YlGnBu: string = d3ScaleChromatic.interpolateYlGnBu(1); // rgb(8, 29, 88)
let YlGn: string = d3ScaleChromatic.interpolateYlGn(1); // rgb(0, 69, 41)
let YlOrBr: string = d3ScaleChromatic.interpolateYlOrBr(1); // rgb(102, 37, 6)
let YlOrRd: string = d3ScaleChromatic.interpolateYlOrRd(1); // rgb(128, 0, 38)
directionVector[0], directionVector[1]
)
if (!intersections[0]) break
points.push(intersections[0])
const angle = Math.atan2(position[1] - intersections[0][1], position[0] - intersections[0][0])
const angle2 = Math.atan2(intersections[0][1] - cell.center[1], intersections[0][0] - cell.center[0])
directionAngle = angle2 - angle + angle2
}
if (settings.showCircles) {
ctx.beginPath()
ctx.strokeStyle = '#ccc'
drawCircle(ctx, cell.center, cell.size / 2)
if (settings.fillCircles) {
const spreadValue = getSpreadValue(points.slice(1)) / cell.size
let color = d3.interpolateBuPu(Math.pow(spreadValue, 4) * 4)
let opacity = 0.8
color = color.replace('rgb(', 'rgba(').replace(')', `, ${opacity})`)
ctx.fillStyle = color
ctx.fill()
}
ctx.stroke()
}
for (let i = 1; i < points.length; i++) {
ctx.beginPath()
ctx.strokeStyle = `rgba(50, 50, 50, ${settings.opacity * (points.length - i) * 0.5})`
drawLine(ctx, [points[i - 1], points[i]])
ctx.stroke()
}
}