public List <Vector2f> HullPointsInOrder() { List <Edge> hullEdges = HullEdges(); List <Vector2f> points = new List <Vector2f>(); if (hullEdges.Count == 0) { return(points); } EdgeReorderer reorderer = new EdgeReorderer(hullEdges, typeof(Site)); hullEdges = reorderer.Edges; List <LR> orientations = reorderer.EdgeOrientations; reorderer.Dispose(); LR orientation; for (int i = 0; i < hullEdges.Count; i++) { Edge edge = hullEdges[i]; orientation = orientations[i]; points.Add(edge.Site(orientation).Coord); } return(points); }
private void ReorderEdges() { EdgeReorderer reorderer = new EdgeReorderer(edges, typeof(Vertex)); edges = reorderer.Edges; edgeOrientations = reorderer.EdgeOrientations; reorderer.Dispose(); }