Method: Gcode::Line#to_s

Defined in:
lib/gcode/line.rb

#to_s(line_number = nil) ⇒ String

Returns the line, modified if multipliers are set and a line number is given.

Returns:

  • (String)

    the line.



88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'lib/gcode/line.rb', line 88

def to_s(line_number = nil)
  # return line if line_number.nil? || !line_number.is_a?(Fixnum)
  # return prefix_line(line, line_number) if @extrusion_multiplier.nil? && @speed_multiplier.nil?

  new_f = multiplied_speed
  new_e = multiplied_extrusion

  x_string = !x.nil? ? " X#{x+@x_add.to_f}" : ''
  y_string = !y.nil? ? " Y#{y+@y_add.to_f}" : ''
  z_string = !z.nil? ? " Z#{z+@z_add.to_f}" : ''
  e_string = !e.nil? ? " E#{new_e}" : ''
  f_string = !f.nil? ? " F#{new_f}" : ''
  p_string = !p.nil? ? " P#{p}" : ""
  s_string = !s.nil? ? " S#{s}" : ""
  string = !string_data.nil? ? " #{string_data}" : ''

  prefix_line("#{command}#{s_string}#{p_string}#{x_string}#{y_string}#{z_string}#{f_string}#{e_string}#{string}".strip, line_number)
end