Skip to content

Commit

Permalink
Remove protocol conformance checks when initializing Animations
Browse files Browse the repository at this point in the history
  • Loading branch information
noahsmartin committed Nov 30, 2021
1 parent e9c52fa commit 3d3deed
Showing 1 changed file with 13 additions and 2 deletions.
Expand Up @@ -20,32 +20,40 @@ extension Array where Element == ShapeItem {

let nodeTree = NodeTree()

var pathNode: PathNode? = nil
var renderNode: RenderNode? = nil
for item in self {
guard item.hidden == false, item.type != .unknown else { continue }
if let fill = item as? Fill {
let node = FillNode(parentNode: nodeTree.rootNode, fill: fill)
nodeTree.rootNode = node
nodeTree.childrenNodes.append(node)
renderNode = node
} else if let stroke = item as? Stroke {
let node = StrokeNode(parentNode: nodeTree.rootNode, stroke: stroke)
nodeTree.rootNode = node
nodeTree.childrenNodes.append(node)
renderNode = node
} else if let gradientFill = item as? GradientFill {
let node = GradientFillNode(parentNode: nodeTree.rootNode, gradientFill: gradientFill)
nodeTree.rootNode = node
nodeTree.childrenNodes.append(node)
renderNode = node
} else if let gradientStroke = item as? GradientStroke {
let node = GradientStrokeNode(parentNode: nodeTree.rootNode, gradientStroke: gradientStroke)
nodeTree.rootNode = node
nodeTree.childrenNodes.append(node)
renderNode = node
} else if let ellipse = item as? Ellipse {
let node = EllipseNode(parentNode: nodeTree.rootNode, ellipse: ellipse)
nodeTree.rootNode = node
nodeTree.childrenNodes.append(node)
pathNode = node
} else if let rect = item as? Rectangle {
let node = RectangleNode(parentNode: nodeTree.rootNode, rectangle: rect)
nodeTree.rootNode = node
nodeTree.childrenNodes.append(node)
pathNode = node
} else if let star = item as? Star {
switch star.starType {
case .none:
Expand All @@ -54,15 +62,18 @@ extension Array where Element == ShapeItem {
let node = PolygonNode(parentNode: nodeTree.rootNode, star: star)
nodeTree.rootNode = node
nodeTree.childrenNodes.append(node)
pathNode = node
case .star:
let node = StarNode(parentNode: nodeTree.rootNode, star: star)
nodeTree.rootNode = node
nodeTree.childrenNodes.append(node)
pathNode = node
}
} else if let shape = item as? Shape {
let node = ShapeNode(parentNode: nodeTree.rootNode, shape: shape)
nodeTree.rootNode = node
nodeTree.childrenNodes.append(node)
pathNode = node
} else if let trim = item as? Trim {
let node = TrimPathNode(parentNode: nodeTree.rootNode, trim: trim, upstreamPaths: nodeTree.paths)
nodeTree.rootNode = node
Expand All @@ -81,12 +92,12 @@ extension Array where Element == ShapeItem {
nodeTree.renderContainers.append(node.container)
}

if let pathNode = nodeTree.rootNode as? PathNode {
if let pathNode = pathNode {
//// Add path container to the node tree
nodeTree.paths.append(pathNode.pathOutput)
}

if let renderNode = nodeTree.rootNode as? RenderNode {
if let renderNode = renderNode {
nodeTree.renderContainers.append(ShapeRenderLayer(renderer: renderNode.renderer))
}
}
Expand Down

0 comments on commit 3d3deed

Please sign in to comment.