@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
22 lines (21 loc) • 975 B
TypeScript
import { ShaderName } from '../../../utils/shaders/ShaderName';
import { BaseGLDefinition } from '../../utils/GLDefinition';
import { BaseGlNodeType } from '../../_Base';
export type DefinitionTraverseCallback = (definition: BaseGLDefinition) => void;
export interface AddBodyLinesOptions {
makeUniq: boolean;
}
export declare class LinesController {
private _shader_name;
private _definitionsByNodeId;
private _bodyLinesByNodeId;
constructor(_shader_name: ShaderName);
get shader_name(): ShaderName;
addDefinitions(node: BaseGlNodeType, definitions: BaseGLDefinition[]): void;
private _addDefinitionsForNodeId;
definitions(node: BaseGlNodeType): BaseGLDefinition[] | undefined;
traverseDefinitions(callback: DefinitionTraverseCallback): void;
addBodyLines(node: BaseGlNodeType, lines: string[], options?: AddBodyLinesOptions): void;
private _addBodyLinesForNodeId;
bodyLines(node: BaseGlNodeType): string[] | undefined;
}