Liang Youdong-Barsky linear cutting algorithm computer graphics Kong Lingde case source