Skip to content

Commit 74de98c

Browse files
committed
Adds Units to Gradient LayerTree model
1 parent b612e78 commit 74de98c

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

SwiftDraw/LayerTree.Builder.swift

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,14 @@ extension LayerTree.Builder {
213213
gradient.stops = makeGradientStops(for: element)
214214
}
215215

216+
if element.gradientUnits == .userSpaceOnUse {
217+
gradient.units = .userSpaceOnUse
218+
}
219+
220+
guard gradient.stops.count > 1 else {
221+
return nil
222+
}
223+
216224
return gradient
217225
}
218226

SwiftDraw/LayerTree.Gradient.swift

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ extension LayerTree {
3535
var start: Point
3636
var end: Point
3737
var stops: [Stop]
38-
38+
var units: Units = .objectBoundingBox
39+
3940
init(start: Point, end: Point) {
4041
self.start = start
4142
self.end = end
@@ -60,5 +61,10 @@ extension LayerTree {
6061
self.opacity = opacity
6162
}
6263
}
64+
65+
enum Units {
66+
case userSpaceOnUse
67+
case objectBoundingBox
68+
}
6369
}
6470
}

0 commit comments

Comments
 (0)