Supports also polygon geometries, handles null geometries, and records the original line angle along with the distance for each point.