in modules/layers/src/traffic-light-layer/traffic-light-layer.js [65:102]
initializeState() {
const {gl} = this.context;
const modelsByName = this._getModels(gl);
this.setState({
models: [modelsByName.box, modelsByName.lights],
modelsByName
});
const attributeManager = this.getAttributeManager();
/* eslint-disable max-len */
attributeManager.addInstanced({
instancePositions: {
size: 3,
type: GL.DOUBLE,
fp64: this.use64bitPositions(),
accessor: 'getPosition'
},
instanceAngles: {size: 1, accessor: 'getAngle'},
instanceShapes: {
size: 1,
type: GL.UNSIGNED_BYTE,
accessor: 'getShape',
transform: shape => LIGHT_SHAPE[shape] || 0
},
instanceColors: {
size: 3,
type: GL.UNSIGNED_BYTE,
accessor: 'getColor',
transform: color => LIGHT_COLOR[color] || LIGHT_COLOR.invalid
},
instanceStates: {
size: 1,
type: GL.UNSIGNED_BYTE,
accessor: 'getState'
}
});
/* eslint-enable max-len */
}