Skip to content

Revive drawing capabilities (new and improved!)#261

Open
cwervo wants to merge 7 commits into
mainfrom
ac/drawing-may-2026
Open

Revive drawing capabilities (new and improved!)#261
cwervo wants to merge 7 commits into
mainfrom
ac/drawing-may-2026

Conversation

@cwervo
Copy link
Copy Markdown
Collaborator

@cwervo cwervo commented May 7, 2026

This PR is a little large because it touches a bunch of drawing files. We get back a suite of drawing capabilities. This PR also has an unrelated change to running make remote when working out of a git worktree, happy to splice this into another PR.

Some examples of running the demo code via Wish $this runs demo code from builtin-programs/title.folk (which is a new wish added in this PR):

IMG_5693 Small IMG_5694 Small IMG_5695 Small IMG_5696 Small IMG_5697 Small IMG_5698 Small IMG_5699 Small IMG_5700 Small IMG_5701 Small

@cwervo cwervo requested review from osnr and ppkn and removed request for osnr May 7, 2026 00:48
Comment thread builtin-programs/draw/shapes.folk Outdated
lassign $center cx cy
set points [list]
for {set i 0} {$i < $sides} {incr i} {
set theta [expr {$radians + $i * 2.0 * 3.141592653589793 / $sides - 1.5707963267948966}]
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm slightly surprised that there's no PI (or TAU) constants. Only slightly surprised though.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh yeah, I should definitely just expose PI and Tau globals

@ppkn
Copy link
Copy Markdown
Collaborator

ppkn commented May 7, 2026

I plan to test this out on my system today.

Copy link
Copy Markdown
Collaborator

@ppkn ppkn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good. The drawSpaceLib api feels a little clunky always having to pass poselib and display. I wonder if there is a cleaner way we could do that in the future.

I wrote a small way to preview all of the drawing demos every 2 seconds so I could quickly preview them. It didn't work for shapes.folk though so I had to check that out separately.

When the clock time is /t/ {

    set demos {arc circle curve dashed-line fill image line shapes space text}
    set i $(int($t)/2 % [llength $demos])
    set demo [lindex $demos $i]
    Wish $this runs demo code from builtin-programs/draw/${demo}.folk
}

Wish $this is outlined white

@cwervo cwervo force-pushed the ac/drawing-may-2026 branch from a5051b6 to 23d2434 Compare May 16, 2026 20:42
@cwervo cwervo force-pushed the ac/drawing-may-2026 branch from 23d2434 to e5e18de Compare May 20, 2026 23:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants