import { EAdaptMode } from '../modifiers/Adapt'; import { ShapePrimitive } from '../shapes/ShapePrimitive'; import { IDrawerProps, IPropArguments, IShapeBufferSettings, IShapePrimitiveProps } from '../types'; /** * Create a shape from static buffer * * @category Shapes.Primitives */ declare class ShapeBuffer = IDrawerProps> extends ShapePrimitive { /** * Custom vertex buffer or shape * * Float32Array between -1, 1 * * @type {Float32Array} */ shape: Float32Array | ((propArguments: PropArguments) => Float32Array); /** * Adapted buffer * * @protected * @type {Float32Array} */ protected shapeBuffer?: Float32Array; /** * Adapt buffer mode, see EAdaptMode for more details * * @type {EAdaptMode} */ adaptMode: EAdaptMode; /** * Creates an instance of ShapeBuffer. * * @param {IShapeBufferSettings} [settings={}] */ constructor(settings?: IShapeBufferSettings); /** * Check shape is static * * @returns boolean */ isStatic(): boolean; /** * Check shape is static indexed * * @returns boolean */ isStaticIndexed(): boolean; /** * Unset buffer * * @param {boolean} [bClearIndexed=false] * @param {boolean} [bPropagateToParents=false] */ clearBuffer(bClearIndexed?: boolean, bPropagateToParents?: boolean): void; /** * Apply sideLength on .shape buffer and calculate bounding * * @protected */ protected bindBuffer(propArguments: PropArguments): void; /** * Return length of buffer * * @param {IPropArguments} propArguments * @returns {number} */ getBufferLength(): number; /** * Return a buffer of children shape or loop generated buffer * * @protected * @param {number} generateId * @param {PropArguments} propArguments * @returns {Float32Array} */ protected generateBuffer(generateId: number, propArguments: PropArguments): Float32Array; /** * Set shape * * @param {(Float32Array | (p: IPropArguments) => Float32Array)} [shape] */ setShape(shape: Float32Array | ((propArguments: IPropArguments) => Float32Array)): void; /** * Return adaptMode * * @returns {EAdaptMode} * @memberof ShapeBase */ getAdaptMode(): EAdaptMode; /** * Get static buffer * * @param sideLength * @returns */ static getBuffer(props?: IShapeBufferSettings): Float32Array; } export { ShapeBuffer }; //# sourceMappingURL=ShapeBuffer.d.ts.map