module Dieses::Application::Pen::Draw::Movements

Public Instance Methods

cross(distance = 1, angle: Undefined) click to toggle source
# File lib/dieses/application/pen.rb, line 129
def cross(distance = 1, angle: Undefined)
  radian = Undefined.equal?(angle) ? perfect.angle : Support.to_radian(angle)
  move x: distance * Math.cos(radian), y: distance * Math.sin(radian)
end
down(y = 1) click to toggle source
# File lib/dieses/application/pen.rb, line 117
def down(y = 1)
  move y: y
end
left(x = 1) click to toggle source
# File lib/dieses/application/pen.rb, line 121
def left(x = 1)
  move x: -x
end
move(x: Undefined, y: Undefined) click to toggle source
# File lib/dieses/application/pen.rb, line 106
def move(x: Undefined, y: Undefined)
  tap do
    pos.translate!(x: x * ruler.unit) unless Undefined.equal?(x)
    pos.translate!(y: y * ruler.unit) unless Undefined.equal?(y)
  end
end
right(x = 1) click to toggle source
# File lib/dieses/application/pen.rb, line 125
def right(x = 1)
  move x: x
end
up(y = 1) click to toggle source
# File lib/dieses/application/pen.rb, line 113
def up(y = 1)
  move y: -y
end