protected override IEnumerable <MapCoordinate> GetInternalAffected(MapCoordinate firstCoordinate, MapCoordinate mapCoordinate) { var algorithm = new BresenhamLineDrawingAlgorithm(); var onCircleCells = GetAffectedCoordinates(firstCoordinate, mapCoordinate).ToList(); var midPoint = new MapCoordinate(firstCoordinate.Key, (firstCoordinate.X + mapCoordinate.X) / 2, (firstCoordinate.Y + mapCoordinate.Y) / 2); Func <MapCoordinate, bool> canFillInto = (coordinate) => { return(!onCircleCells.Contains(coordinate)); }; return(FloodFillHelper.FloodFill(midPoint, canFillInto)); }
public void SetUp() { _algorithm = new BresenhamLineDrawingAlgorithm(); }
protected override IEnumerable <MapCoordinate> GetAffectedCoordinates(MapCoordinate firstCoordinate, MapCoordinate mapCoordinate) { var algorithm = new BresenhamLineDrawingAlgorithm(); return(algorithm.DrawLine(firstCoordinate, mapCoordinate)); }