Created
February 13, 2017 20:38
-
-
Save markd2/7bd2a5e2969b000f296828b3bcbf49f8 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import CoreGraphics | |
private typealias CGPathDumpUtility = CGPath | |
extension CGPathDumpUtility { | |
func dump() { | |
self.apply(info: nil) { info, unsafeElement in | |
let element = unsafeElement.pointee | |
switch element.type { | |
case .moveToPoint: | |
let point = element.points[0] | |
print("moveto - \(point)") | |
case .addLineToPoint: | |
let point = element.points[0] | |
print("lineto - \(point)") | |
case .addQuadCurveToPoint: | |
let control = element.points[0] | |
let point = element.points[1] | |
print("quadCurveTo - \(point) - \(control)") | |
case .addCurveToPoint: | |
let control1 = element.points[0] | |
let control2 = element.points[1] | |
let point = element.points[2] | |
print("curveTo - \(point) - \(control1) - \(control2)") | |
case .closeSubpath: | |
print("close") | |
} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment