Sha256: 0fcf1389c8f444f3bf4fb93a4f40b5e3cb047153bfd22b04e659a90667bcabc6

Contents?: true

Size: 343 Bytes

Versions: 2

Compression:

Stored size: 343 Bytes

Contents

module Segment
  def segments
    each_cons(2).entries
  end

  def ring
    zip rotate
  end

  def diff
    last.minus first
  end

  def distance
    diff.norm
  end

  def along(fraction)
    self[1].times(fraction).plus self[0].times(1.0 - fraction)
  end

  def midpoint
    transpose.map(&:mean)
  end
end

Array.send :include, Segment

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
nswtopo-3.0.1 lib/nswtopo/geometry/segment.rb
nswtopo-3.0 lib/nswtopo/geometry/segment.rb