Как использовать диапазон.карта в swift 3/4?


У меня есть код ниже, который работает в swift 2.3. Я изо всех сил пытаюсь понять, как преобразовать его в swift 3/4-вопрос, который он таков Value of type 'Range<Int>' has no member 'map'

let grainSize = CGFloat(0.01)
        let min = CGFloat(-3)
        let max = CGFloat(3)
        let range = Range<Int>(uncheckedBounds: (lower: Int(min/grainSize), upper: Int(max/grainSize)))
        let lol = NSRange(range)

        var points = range.map { step -> CGPoint in
            let i = grainSize * CGFloat(step)
            let x = x_base + (i * controller.width / 4.0)
            let y = y_base + (m * equation(i))
            if x_init == CGFloat.max { x_init = x }
            return CGPointMake(x, y)
        }
        points.append(CGPointMake(x_init, y_base))
        points.forEach { renderer.lineTo($0) }

Мне интересно, может ли кто-то указать мне правильное направление для этого-даже в документации об этом, поскольку я ничего не могу найти об этом в apple docs либо =[

1 3

1 ответ:

Range не принимает Sequence, просто создает диапазон буквально как CountableClosedRange

let range = Int(min/grainSize)...Int(max/grainSize)