[algorithms][get_turn_info] fix bug reported by Jeremy Murphy on the boost mailing list

In `collinear_opposite` the `set_tp` method was assuming that all point types passed to it are the same; this
is not the case: there are two different point types; the problem appeared when using `point_xy` in `rtree` and running intersects queries; in this case `get_turn_info` was instantiated with two different point types, the one used by the user and the one used by the `rtree` to store boxes, which were different.