Commit graph

218 commits

Author SHA1 Message Date
sheaf 8fc5e6c9b8 compute brush strokes using the envelope equation 2023-01-11 15:26:12 +01:00
sheaf 43098dec01 Newton-Raphson implementation 2023-01-11 15:25:52 +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 cca4558985 put all colours into a separate CSS file 2023-01-08 21:12:00 +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 e6565aeb00 add hie.yaml 2022-12-04 17:53:39 +01:00
sheaf 066a4e653f more GHC 9.4 build fixes 2022-12-04 17:25:44 +01:00
sheaf bcd38ed791 clean up build steps & instructions 2022-12-04 15:52:29 +01:00
sheaf c80fdac30a switch to using eigen instead of hmatrix 2022-06-17 16:21:52 +02:00
sheaf 4e15380c7e use diagrams to parse MetaFont paths 2022-02-13 17:30:54 +01:00
sheaf 64e45f126b Refactor module hierarchy, use internal records 2022-02-11 22:05:13 +01:00
sheaf 8333f69dc2 improvements to menubar theming 2022-02-10 00:07:44 +01:00
sheaf eba08a6edd add first-class functions to brush language 2021-05-25 13:45:21 +02:00
sheaf 5ff935b4b2 update render & select for new brush manipulation 2021-05-24 17:37:26 +02:00
sheaf 15d50f8d76 add signed curvature computation 2021-05-16 00:33:58 +02:00
sheaf 7431e8ba67 compute roots of envelope equation 2021-05-15 23:27:21 +02:00
sheaf df2469487d add cubic Bézier crunode computation 2021-05-15 21:24:58 +02:00
sheaf 9f16cff978 fix brush join orientations 2021-05-13 22:07:49 +02:00
sheaf 570a593f4f fix stupid error in quadratic solver 2021-05-12 15:16:26 +02:00
sheaf 2983943363 compute correct open stroke caps 2021-05-12 13:58:30 +02:00
sheaf c64a4140c4 fix orientation of brush joins 2021-05-10 23:51:05 +02:00
sheaf b46dc2a140 start reworking brush stroking 2021-05-10 18:02:42 +02:00
sheaf f8b0ec2ab1 adjust spline wither framework/selection deletion 2021-05-01 20:38:11 +02:00
sheaf a4bf83949a fix incorrect field name in stroke hierarchy deserialisation 2021-04-30 17:48:19 +02:00
sheaf df9b9c1f66 simplify Laguerre solver 2021-04-29 21:03:45 +02:00
sheaf 4182b78c7e fix incorrect deflation code 2021-04-27 01:16:30 +02:00
sheaf d604d4120e stroke hierarchy 2021-04-26 17:18:48 +02:00
sheaf a5fdce1133 use Seq for strokes 2021-04-26 14:34:34 +02:00
sheaf e1c5d266eb embed brushes inline into strokes 2021-04-26 01:17:27 +02:00
sheaf 70cab39947 write cabal version number to .mb JSONs 2021-04-25 17:50:35 +02:00
sheaf 89e21c2bf4 improve menu hover/focus styling 2021-04-25 15:45:33 +02:00
sheaf 2ee0cbbfc0 fix styling on dialog windows 2021-04-25 15:22:10 +02:00
sheaf c3bcce58a7 use ?self to address pointer ownership warnings 2021-04-25 01:59:15 +02:00
sheaf 36a6a3ca4b Fix file chooser crashes 2021-04-21 18:14:35 +02:00
sheaf 5717c80e93 Adapt to the changes in GTK4 2021-04-21 15:08:34 +00:00
sheaf 1b0382f3b0 Switch to GTK4 2021-04-21 15:08:33 +00:00
sheaf a9adcba8eb fix some errors in polynomial code 2021-02-26 01:52:52 +01:00
sheaf 5e62937f16 fix preview for first curve in path 2021-02-25 14:43:43 +01:00
sheaf c6694e4e2f fix bug in reverseSpline 2021-02-25 14:04:54 +01:00
sheaf 46275514ff add stroke preview when drawing 2021-02-25 03:41:12 +01:00
sheaf 4788ab2efd fix bug in cubic Bézier subdivision 2021-02-25 00:07:15 +01:00
sheaf 212ac4fded use STRefs to hold cached outline data 2021-02-24 22:52:26 +01:00
sheaf 6dbade1fae always use current viewport sizes 2021-02-23 21:52:03 +01:00
sheaf c1cae2b69f compute outline data concurrently 2021-02-23 20:58:53 +01:00
sheaf b32499cc68 GHC 9.0 compatibility 2021-02-23 13:16:26 +01:00
sheaf ab3a12c983 use assertions instead of errors, minor linting 2020-11-15 06:28:48 +01:00
sheaf 1e4bb4bddc implement a basic brush store
* each stroke stores the brushes it uses by reference,
    so that one can interactively edit brushes
    and see the strokes be updated in real-time
  * when writing to a file, we retrive the brush code
    from the reference, and include that information statically
2020-11-14 23:32:23 +01:00
sheaf 393ef6f06e Implement programmable brush framework 2020-11-12 17:34:46 +00:00