public Path GeneratePath(IEnumerable<Layer> layers) { var complete = new Path(); // set from configuration var lookBehind = 2; var lookAhead = 2; for(var current = 0; current < layers.Count(); current++) { var layer = layers.ElementAt(current); var prevLayers = new List<Layer>(); var nextLayers = new List<Layer>(); for (var offset = 1; offset <= lookBehind; offset++) { var prev = current - offset; if (prev >= 0) { prevLayers.Add(layers.ElementAt(prev)); } } for (var offset = 1; offset <= lookAhead; offset++) { var next = current + offset; if (next < layers.Count()) { prevLayers.Add(layers.ElementAt(next)); } } complete = _pathHelper.AppendPaths(complete, GeneratePathForLayer(layer, prevLayers, nextLayers)); } return complete; }
public Path AppendPaths(Path basePath, Path toAppend) { return new Path(); }
public string GenerateGCode(Path path) { return "G1 X0 Y0 Z0"; }