It appears that function vgl_intersection() has a bug: It cannot detect intersection when components are two's complement.

e.g.

 

vgl_plane_3d pl1(1, 0, 0, 0);

vgl_plane_3d pl2(0, 1, 1, 0);

vgl_line_segment_3d inter;

 

bool intersect = vgl_intersection(inter, pl1, pl2);

       

intersect value is false but should be true.

 

Pascal