gpt4 book ai didi

ios - UIBezierPath - 你可以 "clip"一个吗?

转载 作者:行者123 更新时间:2023-11-29 11:26:37 25 4
gpt4 key购买 nike

假设您有一个自己构建的 UIBez:

enter image description here

现在我想“剪辑”它,也许用这个矩形:

enter image description here

所以在示例中,我想要的最终路径是:

enter image description here

(或者在示例中,您可以“减去”右侧的矩形和底部的矩形。)

iOS 工具包是否包含这种构建 UIBezierPath 的能力?

我认为答案是“否”,但这是不可能通过谷歌搜索的事情之一,因为您得到的是不相关的 QA。所以我找不到答案。

请注意 - 这与使用 .append 的简单“加洞”完全不同(例子 https://stackoverflow.com/a/57514286/294884 )

最佳答案

没有内置的路径裁剪(当然也没有自动关闭裁剪路径)。


除了您提到的“添加孔”技术之外,另一种方法就是对其进行 mask /剪裁。我知道你知道这一点,但为了 future 的读者,内置的裁剪/ mask 仅在图形上下文中可用(或 CALayermask ).例如,如果你有一个 CAShapeLayer,你可以设置它的 mask(例如下面虚线矩形所示的矩形):

enter image description here

显然,这种方法不能“关闭”被裁剪的路径。

但是,如果您的路径由一系列线段组成,理论上您可以编写自己的例程来遍历这些线段以寻找与矩形剪裁蒙版的交点(以及检测它们是否包含在剪裁中面具)。如果您搜索“UIBezierPath intersection ”,你会看到一些相关的例子。即使那样,您也会遇到关于如何通过算法关闭路径的有趣边缘案例。

关于ios - UIBezierPath - 你可以 "clip"一个吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58148691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com