Method: CoordinateSystem#grid_lines

Defined in:
lib/coordinate_system.rb

#grid_lines(x_basis_interval, y_basis_interval) ⇒ Object



101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# File 'lib/coordinate_system.rb', line 101

def grid_lines(x_basis_interval, y_basis_interval)
  lines = []
  @x_axis.range.run(x_basis_interval) do |i,v|
    raw_origin = {:x => i, :y => @y_axis.range.minimum}
    hair_origin = standard_basis(raw_origin)
    hair_end = @y_basis_vector*@y_axis.range.interval + standard_basis(raw_origin)
    lines << {:from => hair_origin, :to => hair_end}
  end
  @y_axis.range.run(y_basis_interval) do |i,v|
    raw_origin = {:x => @x_axis.range.minimum, :y => i}
    hair_origin = standard_basis(raw_origin)
    hair_end = @x_basis_vector*@x_axis.range.interval + standard_basis(raw_origin)
    lines << {:from => hair_origin, :to => hair_end}
  end
  lines
end