UNPKG

polygonjs-engine

Version:

node-based webgl 3D engine https://polygonjs.com

81 lines (80 loc) 5.7 kB
/** * Delete parts of the input geometry * * @remarks * This can be used in many ways to delete points or objects from the input. * */ import { TypedSopNode } from './_Base'; import { AttribClass } from '../../../core/geometry/Constant'; import { CoreGroup } from '../../../core/geometry/Group'; import { NodeParamsConfig } from '../utils/params/ParamsConfig'; import { EntitySelectionHelper } from './utils/delete/EntitySelectionHelper'; import { ByAttributeHelper } from './utils/delete/ByAttributeHelper'; import { ByExpressionHelper } from './utils/delete/ByExpressionHelper'; import { ByBboxHelper } from './utils/delete/ByBboxHelper'; import { ByObjectTypeHelper } from './utils/delete/ByObjectTypeHelper'; declare class DeleteSopParamsConfig extends NodeParamsConfig { /** @param defines the class that should be deleted (objects or vertices) */ class: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.INTEGER>; /** @param invert the selection created in the parameters below */ invert: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>; /** @param deletes objects by object type */ byObjectType: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>; /** @param sets which object types should be deleted */ objectType: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.INTEGER>; separatorObjectType: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.SEPARATOR>; /** @param deletes objects by an expression */ byExpression: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>; /** @param sets the expression to select what should be deleted */ expression: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>; separatorExpression: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.SEPARATOR>; /** @param deletes objects by an attribute */ byAttrib: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>; /** @param sets the type of the attribute for which items should be deleted */ attribType: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.INTEGER>; /** @param name of the attribute used */ attribName: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.STRING>; /** @param size of the attribute used */ attribSize: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.INTEGER>; /** @param comparison operator */ attribComparisonOperator: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.INTEGER>; /** @param value of the attribute to compare with (when using float attribute) */ attribValue1: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.FLOAT>; /** @param value of the attribute to compare with (when using vector2 attribute) */ attribValue2: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.VECTOR2>; /** @param value of the attribute to compare with (when using vector3 attribute) */ attribValue3: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.VECTOR3>; /** @param value of the attribute to compare with (when using vector4 attribute) */ attribValue4: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.VECTOR4>; /** @param value of the attribute to compare with (when using string attribute) */ attribString: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.STRING>; separatorAttrib: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.SEPARATOR>; /** @param deletes objects that are inside a bounding box */ byBbox: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>; /** @param the bounding box size */ bboxSize: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.VECTOR3>; /** @param the bounding box center */ bboxCenter: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.VECTOR3>; separatorBbox: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.SEPARATOR>; /** @param keeps points */ keepPoints: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>; } export declare class DeleteSopNode extends TypedSopNode<DeleteSopParamsConfig> { params_config: DeleteSopParamsConfig; static type(): string; private _marked_for_deletion_per_object_index; readonly entity_selection_helper: EntitySelectionHelper; readonly byBbox_helper: ByBboxHelper; readonly byExpression_helper: ByExpressionHelper; readonly byAttribute_helper: ByAttributeHelper; readonly byObjectType_helper: ByObjectTypeHelper; static displayedInputNames(): string[]; initializeNode(): void; cook(input_contents: CoreGroup[]): Promise<void>; set_class(attrib_class: AttribClass): void; private _eval_for_objects; private _eval_for_points; private _point_object; } export {};