Here’s our take at a GH component that finds the integral lines of 2d or 3d vector fields.
The way it works is very simple: you give it a list of sample points and associated vectors (1 vector for each sample point) and a start point, and it flows that start point along the vector field up to a specified iteration limit and step size. The advantage to having a generalized component like this is that along with things like principal curvature lines, it can also compute paths guided by isovists and visibility algorithms.
Download it here. Written by Chris Walsh and Daniel Hambleton.