I created a simple custom map on Google Maps that illustrates the estimation algorithm mentioned by the accepted answer (1/111111 == one meter). Feel free to see and play with it here:
I don't know a simple way to do this, you will need extra step. The first step would be to brake your line into parts that are in the same direction (left or right angles). Then for each of your parts you can assesed its "complexity" for exemple by comparing its length to the length of the line first_point - last_point (I've seen a paper that called that "...
Raster solution below is approximate but fast.
Erase old small boxes from big box and convert what remains into integer raster with value of 1. Compute focal statistics SUM using rectangle shape corresponding to dimensions of a new small box. It is 30 m high and 50m wide in example below:
Find cells where focal statistics == height*width. All matching cells ...
v.net does this also very nice with the "connect" option. Note that after connecting the points to the lines, you would have to run v.category to add IDs to the new line segments (as described in the manual).