UNPKG

@rcsb/rcsb-saguaro

Version:
41 lines (40 loc) 1.44 kB
import { scaleLinear, scalePoint } from "d3-scale"; export var RcsbD3ScaleFactory; (function (RcsbD3ScaleFactory) { function getLinearScale() { const xScale = scaleLinear(); const scale = ((x) => xScale(x)); scale.domain = xScale.domain; scale.range = xScale.range; scale.invert = xScale.invert; scale.getScale = () => xScale; scale._domain = [0, 0]; scale._range = [0, 0]; scale.checkAndSetScale = (domain, range) => { if (domain[0] == scale._domain[0] && domain[1] == scale._domain[1] && range[0] == scale._range[0] && range[1] == scale._range[1]) { return true; } else { scale._domain = domain; scale._range = range; scale.domain(domain).range(range); return false; } }; scale.reset = () => { scale._domain = [0, 0]; scale._range = [0, 0]; }; return scale; } RcsbD3ScaleFactory.getLinearScale = getLinearScale; function getPointScale() { const xScale = scalePoint(); const scale = ((x) => xScale(x)); scale.domain = xScale.domain; scale.range = xScale.range; scale.getScale = () => xScale; return scale; } RcsbD3ScaleFactory.getPointScale = getPointScale; })(RcsbD3ScaleFactory || (RcsbD3ScaleFactory = {}));