/// <summary> /// update dynamic cutpoint of 2 adjacent edges /// </summary> /// <param name="p"></param> static void UpdateNewEdgeCut(Vertex p) { OutsideEdgeLine e0 = p.E0; OutsideEdgeLine e1 = p.E1; Vector2f tmp_e0_q = e0._newDynamicMidPoint + e0.GetOriginalEdgeVector(); Vector2f tmp_e1_p = e1._newDynamicMidPoint - e1.GetOriginalEdgeVector(); if (MyMath.FindCutPoint(e0._newDynamicMidPoint, tmp_e0_q, e1._newDynamicMidPoint, tmp_e1_p, out Vector2f cutpoint)) { p.SetNewXY(cutpoint.X, cutpoint.Y); } else { //pararell edges } }