1
1
mirror of https://github.com/exyte/Macaw.git synced 2024-09-21 18:09:21 +03:00
Macaw/Source/views/ShapeLayer.swift
2017-01-26 16:17:56 +07:00

35 lines
765 B
Swift

import UIKit
class ShapeLayer: CAShapeLayer {
var node: Node?
var renderTransform: CGAffineTransform?
var animationCache: AnimationCache?
var shouldRenderContent = true
override func draw(in ctx: CGContext) {
if !shouldRenderContent {
super.draw(in: ctx)
return
}
guard let node = node else {
return
}
guard let animationCache = animationCache else {
return
}
let renderContext = RenderContext(view: .none)
renderContext.cgContext = ctx
if let renderTransform = renderTransform {
ctx.concatenate(renderTransform)
}
let renderer = RenderUtils.createNodeRenderer(node, context: renderContext, animationCache: animationCache)
renderer.directRender()
renderer.dispose()
}
}