Not sure if this is what you want but projecting a 3D line from one perspective is like a 3D slice or 3D plane through a triangulated 3D surface. The result would look like a straight line from only one perspective but in most cases would be a curved line in 3D space from other perspectives. Most CAD/CAM software and free software like MeshLab and ParaView can do this and most software has documentation on how the result was completed and what algorithm was used. Not sure if this helped you with your question, if not feel free to expand on your original question.
Thanks for your answer. Clearly, I do not give enough details. 3d line is just line in 3D space, which is given by two end points. imagine that we choose some direction and draw infinite number of lines going thru every point on the line (not just to end points) along chosen direction . Those lines will intersect triangulated surface and form a path on triangulated surface . This path will consist segments of straight lines lying on triangles. The question is how to bild this path efficiently.
Reading you answer more carefully, I kind of agree that formally it can be formulates as intersection of the some 3D plane with a lot of plane in each triangle from triangulated surface and then finding those planes cross the triangle. I probably will try and see how it looks like.