原文链接:https://github.com/fzhlee/SwiftUI-Guide#-%E7%AC%AC32%E8%8A%8232shape-path-
使用Path,并配合move和addLine绘制自定义的图形
示例代码:
Path { path in //首先添加一个路径,在闭包语句里进行路径形状的定义
path.move(to: CGPoint(x: 30, y: 0)) //将路径的起点移到此处的坐标位置,也就是水平坐标为30,垂直坐标为0的位置
path.addLine(to: CGPoint(x: 30, y: 200)) //然后通过addLine方法,从路径的起点,绘制一条直线,直线的终点坐标为{30, 200}
path.addLine(to: CGPoint(x: 230, y: 200)) //接着从点{30, 200}开始,向右侧绘制一条直线,直线的终点坐标为{230, 200}。
path.addLine(to: CGPoint(x: 230, y: 0)) //继续向上方绘制一条直线,直线的终点坐标为{230, 0}。
path.move(to: CGPoint(x: 30, y: 300))
path.addQuadCurve(to: CGPoint(x: 230, y: 300), control: CGPoint(x: 130, y: 450)) //通过addQuadCurve添加四边形曲线命令,绘制一条贝塞尔曲线,曲线的终点位于(230,300),曲线的控制点位于(130,450)
path.addQuadCurve(to: CGPoint(x: 330, y: 300), control: CGPoint(x: 280, y: 220))
}
Path { path in
path.addEllipse(in: CGRect(x: 100, y: 30, width: 200, height: 200)) //将椭圆移到当前路径位置
path.addRoundedRect(in: CGRect(x: 100, y: 120, width: 200, height: 200), cornerSize: CGSize(width: 10, height: 10)) //加圆角矩形到当前路径
path.addEllipse(in: CGRect(x: 100, y: 210, width: 200, height: 200))
}
网友评论