Skip to content

绘制路径及形状

当用户访问列表中的地标时可以获得徽章奖励,为此我们需要创建徽章。在本文中,我们将通过组合路径和形状来创建徽章,然后把它和另一个表示位置的形状叠在一起。

我们可以尝试使用叠加符号来给不同类型的地标创建多个徽章,修改它的重复次数或更改各种角度和比例。

请先下载本节资源文件,并按照下面的步骤进行。

  • 预计完成时间:25 分钟
  • 资源文件:下载

1. 创建一个徽章视图

首先我们创建一个使用 SwiftUI 矢量绘图 API 绘制的徽章视图。

第 1 步

在导航窗格中选择 Views 目录,选择 File > New > File,从 iOS 模板表中选择 Swift File,然后点击 Next

第 2 步

将新文件命名为 HexagonParameters.swift

后面将会在 HexagonParameters.swift 中定义一个六边形。

第 3 步

HexagonParameters.swift 文件中,创建一个名为 HexagonParameters 的结构体。

第 4 步

定义一个 Segment 结构体来保存六边形一侧的三个点,为了使用 CGPoint,需要引入 CoreGraphics 模块。

每条边从上一条结束的地方开始,以直线移动到第一个点,然后按照贝塞尔曲线的路径移动到第二个点。第三点控制曲线的形状。

第 5 步

创建一个数组常量来保存 segments

第 6 步

segments 数组汇总添加六条边的数据对象:Segment,每条边对应一个 Segment 对象。

第 7 步

添加一个 adjustment 常量,用于调整六边形的形状。

绘制路径及形状 has loaded