@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
39 lines (38 loc) • 2.01 kB
TypeScript
/**
* Promotes an attribute from object to geometry or vice-versa.
*
* @remarks
* The attribute can also be promoted with different modes, such as only the min, max or first found.
*
*/
import { TypedSopNode } from './_Base';
import { AttribClass } from '../../../core/geometry/Constant';
import { CoreGroup } from '../../../core/geometry/Group';
import { AttribPromoteMode } from '../../operations/sop/AttribPromote';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { SopType } from '../../poly/registers/nodes/types/Sop';
declare class AttribPromoteSopParamsConfig extends NodeParamsConfig {
/** @param the group this applies to */
group: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
/** @param class the attribute is from (object or geometry) */
classFrom: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param class the attribute should be promoted to (object or geometry) */
classTo: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param mode used to promote the attribute (min, max or first_found) */
mode: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param name of the attribute to promote */
name: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
}
export declare class AttribPromoteSopNode extends TypedSopNode<AttribPromoteSopParamsConfig> {
paramsConfig: AttribPromoteSopParamsConfig;
static type(): SopType;
initializeNode(): void;
private _operation;
cook(inputCoreGroups: CoreGroup[]): void;
setAttribClassFrom(attribClass: AttribClass): void;
attribClassFrom(): AttribClass;
setAttribClassTo(attribClass: AttribClass): void;
attribClassTo(): AttribClass;
setPromoteMode(mode: AttribPromoteMode): void;
}
export {};