private List <CEdge> GetCareCEdgeLtCptCoincident(CPoint LSNodeCpt, CEdge SgCEdge, bool blnAllowOverlap = false) { var SmallerAxisAngleCEdge = CDCEL.FindSmallerAxisAngleCEdgebyCEdge(LSNodeCpt, SgCEdge, blnAllowOverlap); var CareCEdgeLt = new List <CEdge>(1); if (SgCEdge.dblAxisAngle != SmallerAxisAngleCEdge.dblAxisAngle) { CareCEdgeLt.Add(SmallerAxisAngleCEdge.cedgeNext); } else { if (blnAllowOverlap == true) { //this should be a special case where a single polyline has only one edge (SgCEdge), //at the same time, this edge is used by the combined triangulation CareCEdgeLt.Add(SmallerAxisAngleCEdge); } else { throw new ArgumentException("we did not consider overlap!"); } } return(CareCEdgeLt); }