/** * @file Octahedron Buffer * @author Alexander Rose * @private */ import { Matrix4 } from 'three'; import GeometryBuffer from './geometry-buffer'; import { BufferData, BufferParameters } from './buffer'; export interface OctahedronBufferData extends BufferData { heightAxis: Float32Array; depthAxis: Float32Array; size: Float32Array; } /** * Octahedron buffer. Draws octahedrons. * * @example * var octahedronBuffer = new OctahedronBuffer({ * position: new Float32Array([ 0, 3, 0, -2, 0, 0 ]), * color: new Float32Array([ 1, 0, 1, 0, 1, 0 ]), * size: new Float32Array([ 2, 1.5 ]), * heightAxis: new Float32Array([ 0, 1, 1, 0, 2, 0 ]), * depthAxis: new Float32Array([ 1, 0, 1, 0, 0, 2 ]) * }) */ declare class OctahedronBuffer extends GeometryBuffer { updateNormals: boolean; _heightAxis: Float32Array; _depthAxis: Float32Array; _size: Float32Array; constructor(data: OctahedronBufferData, params?: Partial); applyPositionTransform(matrix: Matrix4, i: number, i3: number): void; setAttributes(data?: Partial, initNormals?: boolean): void; } export default OctahedronBuffer;