Distance between points on 2 surfaces



i know it can be done, but do you guys have any ideas how to proceed?

the idea is to get dimensions between 2 separated surface (one over the other), but on the Z values.



  1. Project a point on surface 1 with the Z Axis (or it’s reverse) as the direction. (use the node Point.Project)

  2. Project the same point on surface 2 with the direction being the same. (use the node Point.Project)

  3. The distance between the two points is what you need, it seems (use the node Geometry.DistanceTo)


I’ll try that and let you know.


thank you!

seems to works!


i can have the distance, now i need a grid of point :slight_smile:

and how can i add line between point ? i mean like a MODEL 3d line



Hello Yien Chao,

Using those two projected points, you can create a line in Dynamo. (Use Line.ByStartPointEndPOint)

After creating Line in Dynamo, you can convert that into model curve.

Pass output of Line to ModelCurve.ByCurve node.

I hope that will help.



ok got it!


what i did is to project the points as you said on both surfaces and link those points by line on Z axis.

the issue was :

1 - i did not have the same amount of point on both surface (the surface 1 have 3-4 mores points!). so i manage to add points on surface 2.

2- most of time the surface 1 are over the surface 2, but sometimes it is UNDER. it generate lines, but i have no idea if the distance are negative or positive (+Z or -Z axis)

so i just offset the first surface by 1000mm to make sure it doesnt touch the second surface. that way if the lines generated values are more than 1000mm, i knew it is negative.


thanks for your help