Documentation / Node reference / geo nodes
geo/Delete
Removes points, primitives or objects that match one or more criteria.
Topology
Pick what is being removed with `entity`, then turn on one or more `by*` criteria; `combineMode` decides whether they union or intersect, and `invert` deletes everything they did NOT match. Nothing is copied that does not have to be: an object that loses no entity is forwarded untouched, one that loses some is rebuilt from its survivors. The bounding rules are in WORLD space, so an object placed by a geo/Transform in OBJECT mode upstream is tested where it stands; the expression and normal rules read the geometry as stored and are not turned by that transform.
Parameters
| Name | Type | What it does |
|---|---|---|
| entity | UInt8 POINT · PRIMITIVE · OBJECT · STAGE | What is being deleted: points, primitives or objects. |
| invert | Bool | Delete everything the criteria did NOT match. |
| keepUnreferencedPoints | Bool | PRIMITIVE mode only: keep the points the surviving primitives no longer use, unreferenced, instead of dropping them with the primitives that owned them. |
| combineMode | UInt8 OR · AND | How several active criteria combine: OR takes the union, AND the intersection. |
| group | String | Restrict the deletion to a group. Only entities in it may be deleted; an OBJECT group restricts which objects may be. Empty = anything may be. |
| byRange | Bool | Delete a repeating slice of the entities. |
| range | Vector2UInt | First number = how many to take, second = how often. So 1 and 3 takes every third entity, 2 and 5 takes the first two of every five. This is a repeating step, not a from-to range. |
| byExpression | Bool | Delete with an expression evaluated per entity. |
| expression | Bool | A true/false expression run on each entity, e.g. `attrib(.P).y > 0`. True means deleted. `@P` is the point exactly as stored, with no object transform applied. |
| byBoundingBox | Bool | Delete what falls inside a box. |
| boundingBoxMin | Vector3 | Lower corner of the box, in world space. |
| boundingBoxMax | Vector3 | Upper corner of the box, in world space. |
| byBoundingObject | Bool | Delete what falls inside the shape plugged into input 1. Triangle meshes use a real inside test; anything else uses its bounding box. |
| byNormal | Bool | Delete primitives facing a given direction, read off the geometry as stored. |
| normal | Vector3 | The direction to face, in the geometry's own frame. An object transform upstream does not turn it. |
| angle | Float | How far a primitive may point away from that direction and still count, in degrees. |
| byArea | Bool | Delete primitives by their area. |
| areaMode | UInt8 SMALLER · LARGER | Delete the primitives SMALLER or LARGER than the threshold. |
| area | Float | The area threshold. |
| byName | Bool | Delete objects by name. |
| name | String | Object names to match. `*` and `?` are wildcards, `^name` excludes, e.g. `box* ^boxTemp`. A plain name matches exactly. |
| byGeometryType | Bool | Delete objects by what kind of geometry they hold. |
| geometryType | UInt8 UNDEFINED · POINT · SEGMENT · TRIANGLE · QUAD · TETRAHEDRON · HEXA · MANIFOLD_2D · MANIFOLD_3D · CAD_SHAPE · VOLUME · NURBS_CURVE · NURBS_SURFACE · BREP · VOXEL · SDF_3D · SDF_2D | The geometry kind to match. |
See also
- geo/GroupCreate
- geo/GroupDelete
- geo/Clip
- geo/Transform
This page is generated from the engine, so it describes the release you can download. The same text is in the editor's Help panel next to the node itself.