added geometric segment module