I need to restrain a set of points on a plane whose normal is fixed. The plan can be a set of infinite planes with the fixed normal. Using the coplanar condition cannot fix a particular plane while using on plane is possible only for one plane.

So is it possible to restrain a set of points in a plane whose normal is fixed, but the plane itself is movable.

I tried using this, but it doesn’t quite solve the issue. I’ll try rephrasing my question. I need a component which takes in a set of points and a vector as its input and gives goals to restrain all the points to a plane with the vector as its normal.

In the solution you have shared, the normal of the plane changes based on the points. However the normal should be fixed and the points should be restrained

The normal was only based on the points upstream of Kangaroo for that example, but the same principle applies when you want to give the vector as an input

onMovingPlane2.gh (16.8 KB)

It is keeping one set of (hidden) points on a *fixed* plane perpendicular to your input normal, and then keeping another visible set of points at equal (but not fixed) distance along the given vector from the hidden ones.

This would also be a very simple custom goal - I can provide an example if it would help.

Great! Thanks

Here’s a custom goal for this:

onMovingPlane_customGoal.gh (13.9 KB)

Probably better than the other method above, since it doesn’t rely on hidden points, and the calculations can actually be much simpler when the plane normal is already known.