# Using the function to find points near a surface

Hi everyone

In my project, I have around 2740 surfaces and there are 27047 points which lie on these surfaces. I am trying to use the function “plane closest point” to get the list of points which lie on each surface. So basically I want 2740 lists (number of surface) with list of points lying on it.

Problem: Right now as you can see in the image, it is treating the 2740 surface as one plane and giving results of all the points. I am not able to get 2740 lists which I want.

One bad way is to apply this function 2740 times with plane input as one surface at a time. But that’s a lot of work. Can any one please help me out?

I hope I am able to explain my problem. I am quite new to grasshopper.

Thank you so much

it seems you’ve flatten your input data somewhere? if not, try to graft you data tree

edit: note that a plane is not the same as a surface

I think what I am doing here is completely wrong, it is taking each surface and making a plane out of it and projecting the points on it.

Just to see if it is working, I tried to get the points on one small surface (see the figure), I still got all the points as result.

What I want to do is get the points from cloud of points which lie on a small surface and not a plane.

Thank you so much.

If more detail or the geometry is required, I can upload that as well.

Here is another picture to explain better…

This is the cloud of points I have (its a dome)

And this is one of the small surfaces on which these points are lying (its a mesh element of the dome).

And now I wanted to get the coordinates of all the points in the point clouds which are exactly lying on this small surface.

The Peacock plugin from @Dani_Abalde has a very useful, all-purpose, `*Closest Geometry*` component that gives you the point, index, and distance.