changing your mind mid-shape

[?]
May 15, 2022, 5:41 AM
RXE6NQTNS7MFNF24KFEQRVCZFQ44MDO5HPSQGQD555HPEMQA76DAC

Dependencies

  • [2] ZOOY3ME4 new mode: circle arc
  • [3] H7OEU6WP experimental approach to combining keyboard and mouse while drawing
  • [4] IFGAJAF7 add a level of indirection to vertices of shapes
  • [5] NL5J7Z5H new mode: polygon
  • [6] FMQ74DP3 new mode: circle
  • [7] KCIM5UTV revert: back to freehand
  • [*] OTIBCAUJ love2d scaffold
  • [*] HWPK4SMP new mode: manhattan

Change contents

  • edit in main.lua at line 455
    [3.1964]
    [3.1964]
    current_mode = 'polygon'
    elseif love.mouse.isDown('1') and chord == 'g' then
  • edit in main.lua at line 458
    [3.1993]
    [3.1993]
    local drawing = current_drawing()
    if drawing.pending.mode == 'line' then
    drawing.pending.vertices = {drawing.pending.p1}
    elseif drawing.pending.mode == 'circle' or drawing.pending.mode == 'arc' then
    drawing.pending.vertices = {drawing.pending.center}
    end
    drawing.pending.mode = 'polygon'
  • edit in main.lua at line 480
    [2.2485]
    [3.141]
    elseif love.mouse.isDown('1') and chord == 'c' then
    current_mode = 'circle'
    local drawing = current_drawing()
    if drawing.pending.mode == 'line' then
    drawing.pending.center = drawing.pending.p1
    elseif drawing.pending.mode == 'polygon' then
    drawing.pending.center = drawing.pending.vertices[1]
    end
    drawing.pending.mode = 'circle'
  • replacement in main.lua at line 492
    [3.259][3.259:306]()
    assert(drawing.pending.mode == 'freehand')
    [3.259]
    [3.306]
    if drawing.pending.mode == 'freehand' then
    drawing.pending.p1 = insert_point(drawing.points, drawing.pending.points[1].x, drawing.pending.points[1].y)
    elseif drawing.pending.mode == 'circle' or drawing.pending.mode == 'arc' then
    drawing.pending.p1 = drawing.pending.center
    end
  • edit in main.lua at line 498
    [3.340][3.2067:2179]()
    drawing.pending.p1 = insert_point(drawing.points, drawing.pending.points[1].x, drawing.pending.points[1].y)
  • edit in main.lua at line 507
    [10.1454]
    [10.1454]
    if drawing.pending.mode == 'line' then
    -- do nothing
    elseif drawing.pending.mode == 'polygon' then
    drawing.pending.p1 = drawing.pending.vertices[1]
    elseif drawing.pending.mode == 'circle' or drawing.pending.mode == 'arc' then
    drawing.pending.p1 = drawing.pending.center
    end