GEOSwift - Создать пустой многоугольник
Я использую GEOswift в приложении для построения инженерных графиков. Мне нужно определить несколько пустых полигонов на разных этапах построения. До недавнего обновления у меня была функция для создания пустого многоугольника, и она отлично работала:
func emptyPoly() -> Geometry {
let poly1 = Geometry.create("POLYGON((0 0, 0 0, 0 0, 0 0))")
let poly2 = Geometry.create("POLYGON((1 1, 1 1, 1 1, 1 1))")
return poly1!.intersection(poly2!)!
}
теперь на основе изменений библиотеки мне пришлось изменить ее на:
func emptyPoly() -> Geometry? {
var poly1: Geometry
var poly2: Geometry
var poly1_intersect_poly2: Geometry
do {
poly1 = try Geometry(wkt: "POLYGON((0 0, 0 0, 0 0, 0 0))")
poly2 = try Geometry(wkt: "POLYGON((1 1, 1 1, 1 1, 1 1))")
poly1_intersect_poly2 = try poly1.intersection(with: poly2)!
return poly1_intersect_poly2
} catch {
print(error.localizedDescription)
return nil
}
}
и он всегда заканчивается сбоем, потому что:
Неустранимая ошибка: неожиданно обнаружен ноль при разворачивании необязательного
Что я могу изменить в функции, чтобы избежать этой ошибки?