Я пытаюсь нарисовать пунктирную полилинию в GMSMapView. То, чего я достиг, это добавить пунктирную ломаную линию на карту. Для которого я написал ниже код:
polyLine.strokeWidth = 10
polyLine.strokeColor = UIColor(red: 95/255, green: 89/255, blue: 89/255, alpha: 1.0)
let styles: [GMSStrokeStyle] = [GMSStrokeStyle.solidColor(UIColor.clear), GMSStrokeStyle.solidColor(UIColor.red)]
let scale = 1.0 / testMap.projection.points(forMeters: 1, at: testMap.camera.target)
let solidLine = NSNumber(value: 10.0 * Float(scale))
let gap = NSNumber(value: 10.0 * Float(scale))
let span = GMSStyleSpans(polyLine.path!, styles, [solidLine, gap], GMSLengthKind.rhumb)
polyLine.spans = span
С помощью этого кода я получаю ломаную линию с 10x10 квадратами в виде штрихов.
Для пунктирной полилинии я попытался установить точечное изображение как один из сплошных цветов в GMSStrokeStyle, как показано ниже:
let styles: [GMSStrokeStyle] = [GMSStrokeStyle.solidColor(UIColor(patternImage: UIImage(named: "dot1.jpg")!)), GMSStrokeStyle.solidColor(UIColor.red)]
Еще одно решение, которое я пробовал для этого, - здесь
При использовании этого решения загрузка и обновление карты занимает значительное время. Из-за чего приложение зависает при загрузке карты.
Каковы другие подходы к рисованию пунктирной полилинии на карте Google в ios?