 Atomic = require 'art-atomic'
 Canvas = require 'art-canvas'
 Base = require './base'
+{PointLayout, PointLayoutBase} = require '../layout'
 {log, isPlainObject, min, max, createWithPostCreate, isNumber} = Foundation
 {color, Color, point, Point, rect, Rectangle, matrix, Matrix, point0, point1} = Atomic
 {GradientFillStyle} = Canvas
-
 # can be a gradient fill or a solid-color fill
 # if the @gradient property is set (including indirectly by setting the @colors property), then it is a gradient
 # Otherwise, the @color property is used and @from and @to properties are ignored.


    if _colors
      {_from, _to, _gradientRadius, _currentSize} = @
      drawOptions.colors = _colors
      if _gradientRadius?
        _to ||= _from


      # I don't love this solution to scaling the gradient from/to, but it's acceptable for now.
      # It creates two new objects, which is unfortunate. It also mutates an object which should be immutable.
      drawOptions.from   = _from.layout _currentSize
      drawOptions.to     = _to.layout _currentSize
