Matthias Clasen
ddd4855bbc
Add a test for rectangle segments
2023-08-27 12:36:30 -04:00
Matthias Clasen
78c5aff956
Test special contours harder
...
Check that the start- and endpoint work
as expected and verify that their winding
numbers match the ones of the standard contour,
and are negated when the contour is reversed.
2023-08-27 11:47:40 -04:00
Matthias Clasen
ead88c36ec
path: Add circle tests
2023-08-26 23:42:52 -04:00
Matthias Clasen
46a8f57735
Add tests for path length
2023-08-25 20:16:49 -04:00
Matthias Clasen
2e5639a077
Add a circle test
2023-08-25 20:16:49 -04:00
Matthias Clasen
25e6231a88
path: Switch back to conics
...
Arcs were appealing, but they have a fatal flaw: we can't
split our arcs without changing the ellipse they trace.
That could be fixed by adding an extra parameter, but then
it is no longer any better than conics.
So switch back to conics, which have the advantage that they
are used elsewhere.
2023-08-25 07:33:16 -04:00
Matthias Clasen
e1faf28310
Make curvature api more flexible
...
Add an extra direction argument to get_curvature to
allow picking the limit on either side, for sharp turns.
Update all callers.
2023-08-24 14:32:33 -04:00
Matthias Clasen
0f7b9e686c
Add a rounded rect test
...
This checks that our path-in-fill computations
agree with rounded_rect_contains_point. Sadly,
they don't do that, 100%.
2023-08-23 12:43:52 -04:00
Matthias Clasen
d33ed4f9ab
path: Add elliptical arcs
...
Add a new curve type for elliptical arcs
and use it for rounded rectangles and circles.
We use the 'E' command to represent elliptical
arcs in serialized paths.
2023-08-23 12:43:52 -04:00
Matthias Clasen
87430be658
Fix up a testcase
...
I had gotten the path direction enum mixed up here.
2023-08-14 15:59:45 -04:00
Matthias Clasen
a85ab3585e
Revise gsk_path_point_get_tangent
...
Update the directions enum to allow all four
tangents to be obtained. Add an illustration
to the docs for clarity.
Update all callers.
2023-08-14 14:58:22 -04:00
Matthias Clasen
6ace4b60d8
pathpoint: Revise argument order
...
In order for introspection and documentation to
not be confused, we need to have the GskPathPoint
be the first argument.
Update all callers.
2023-08-14 13:20:34 -04:00
Matthias Clasen
44bc5a139c
Add rounded rects to the tests
2023-08-12 16:09:31 -04:00
Matthias Clasen
83d692e2d3
path: Add tests for gsk_path_builder_add methods
...
Check that they all end the current contour.
Fixes : #6011
2023-08-11 07:24:19 -04:00
Matthias Clasen
421365cfc3
Add more path point tests
2023-08-09 23:55:08 -04:00
Matthias Clasen
59c5b41f3d
Cosmetics
2023-08-09 23:48:50 -04:00
Matthias Clasen
77def95659
Add path fill tests
...
These used to live with the measure tests, but
path_in_fill no longer involves a measure.
2023-08-09 21:50:29 -04:00
Matthias Clasen
2bcc998e90
Add tests for gsk_path_builder_add_segment
...
Test at least some of the special cases:
- start and end point on the same contour
- start and end point on the same segment
- end before start
2023-08-09 07:01:01 -04:00
Matthias Clasen
dbcbf0523b
Add tests for GskPathPoint
...
As always, untested code doesn't work...
2023-08-07 08:33:05 -04:00
Matthias Clasen
785b9541f6
gsk: Add tests for GskPath
2023-08-06 21:01:11 -04:00