private List <List <int> > GetSegments(List <Vector2> aPath, out List <Ferr2DT_TerrainDirection> aSegDirections) { List <List <int> > segments = new List <List <int> >(); if (splitCorners) { segments = Ferr2D_Path.GetSegments(aPath, out aSegDirections, directionOverrides, fill == Ferr2DT_FillMode.InvertedClosed, GetComponent <Ferr2D_Path>().closed); } else { aSegDirections = new List <Ferr2DT_TerrainDirection>(); aSegDirections.Add(Ferr2DT_TerrainDirection.Top); List <int> seg = new List <int>(); for (int i = 0; i < aPath.Count; i++) { seg.Add(i); } segments.Add(seg); } if (Path.closed) { Ferr2D_Path.CloseEnds(aPath, ref segments, ref aSegDirections, splitCorners, fill == Ferr2DT_FillMode.InvertedClosed); } return(segments); }
private List <List <Vector2> > GetSegments(List <Vector2> aPath, out List <Ferr2DT_TerrainDirection> aSegDirections) { List <List <Vector2> > segments = new List <List <Vector2> >(); if (splitCorners) { segments = Ferr2D_Path.GetSegments(aPath, out aSegDirections, directionOverrides, fill == Ferr2DT_FillMode.InvertedClosed, GetComponent <Ferr2D_Path>().closed); } else { aSegDirections = new List <Ferr2DT_TerrainDirection>(); aSegDirections.Add(Ferr2DT_TerrainDirection.Top); segments.Add(aPath); } if (path.closed && smoothPath == false) { Ferr2D_Path.CloseEnds(ref segments, splitCorners); } return(segments); }