Commit graph

249 commits

Author SHA1 Message Date
treeform
1ee3d3902a Fixing blends 2021-06-18 16:39:55 -07:00
treeform
ff0a69b9de done 2021-06-18 15:48:05 -07:00
Ryan Oldenburg
fb87aecd1d fill closes subpaths 2021-06-06 01:17:07 -05:00
Ryan Oldenburg
3e4b66b093 faster 2021-06-05 01:38:28 -05:00
Ryan Oldenburg
9ccbcf7347 small 2021-06-04 17:55:07 -05:00
Ryan Oldenburg
046556fdef do not export path.commands 2021-06-04 15:57:04 -05:00
Ryan Oldenburg
c124b64eea f 2021-06-04 15:57:04 -05:00
Ryan Oldenburg
f157a11ebf fill faster when not doing aa 2021-06-04 01:05:15 -05:00
Ryan Oldenburg
2e1f9a81b8 hits iterator 2021-06-04 01:05:08 -05:00
Ryan Oldenburg
1395abaff9 anti-aliasing optimization 2021-06-03 18:05:07 -05:00
Ryan Oldenburg
57ab45f7a1 2.0.4 2021-06-03 00:08:43 -05:00
Ryan Oldenburg
7581216484 fix arc perf issue 2021-06-02 18:25:55 -05:00
Ryan Oldenburg
4760b2643f early exists + fix for dll 2021-06-02 18:25:55 -05:00
Ryan Oldenburg
8ce82c20b2 rename 2021-05-31 19:22:51 -05:00
Ryan Oldenburg
a08019518c f 2021-05-30 16:08:08 -05:00
Ryan Oldenburg
de8fda9a81 insertion sort hits faster 2021-05-30 14:54:27 -05:00
treeform
b087dd23bd Add fill leak checker (use -d:pixieLeakCheck). 2021-05-29 16:26:31 -07:00
treeform
52bd58fa45 Fix rounded join bug. 2021-05-29 15:15:54 -07:00
Ryan Oldenburg
284f7fce04 2.0.2 2021-05-29 16:17:41 -05:00
Ryan Oldenburg
e76549368e computePixelBounds 2021-05-29 16:11:18 -05:00
Ryan Oldenburg
f960349518 better with names 2021-05-29 15:57:55 -05:00
Ryan Oldenburg
531bf5c286 faster, better 2021-05-29 15:48:46 -05:00
Ryan Oldenburg
2f8fbcd792 leak fix 2021-05-29 02:26:14 -05:00
Ryan Oldenburg
6606665fe2 f 2021-05-29 01:49:48 -05:00
Ryan Oldenburg
2f88639f1d svg bugfixes, improvements, emoji megatests 2021-05-27 19:46:39 -05:00
Ryan Oldenburg
10bc3100e6 docs, bugfix, ctx blend test, remove seq[seq[Vec2]] from SomePath 2021-05-27 17:27:19 -05:00
Ryan Oldenburg
2afcbaa621 fix path parse bug for m 1 2 3 4 5 6... 2021-05-24 19:25:04 -05:00
Ryan Oldenburg
00dd3faa95 svg stroke-dasharray 2021-05-23 22:31:16 -05:00
Ryan Oldenburg
1e39ce2c80 context line dashes 2021-05-23 21:43:47 -05:00
Ryan Oldenburg
58ccbf025a context miterLimit 2021-05-23 21:01:54 -05:00
treeform
6fb1323101
Add dashes. (#202)
* Add dashes.
* Miter limits as ratio everywhere.
* Remove some fill and stroke overloads.
2021-05-23 18:46:19 -07:00
Ryan Oldenburg
3b0f841d70 circle to paths.nim 2021-05-22 19:06:10 -05:00
Ryan Oldenburg
5cc8e911d1 move image helpers from pixie.nim to context.nim 2021-05-21 00:54:55 -05:00
Ryan Oldenburg
58c262849d context docs 2021-05-19 13:09:00 -05:00
Ryan Oldenburg
0d65dffccc add context api 2021-05-19 00:06:02 -05:00
Ryan Oldenburg
f67b17348f feedback improvements 2021-05-11 22:40:39 -05:00
Ryan Oldenburg
11fdc30399 paint on font 2021-05-11 22:40:39 -05:00
Ryan Oldenburg
fe59c77230 simpler 2021-05-11 22:40:39 -05:00
Ryan Oldenburg
33b8a5a839 cleaner + perf 2021-05-11 22:40:24 -05:00
Ryan Oldenburg
0ff8eb39c9 bugfix, dont ignore translate for initial relative move 2021-05-11 22:40:24 -05:00
Ryan Oldenburg
8c11669e7f f 2021-05-11 22:40:24 -05:00
Ryan Oldenburg
b42b9d649a svg fonts + move stuff around 2021-05-11 22:40:24 -05:00
treeform
75915ab05f 1.1.2: Update deps and docs. 2021-03-26 14:10:11 -07:00
Ryan Oldenburg
99a2a0ba40 1.1.0 SomeColor 2021-03-11 21:47:45 -06:00
treeform
9508150e99 Fix bug with mask.fillPath. 2021-02-26 23:01:28 -08:00
Ryan Oldenburg
5722ef51d3 quick optimization 2021-02-26 10:28:05 -06:00
Ryan Oldenburg
64cfab293d migrate public api to rgbx 2021-02-25 18:11:58 -06:00
Ryan Oldenburg
5e3e489f61 internal.nim 2021-02-25 12:16:33 -06:00
Ryan Oldenburg
751b804679 morepretty 2021-02-25 11:43:09 -06:00
Ryan Oldenburg
7b9d968381 small comment things 2021-02-25 11:39:30 -06:00
Ryan Oldenburg
34b5f07f1f
tiled draw path + removed 2 exported procs from paints.nim (#132) 2021-02-25 09:05:20 -08:00
treeform
4a4c260064 Doc pass. 2021-02-25 06:52:20 -08:00
treeform
c8c981b04e
Add paints to pixie. (#127)
Add paints for: solid, image, image tiled, linear, radial and angular gradients.
2021-02-24 21:49:21 -08:00
Ryan Oldenburg
704ecb7848 fix rendering artifact with clever idea from treeform 2021-02-24 23:09:06 -06:00
Ryan Oldenburg
2b000ca9ca add missing pixelScale 2021-02-24 22:22:33 -06:00
Ryan Oldenburg
3d3dc58bce move proc, more tests 2021-02-24 22:19:09 -06:00
Ryan Oldenburg
6e7a08538d linecap, linejoin, miterAngleLimit 2021-02-24 19:48:23 -06:00
Ryan Oldenburg
042d455cb0 fix 2021-02-23 20:25:23 -06:00
Ryan Oldenburg
ca023c1a08 arc flag parse fix + another icon set 2021-02-23 16:22:29 -06:00
Ryan Oldenburg
dc0246814e path parse bugfix 2021-02-23 14:09:15 -06:00
Ryan Oldenburg
404b0504ab path commands to shapes bugfix 2021-02-23 13:46:47 -06:00
Ryan Oldenburg
aa19910380 merge into test_paths.nim 2021-02-23 13:26:59 -06:00
treeform
e41b8434eb
Compute pixel scale based on matrix max scale before doing the fill or storke. (#124) 2021-02-22 23:53:26 -08:00
Ryan Oldenburg
fc2dc50c39 sweep flag fix for svg icons 2021-02-23 00:24:27 -06:00
Ryan Oldenburg
7b02ca4dd5 remove code 2021-02-22 23:20:05 -06:00
Ryan Oldenburg
40afb8e4c4 bootstrap icons svg megatest + parse fixes 2021-02-22 22:14:06 -06:00
Ryan Oldenburg
8cf6c5cd2f move comment 2021-02-22 18:42:44 -06:00
Ryan Oldenburg
7b0bd8753f strokes always wrNonZero 2021-02-22 16:30:28 -06:00
Ryan Oldenburg
bca5119e8b linecap, linejoin 2021-02-20 13:31:25 -06:00
Ryan Oldenburg
b4edd635d5 support rect rx and ry for svg 2021-02-19 01:40:19 -06:00
Ryan Oldenburg
203a657c8a drawPolygon 2021-02-18 16:45:56 -06:00
Ryan Oldenburg
0362d03b0b drawEllipse, drawCircle 2021-02-18 16:33:41 -06:00
Ryan Oldenburg
318d90e509 drawRoundedRect + updated example 2021-02-18 16:23:54 -06:00
Ryan Oldenburg
505e2ff2d9 drawRect image, mask 2021-02-18 13:35:08 -06:00
Ryan Oldenburg
76ed801aa7 remove windingrule param from stroke proc 2021-02-18 12:16:01 -06:00
Ryan Oldenburg
445db73f00 small improvements 2021-02-17 23:23:19 -06:00
Ryan Oldenburg
d1a5f22b1f f 2021-02-17 13:21:28 -06:00
Ryan Oldenburg
962cc4aa7e faster paths fill 2021-02-17 03:21:11 -06:00
Ryan Oldenburg
52e65f9d73 small change 2021-02-17 01:18:30 -06:00
Ryan Oldenburg
f2b3c67d4b morepretty 2021-02-16 00:35:36 -06:00
Ryan Oldenburg
68e2522074 performance improvements 2021-02-16 00:35:08 -06:00
treeform
39b0446d60 Add roundedRect based on splines. 2021-02-14 09:52:41 -08:00
treeform
7ff64d0ec8 small comment 2021-02-13 20:14:10 -08:00
Ryan Oldenburg
fc23bda80f blends exports 2021-02-13 20:57:58 -06:00
Ryan Oldenburg
28f831249f better segment partitioning, faster svg path fill 2021-02-13 20:52:53 -06:00
Ryan Oldenburg
b800c77ab5 cleaner + faster simd 2021-02-13 20:52:53 -06:00
Ryan Oldenburg
243f9a3ba1 better names 2021-02-11 22:12:12 -06:00
Ryan Oldenburg
a40683920d sharpen masks + simd, blend masks 2021-02-11 02:38:27 -06:00
Ryan Oldenburg
e17d0c742d roundedRect clockwise vs counter 2021-02-11 01:44:46 -06:00
Ryan Oldenburg
29047d6a46 blends, blurs, masks checkpoint 2021-02-09 15:22:37 -06:00
Ryan Oldenburg
33b032550c draw mask on mask 2021-02-08 19:52:54 -06:00
Ryan Oldenburg
bbe207baa0 image masking 2021-02-08 14:31:26 -06:00
Ryan Oldenburg
d3ab965f0f blend mode after winding rule 2021-02-08 12:50:24 -06:00
Ryan Oldenburg
6df03ed1d1 paths fill takes blendMode param 2021-02-07 20:42:39 -06:00
Ryan Oldenburg
369066e04d masks + paths 2021-02-06 21:51:13 -06:00
Ryan Oldenburg
5afd784b20 move, rm unused param 2021-02-06 17:52:04 -06:00
Ryan Oldenburg
35ad210ec5 tiger 20% faster 2021-01-28 17:00:30 -06:00
Ryan Oldenburg
2cd3c35fc1 bit faster 2021-01-27 15:15:51 -06:00
Ryan Oldenburg
bb7ec44fce store winding as int directly 2021-01-27 03:47:03 -06:00
Ryan Oldenburg
c8b78800a6 f 2021-01-26 19:54:49 -06:00
Ryan Oldenburg
1af7f5ca7c simpler 2021-01-26 18:23:15 -06:00
Ryan Oldenburg
f49564b167 corrected 2021-01-26 17:14:21 -06:00
Ryan Oldenburg
b232a3a8c2 simpler 2021-01-26 17:03:24 -06:00
Ryan Oldenburg
4cdb9db0f6 2x faster lol 2021-01-26 16:55:33 -06:00
Ryan Oldenburg
be6bebf553 a few little things + uint8 coverage 2021-01-26 16:34:07 -06:00
Ryan Oldenburg
2c7694896f paths.nim expects and returns premultiplied alpha 2021-01-25 11:08:32 -06:00
Ryan Oldenburg
584d48c2ee 0.0.20 seq[seq[Vec2]] 2021-01-25 10:24:23 -06:00
Ryan Oldenburg
b25daa0de7 remove break 2021-01-25 10:15:42 -06:00
Ryan Oldenburg
09cd7f959d 0.0.19 new scanline+fill 2021-01-24 23:34:31 -06:00
Ryan Oldenburg
505434e04e start+stop bounds = faster fill 2021-01-24 22:31:56 -06:00
Ryan Oldenburg
0cb7b5ea3d 0.0.18 more paths.nim stuff 2021-01-24 22:02:45 -06:00
Ryan Oldenburg
f0f2e5b4c6 0.0.17 paths stuff 2021-01-24 20:49:57 -06:00
Ryan Oldenburg
d73aff17ee path not ref 2021-01-24 20:15:11 -06:00
Ryan Oldenburg
db0ee90fb2 polygon, validate commands 2021-01-24 15:21:45 -06:00
Ryan Oldenburg
40dfcfcde1 0.0.16 quadraticCurveTo, transform 2021-01-23 22:12:00 -06:00
Ryan Oldenburg
b41965ce3c 0.0.13 revert quad, unaligned simd fill for now 2021-01-22 17:27:20 -06:00
Ryan Oldenburg
e676121ae3 arc small stuff 2021-01-22 10:31:04 -06:00
Ryan Oldenburg
9aafd87def like quad, cubic 2021-01-22 08:56:18 -06:00
Ryan Oldenburg
7271cdfe80 arc discretize 2021-01-22 08:47:54 -06:00
Ryan Oldenburg
cb621c2532 arc stuff, quad discretize 2021-01-22 08:42:28 -06:00
Ryan Oldenburg
882ae0127c fix tiger lip issue 2021-01-18 00:48:21 -06:00
Ryan Oldenburg
ce938fa92a skip horizontal, faster 2021-01-17 22:07:05 -06:00
Ryan Oldenburg
74169e4c15 bounds 2021-01-16 19:01:06 -06:00
Ryan Oldenburg
3908825db8
cubic curve compute (#50)
* cubic curve compute

* curve -> segments with error budget

* dynamic precision on curves
2021-01-15 18:22:51 -08:00
Ryan Oldenburg
444fb18355
use line intersection (#49) 2021-01-11 20:24:47 -08:00
Ryan Oldenburg
3f3d645778 faster, no start 2021-01-02 22:55:21 -06:00
Ryan Oldenburg
e2b8b50b18 small stuff 2021-01-02 22:28:54 -06:00
treeform
5a33f0a3a2 Don't return a new image when filling paths. 2021-01-02 16:19:19 -08:00
Ryan Oldenburg
e5cc9ba1b5 0.0.9 dont close already closed paths 2020-12-29 18:11:58 -06:00
Ryan Oldenburg
1b4095afe1 0.0.8 export for typography 2020-12-29 17:18:00 -06:00
Ryan Oldenburg
10a10d3f27 svg more basic shapes, more transforms 2020-12-19 22:01:34 -06:00
Ryan Oldenburg
7cf59c85fe svg circle 2020-12-19 20:50:40 -06:00
treeform
db5b1f4cb4 Add winding rule, make float blends public (for shaders) 2020-12-11 21:08:06 -08:00
Ryan Oldenburg
120ad0ad56 bumpy segment 2020-12-10 00:27:58 -06:00
Ryan Oldenburg
803c2ecf40 no cast, segments 2020-12-04 18:27:39 -06:00
Ryan Oldenburg
cddfe43315 scanLineHits a bunch faster 2020-12-04 14:15:14 -06:00
Ryan Oldenburg
4536baeefd address todo 2020-12-04 14:15:14 -06:00
treeform
d1adfba46e Make blur example shorter. 2020-12-04 09:32:38 -08:00
treeform
07886e9c44 Make svg faster, add tiger exmaple, add SomePath. 2020-12-04 09:25:00 -08:00
treeform
4ae59d51da Prints out all path commands it can parse. 2020-12-02 23:35:23 -08:00
treeform
3ae54dad41 More path tests. 2020-12-02 23:25:24 -08:00
treeform
fa6b8352e6 Add path tests. 2020-12-02 23:20:14 -08:00
Ryan Oldenburg
37c5869b0c some small things 2020-12-03 00:09:11 -06:00
Ryan Oldenburg
3cb35ddee1 from chatting 2020-12-01 21:14:15 -06:00
treeform
37428fb28c Change APIs some. Add 2 examples. 2020-12-01 09:50:20 -08:00
treeform
57af191774 Both draw in place and not in place done. 2020-11-25 10:09:12 -08:00
treeform
3764063605 Add bmIntersectMask and bmExcludeMask. 2020-11-23 08:56:31 -08:00
treeform
003e7bfac1 Add Image and Paths bones. 2020-11-19 19:25:54 -08:00
treeform
a1bfdb073b Add files. 2020-11-19 18:45:43 -08:00