Geometry | Get intersection point to roof surface

Hi Dynamo Users,

I’m trying to retrieve the distance between my point and roof surface in my project.
With this node based version I’m able to to retrieve the closest point to the surface (P1) which is, I believe, perpendicular line to that surface.
I’m actually looking for P2.
A quick Question here: Should I create a line using my point as a start point along the Z axis and look for intersection point? Maybe you know some other nodes that I can use and get a fast result?

Just need someone’s advice of how to get this done better. I’m pretty sure that I’m very close. Thanks.

Is this what you looking for?

If not highlighted line is parallel to Z axis, then yes.
As I can see, Point.Project was the node I was looking for.

I’ve did indeed highlighted the perpendicular, but the node Point.Project does just that; projecting point onto geometry in the given vector and as you can see, provided vector is Z.Axis so the point is vertically projected.

Thanks a lot, @AlexanderBerg.
Saved me some time for sure!