Builtin Library
README.md
group.expand
Grow the group named by name outward by rings adjacency rings: every ring adds the elements touching the selection (group.reach with "max"). Written under as, which defaults to name. A name that is not a group of class is refused.
Inputs
geometry(Geometry). The geometry carrying the group. A copy carrying it grown comes out.name(String, default ""). The group to grow.class(String, default "point", one of "edge", "point", "primitive", "vertex"). The element class the group lives on.as(String, default ""). The name the grown group is written under. Left empty it isname, growing it in place.rings(Float, default 1, at least 0). How many adjacency rings to grow by. Each ring reads the membership the previous one left and adds the elements touching it. 0 leaves the group as it is.
Outputs
geometry(Geometry). The input carrying the grown group onclass.
local tops = g.group.by_normal({ geometry = g.mesh.sphere({}), name = "top", class = "primitive", angle = 20 })
local band = g.group.expand({ geometry = tops, name = "top", class = "primitive", rings = 2, as = "wide" })