首页 > 解决方案 > 如何在 SwiftUI 中使用 Path 创建贝塞尔曲线

问题描述

我想在 SwiftUI 中使用 Path 实现图片中这样的路径,但是我对贝塞尔曲线的了解很少,无法在图像上重现绘图。

我说的是背景图,很难注意到;它就像一座山或楼梯。

任何帮助将不胜感激!

要复制的图像:

要重现的图像

这是我的代码:

struct BezierCurveView: Shape {

func path(in rect: CGRect) -> Path {
    
    var path = Path()
    
    path.move(to: CGPoint.zero)
    
    path.addCurve(to: CGPoint(x: rect.maxX / 3, y: rect.minY), control1: CGPoint(x: rect.minX + 40, y: rect.minY - 90), control2: CGPoint(x: rect.minX + 80, y: rect.minY - 90))
    
    path.addLine(to: CGPoint(x: rect.maxX, y: rect.minY))
    
    path.addLine(to: CGPoint(x: rect.maxX, y: rect.maxY))
    
    path.addLine(to: CGPoint(x: rect.minX, y: rect.maxY))
    
    return path
    
 }
}

这是我的代码的结果:

我的代码的结果

标签: iosswiftswiftuibezier

解决方案


推荐阅读