Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Circle arcs not smooth when points very near one another #27

Closed
ctrlcctrlv opened this issue Apr 20, 2022 · 6 comments
Closed

Circle arcs not smooth when points very near one another #27

ctrlcctrlv opened this issue Apr 20, 2022 · 6 comments
Assignees
Labels
bug Something isn't working

Comments

@ctrlcctrlv
Copy link
Contributor

cc @simoncozens @RosaWagner this is the correct issue for the discussion had at the tail end of the resolved #16.

@ctrlcctrlv ctrlcctrlv added the bug Something isn't working label Apr 20, 2022
@ctrlcctrlv ctrlcctrlv self-assigned this Apr 20, 2022
@ctrlcctrlv
Copy link
Contributor Author

I already have a theory. I think it's a bad merger. Note how the two kinks are being caused by two times colocated corner points:

image

But we should rightly expect that every point on the segment which links a cap or join should be a curve point with two non-colocated handles, and that the first and last points should only be one time colocated.

@ctrlcctrlv
Copy link
Contributor Author

It's almost certainly a merger problem.

Everything looks fine on my end pre-merger.

image

image

How are you merging @simoncozens @RosaWagner?

If you don't see this before the segmentwise merger—what do you see?

@ctrlcctrlv
Copy link
Contributor Author

Okay. Here's what we're doing administratively.

This issue is getting closed because --segmentwise was a hack which I thought would be fine, but circular arcs are not perfectly representable as cubic Bezier curves.

So, any overlap merge would struggle with these two overlapping Bézier curves which are almost—yet not quite—equivalent.

Issue #16—not #17—is getting reopened because segmentwise is not an appropriate fix.

I will then try to fix once again the path builder method of creating stroke outlines.

Thanks for user patience.

@davelab6
Copy link

Screenshot_20220421-201802

The control points angled down (red) seem bad to me. I'm expecting a smooth top (green). Maybe unreasonably, if the underlying strokes don't have co-positioned top points.

@ctrlcctrlv
Copy link
Contributor Author

@davelab6 they aren't. they are part of different paths.

For clarity see this exploded version:

image

@davelab6
Copy link

Ah good call. I see the "4th segment of the beach ball" now.

Screenshot_20220421-204510

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants