class Origami::Graphics::Path

Attributes

current_point[RW]
segments[R]

Public Class Methods

new() click to toggle source
# File lib/origami/graphics/path.rb, line 73
def initialize
    @segments = []
    @current_point = nil
    @closed = false
end

Public Instance Methods

add_segment(seg) click to toggle source
# File lib/origami/graphics/path.rb, line 92
def add_segment(seg)
    raise GraphicsStateError, "Cannot modify closed subpath" if is_closed?

    @segments << seg
    @current_point = seg.to
end
close!() click to toggle source
# File lib/origami/graphics/path.rb, line 83
def close!
    from = @current_point
    to = @segments.first.from

    @segments << Line.new(from, to)
    @segments.freeze
    @closed = true
end
is_closed?() click to toggle source
# File lib/origami/graphics/path.rb, line 79
def is_closed?
    @closed
end