class DYI::Shape::Path::CommandBase
Attributes
point[R]
preceding_command[R]
Public Class Methods
new(relative, preceding_command, point)
click to toggle source
# File lib/dyi/shape/path.rb, line 607 def initialize(relative, preceding_command, point) @relative = relative @preceding_command = preceding_command @point = Coordinate.new(point) end
Protected Class Methods
absolute_commands(preceding_command, *args)
click to toggle source
# File lib/dyi/shape/path.rb, line 654 def absolute_commands(preceding_command, *args) commands(false, preceding_command, *args) end
relative_commands(preceding_command, *args)
click to toggle source
# File lib/dyi/shape/path.rb, line 650 def relative_commands(preceding_command, *args) commands(true, preceding_command, *args) end
Public Instance Methods
absolute?()
click to toggle source
# File lib/dyi/shape/path.rb, line 617 def absolute? !relative? end
last_point()
click to toggle source
# File lib/dyi/shape/path.rb, line 625 def last_point relative? ? preceding_point + @point : @point end
preceding_point()
click to toggle source
# File lib/dyi/shape/path.rb, line 629 def preceding_point preceding_command && preceding_command.last_point end
relative?()
click to toggle source
# File lib/dyi/shape/path.rb, line 613 def relative? @relative end
start_point()
click to toggle source
# File lib/dyi/shape/path.rb, line 621 def start_point preceding_command.start_point end
to_compatible_commands(preceding_command)
click to toggle source
# File lib/dyi/shape/path.rb, line 633 def to_compatible_commands(preceding_command) compat_commands = clone compat_commands.preceding_command = preceding_command compat_commands end
used_same_command?()
click to toggle source
# File lib/dyi/shape/path.rb, line 639 def used_same_command? preceding_command.instructions_char == instructions_char end
Protected Instance Methods
preceding_command=(value)
click to toggle source
# File lib/dyi/shape/path.rb, line 645 def preceding_command=(value) @preceding_command = preceding_command end