Builtin Library
- ..
- .metadata264 B
- README.md1.7 KB
- axis_basis.procNode
- box.procNode
- cone.procNode
- count_neighbors.procNode
- cylinder.procNode
- disc.procNode
- filter.procNode
- from_grid.procNode
- from_vertices.procNode
- grid.procNode
- neighbors.procNode
- on_curve.procNode
- on_mesh.procNode
- on_surface.procNode
- poisson.procNode
- pose.procNode
- relax.procNode
- shell_radius.procNode
- sphere.procNode
- surface_samples.procNode
README.md
points (nodebox)
Point clouds: the nodes that make points, read what stands around them, thin them, move them and compose their pose. Points are a Geometry with points and no primitives; the instancing, prefab and particle nodes stand something on each one.
- Shapes:
points.grid(a flat lattice on XZ),points.box(a 3D lattice),points.disc,points.sphere,points.cylinder,points.cone(random points in or on a shape, each drawn on its own socountadds points without moving the others) andpoints.poisson(blue noise in a disc, no two closer thanminDist). - From geometry:
points.from_vertices(a point per point of a mesh),points.on_meshandpoints.on_surface(scattered by area over a mesh),points.surface_samples(the scatter they share, keyed to a scope of your own),points.on_curve(evenly along curves by arc length) andpoints.from_grid(a grid's cell centres). - Around each point:
points.neighbors(count, nearest distance, centroid, a neighbour mean) andpoints.count_neighbors(occupied lattice neighbours of voxel-like points). - Change:
points.filter(keep the points a mask or an attribute passes),points.relax(even out spacing) andpoints.pose(composepscale,rot,trans,pivot,N,vandupintoP,orientandscale). - Parts:
points.axis_basisandpoints.shell_radius, which the shapes are built from.
Every node that makes points numbers them as id (0 upward), except points.poisson and points.surface_samples. A seed draws the same points on every run, machine and platform.
local spots = g.points.poisson({ radius = 4, minDist = 0.8 })
local kept = g.points.filter({ points = spots, mask = spots.point.P.x })