Commit graph

18 commits

Author SHA1 Message Date
sheaf 60b65a38e1 remove stroke from list stores when deleting all stroke points 2024-10-16 12:41:19 +02:00
sheaf c1d6dd4151 brush list view: first steps 2024-10-09 16:57:08 +02:00
sheaf f7a4b02e90 fix stroke cache issues 2024-09-28 13:07:56 +02:00
sheaf a41c6235ae anchor position is not static 2024-09-28 03:12:23 +02:00
sheaf 66490b87aa fix draw anchor curve indexing 2024-09-28 01:32:03 +02:00
sheaf 23cc439ff2 update list model upon undo/redo 2024-09-27 23:53:33 +02:00
sheaf 24f182feec add stroke layer view 2024-09-27 23:36:33 +02:00
sheaf 0eb0724dde Refactors in preparation for stroke hierarchy 2024-09-27 17:21:24 +02:00
sheaf 1338d7ddbe Improve intervallic rotation computations
This commit bakes in a certain kind of representation for brush strokes:

  c(t,s) = p(t) + R(theta(t)) b(t,s)

This representation allows us to cancel out some rotation terms when
computing the envelope equation, improving the efficiency of the
cusp-finding methods.
2024-04-20 18:28:41 +02:00
sheaf 50d99e1e4b improve intervallic Bézier evaluation
Now we evaluate Bézier curves using an AABB computation. This results
in tighter intervals, which means that the cusp-finding algorithm
is better behaved.
2023-04-25 23:07:18 +02:00
sheaf 684550a795 implement intervallic brushes 2023-01-13 23:10:06 +01:00
sheaf 8fc5e6c9b8 compute brush strokes using the envelope equation 2023-01-11 15:26:12 +01:00
sheaf 671dae5474 use R2 instead of Point2D & Vector2D 2023-01-09 04:27:08 +01:00
sheaf 22820b328d more cabal file cleanups 2023-01-09 02:54:42 +01:00
sheaf 5bd4e7f4cf framework for brush differentiation 2023-01-08 17:16:14 +01:00
sheaf 4e5c848883 kill off brush EDSL 2022-12-11 02:33:34 +01:00
sheaf bcd38ed791 clean up build steps & instructions 2022-12-04 15:52:29 +01:00
sheaf 4e15380c7e use diagrams to parse MetaFont paths 2022-02-13 17:30:54 +01:00