Sha256: 4f00c6ae30a5e18c232c97bf5c1b446d5a78d7bc05f591bcb2730fb10159a790

Contents?: true

Size: 723 Bytes

Versions: 1

Compression:

Stored size: 723 Bytes

Contents

module Savage
  module Directions
    class ArcTo < PointTarget
      attr_accessor :radius, :rotation, :large_arc, :sweep

      def initialize(radius_x, radius_y, rotation, large_arc, sweep, target_x, target_y, absolute=true)
        super(target_x, target_y, absolute)
        @radius = Point.new(radius_x, radius_y)
        @rotation = rotation
        @large_arc = large_arc.is_a?(Numeric) ? large_arc > 0 : large_arc
        @sweep = sweep.is_a?(Numeric) ? sweep > 0 : sweep
      end

      def to_a
        [command_code, @radius.x, @radius.y, @rotation, bool_to_int(@large_arc), bool_to_int(@sweep), target.x, target.y]
      end

      def command_code
        (absolute?) ? 'A' : 'a'
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
savage-1.2.0 lib/savage/directions/arc_to.rb