一套用于处理矩形的 Swift 实用工具,包括以通用方式构建您自己的矩形工具!
此软件包包含
IntRect
和 UIntPoint
等新类型谁知道处理矩形还有这么多事情要做?
该库旨在永远不会妨碍您。 最小的任意决策,最大的灵活性。
例如,其他框架可能会说它们可以帮助您找到从任何 CGPoint
到另一个点的距离,但不会为任何其他类型提供该功能。 这个框架不在乎这两种类型是什么,只要它们的 x
和 y
坐标使用相同的类型即可。 这意味着,如果您想测量从某个 CGPoint
到某个也使用 CGFloat
的自定义 2D 点状结构的距离,这个框架会很乐意让您毫不费力地做到这一点。
例如,假设您为了满足您的特定需求而制作了这个:
struct AnnotatedPoint {
var x: CGFloat
var y: CGFloat
var annotation: String
}
您可以像这样快速轻松地找到它与 CGPoint
之间的距离:
import RectangleTools
extension AnnotatedPoint: Point2D {
// Nothing to do! 🦆
}
func isCloseEnoughToSnap(cursorPosition: AnnotatedPoint, to anchor: CGPoint) -> Bool {
cursorPosition.distance(to: anchor) < snapDistnce
}
超过 2,000 个测试断言证明该库的运行方式与其描述的一致
该库是为企业级应用程序创建的,目前正被多家公司用于生产中。
如果您在 SwiftUI 中使用它,您还可以 import RectangleTools_SwiftUI
来获取 SwiftUI 特定的矩形工具!