class CooCoo::DataSources::Xournal::Stroke
Constants
- DefaultTool
- Tools
Attributes
color[RW]
samples[R]
tool[RW]
Public Class Methods
new(tool = 'pen', color = 'black', samples = nil)
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 206 def initialize(tool = 'pen', color = 'black', samples = nil) self.tool = tool @color = color @samples = samples || Array.new end
Public Instance Methods
add_sample(x, y, w = 1)
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 217 def add_sample(x, y, w = 1) @samples << Sample.new(x, y, w) self end
delete_sample(sample)
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 227 def delete_sample(sample) @samples.delete(sample) self end
delete_sample_at(n)
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 222 def delete_sample_at(n) @samples.delete_at(n) self end
each_sample(&block)
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 236 def each_sample(&block) @samples.each(&block) end
minmax()
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 248 def minmax xmin = nil xmax = nil ymin = nil ymax = nil xmin, xmax = @samples.collect(&:x).minmax ymin, ymax = @samples.collect(&:y).minmax [ [ xmin, ymin ], [ xmax, ymax ] ] end
scale(sx, sy, sw = 1.0)
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 244 def scale(sx, sy, sw = 1.0) self.class.new(tool, color, samples.collect { |s| s.scale(sx, sy, sw) }) end
size()
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 232 def size @samples.size end
tool=(t)
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 212 def tool=(t) raise ArgumentError.new("Invalid tool: #{t.inspect}") unless t == nil || Tools.include?(t) @tool = t end
translate(dx, dy)
click to toggle source
# File lib/coo-coo/data_sources/xournal/document.rb, line 240 def translate(dx, dy) self.class.new(tool, color, samples.collect { |s| s.translate(dx, dy) }) end