This node calculates where a line (not a line segment!) and a plane intersect.
Input / output
The plane is defined by its normal vector and a point on the plane. The line is defined by two points. The output point is where the line and plane intersect.
The example in the file combines the node with the Get Distance node to check if a three dimensional line intersects with a NURBS surface. This network can be used to create several simulations that can answer questions like: Do sunrays reach a balcony? Is the church tower visible from a window? Etc.
Script is based on: https://rosettacode.org/wiki/Find_the_intersection_of_a_line_with_a_plane#Python
The node uses numpy. Thanks to DomC for creating a numpy importer node.