in examples/website/plot/plot-layer/axes-layer.js [118:157]
updateState({oldProps, props, changeFlags}) {
const attributeManager = this.getAttributeManager();
if (
oldProps.xScale !== props.xScale ||
oldProps.yScale !== props.yScale ||
oldProps.zScale !== props.zScale ||
oldProps.xTicks !== props.xTicks ||
oldProps.yTicks !== props.yTicks ||
oldProps.zTicks !== props.zTicks ||
oldProps.xTickFormat !== props.xTickFormat ||
oldProps.yTickFormat !== props.yTickFormat ||
oldProps.zTickFormat !== props.zTickFormat
) {
const {xScale, yScale, zScale} = props;
const ticks = [
getTicks({...props, axis: 'x'}),
getTicks({...props, axis: 'z'}),
getTicks({...props, axis: 'y'})
];
const xRange = xScale.range();
const yRange = yScale.range();
const zRange = zScale.range();
this.setState({
ticks,
labelTexture: this.renderLabelTexture(ticks),
gridDims: [xRange[1] - xRange[0], zRange[1] - zRange[0], yRange[1] - yRange[0]],
gridCenter: [
(xRange[0] + xRange[1]) / 2,
(zRange[0] + zRange[1]) / 2,
(yRange[0] + yRange[1]) / 2
]
});
attributeManager.invalidateAll();
}
}