Put points onto the primitive center
how to put points onto the primitives center file download link
This is one of ways I know, just simply use import primitive attribute
8 ways to put points onto the geo surface
which use using the paricles to find nearest points onto the geometry. This is not limitate to only the particles but also the Geos or what ever you wanna use.
2 using volume gradient(vector direction) and volume sample to get vector force which point to out-ward and then we invert it which will keep particle onto the surface.
use curl noise to give points a bit random noise on position or v.
3 Use self- collision to keep particles moving around surface, popattract node will do the trick. This is a quick way for smooth surface object like sphere. The example is not working really well though.
4 use pop advect to use volume control particles
the trick here is use volume point.N as velocity direction, then inside popnetwork use pop advect adjust vel value to -20, which will create a inward force to keep particle stay within geo. Then we need to setup particle to collision with geo to get correct result.
5 xyzdist and primuv
6 attribute interpolation use with scatter, just need to turn on the source prim and source primuv inside scatter node, this is the same as xyzdist.
7 displacement along the edge
8 point deform
3 ways to do attribute transfer
1 attribute transfer: example is transfer sphere Normal to the intersection points
2 use PCcloud and pcfilter
3 use volume gradient
1 smooth/lerp interpolation 2 values blend in two models and use time to control it
lerp is the same as mix in vop
here is the example to use relbox control lerp, here if you don’t want to create a new control vector, you can just use @Cd and @Cd.g to do it. The result will be same.
you can also combine 2 lines above with v@Ctrl=relbbox(2,@P) (here  shortcut for Y axis)
connect points into lines
couples ways here
1 convert lines, to convert shaded geo into outlines, this also create a restlength value as well(we gonna use it in constraint)
2 ends, unroll U to convert
3 add, first you can create cluster points and then use cluster attribute to convert points into lines,
4 add, you can also use sourceptnum attribute to convert particles into lines(need to make sure popnetwork has this value),
5 add, setup @id=@ptnum and then use id attribute to connect to grids
Okay, there are couple different way to group in Houdini as far as I know.
1 use paint node group things.
paint node - use partition - group @Cd<1or @Cd>1 based on what color you paint on.
2 just use Group node
but this only works with existing attributes in spreadsheet. like
@N.x>1, @Cd>0.5, @P.y<0.2
3 use Attribute Wrangle
you can just create a group in here or you create a new attribute then use group node to adjust this new attribute.
create a new attribute then use group node to adjust this new attribute
use existing value Cd, use noise will create a bigger pattern noise
or just create a new one like
then inside group use @Ctrl<0.5 to group the points
direct create a group inside attributewrangle, use rand will create a super fast jumpping pattern and changed on each frame,I think it more works like seed.
more works like seed difference
this will create a more calm pattern compare to rand()
the good things about using attribute wrangle is you have more control on things. here you can use “noise value to control the group range“
then inside group use @B==1 to group points
4 how to use distance to create the a ramp for selection then you can use partition group based on color
5 How to control Group B by Using group A mask, Group Combine use group B to internet with group A
Use particle flip to deform geo
1 need to copy filpobject name back to the geometry level dopnetwork object merge, so we can use it to drive original object. or just use object merge bring in the file object.
2inside flip object choose particle field instead of suface sop
3inside flip solver, particle motion tab, turn off reseed particles. if not, which will create mess.
4 inside volume motion turn on viscosity
5 a way to give object new texture based on UV, you need to promote vertices back to points