Jump to content
You must now use your email address to sign in [click for more info] ×

Xor-like artifact when merging curves: Bug?


Recommended Posts

This may be a bug, or may be just me being oblivious to the obvious, but when I merge the two curve objects that make up the "ear shadows", the pointy top of one object cuts a triangular slice out of the other, as if I did an "Xor" boolean operation.

iMac (Retina 5K, 27-inch, 2019)| MacOS (Probably latest stable build)

Affinity Designer|Affinity Photo|Affinity Publisher

Link to comment
Share on other sites

If your intention is to simply combine the two shapes into a single shape then just use 'Add' (from the geometry menu or the toolbar) rather than Merge Curves.

Affinity Designer 2.4.1.2344 | Affinity Photo 2.4.1.2344 | Affinity Publisher 2.4.1.2344
Affinity Designer 1.7.3 | Affinity Photo 1.7.3 | Affinity Publisher 1.10.8
MacBook Pro 16GB, macOS Monterey 12.6.8, Magic Mouse

Link to comment
Share on other sites

Or, if you really need to use 'Merge Curves' to maintain the separate paths in one curve, change the 'Fill Mode' of the newly created curve to 'Winding'.
Layer > Fill Mode… > Winding.

macOS 10.15.7  15" Macbook Pro, 2017  |  4 Core i7 3.1GHz CPU  |  Radeon Pro 555 2GB GPU + Integrated Intel HD Graphics 630 1.536GB  |  16GB RAM  |  Wacom Intuos4 M

Link to comment
Share on other sites

2 hours ago, Hangman said:

If your intention is to simply combine the two shapes into a single shape then just use 'Add' (from the geometry menu or the toolbar) rather than Merge Curves.

Thanks; I know I can could add them, but I'm trying to understand why using "Merge Curves" would cause that result.

1 hour ago, markw said:

Or, if you really need to use 'Merge Curves' to maintain the separate paths in one curve, change the 'Fill Mode' of the newly created curve to 'Winding'.
Layer > Fill Mode… > Winding.

Nope... changing the fill mode to winding doesn't change the result. I tried changing the new merged curves layer to "Winding", and also tried going back and changing each layers fill to "Winding" before merging them, but I still get the "Xor"-like behavior.

iMac (Retina 5K, 27-inch, 2019)| MacOS (Probably latest stable build)

Affinity Designer|Affinity Photo|Affinity Publisher

Link to comment
Share on other sites

All working as expected here... are you able to upload your artwork or even just the two curves in question in their own document so we can take a closer look?

 

Affinity Designer 2.4.1.2344 | Affinity Photo 2.4.1.2344 | Affinity Publisher 2.4.1.2344
Affinity Designer 1.7.3 | Affinity Photo 1.7.3 | Affinity Publisher 1.10.8
MacBook Pro 16GB, macOS Monterey 12.6.8, Magic Mouse

Link to comment
Share on other sites

The Winding trick usually works for me.
However the curves you have done stubbornly refuse to play nicely? I have no idea why!
However if I redraw them, then it works as expected.
So maybe just ditch those two curves.

XorArtifact-markw's-Test.afdesign

macOS 10.15.7  15" Macbook Pro, 2017  |  4 Core i7 3.1GHz CPU  |  Radeon Pro 555 2GB GPU + Integrated Intel HD Graphics 630 1.536GB  |  16GB RAM  |  Wacom Intuos4 M

Link to comment
Share on other sites

Exactly the same here, for some unknown reason your curves are not working using Winding, but drawing them from scratch, no problem at all!

Affinity Designer 2.4.1.2344 | Affinity Photo 2.4.1.2344 | Affinity Publisher 2.4.1.2344
Affinity Designer 1.7.3 | Affinity Photo 1.7.3 | Affinity Publisher 1.10.8
MacBook Pro 16GB, macOS Monterey 12.6.8, Magic Mouse

Link to comment
Share on other sites

  • Staff

This is related to the direction the shapes were drawn in, and how that has an effect on the way Alternate and Winding work. It will also be the reason others have not replicated it.

If you enable 'Show orientation' on the toolbar for the Node Tool and zoom into the curves you will see that one Curve direction is anti-clockwise, and the other is clockwise. No matter what you do changing the fill mode will not work. The gap there will always cause it to have a value of 0, so non-zero (known as Winding) will not work, and even-odd (Alternate) will cause it to be an even number making the gap appear.

If you reverse the direction of one of these curves, then you can make the gap disappear by using the Winding fill mode as it will then give it a value of 1 (therefore non-zero).

The best way I've found that describes these principles is here:
https://www.sitepoint.com/understanding-svg-fill-rule-property/

Link to comment
Share on other sites

25 minutes ago, Sean P said:

This is related to the direction the shapes were drawn in, and how that has an effect on the way Alternate and Winding work. It will also be the reason others have not replicated it.

If you enable 'Show orientation' on the toolbar for the Node Tool and zoom into the curves you will see that one Curve direction is anti-clockwise, and the other is clockwise. No matter what you do changing the fill mode will not work. The gap there will always cause it to have a value of 0, so non-zero (known as Winding) will not work, and even-odd (Alternate) will cause it to be an even number making the gap appear.

If you reverse the direction of one of these curves, then you can make the gap disappear by using the Winding fill mode as it will then give it a value of 1 (therefore non-zero).

The best way I've found that describes these principles is here:
https://www.sitepoint.com/understanding-svg-fill-rule-property/

Wow, good to know thanks Sean.  Really makes a difference with non-zero.  That explains a couple problems I had in the past but I just redrew them and they were gone.

iMac (27-inch, Late 2009) with macOS Sierra

Link to comment
Share on other sites

41 minutes ago, Sean P said:

This is related to the direction the shapes were drawn in, and how that has an effect on the way Alternate and Winding work. It will also be the reason others have not replicated it.

If you enable 'Show orientation' on the toolbar for the Node Tool and zoom into the curves you will see that one Curve direction is anti-clockwise, and the other is clockwise. No matter what you do changing the fill mode will not work. The gap there will always cause it to have a value of 0, so non-zero (known as Winding) will not work, and even-odd (Alternate) will cause it to be an even number making the gap appear.

If you reverse the direction of one of these curves, then you can make the gap disappear by using the Winding fill mode as it will then give it a value of 1 (therefore non-zero).

The best way I've found that describes these principles is here:
https://www.sitepoint.com/understanding-svg-fill-rule-property/

 

AHA! Thanks, Sean... the more I tried to figure it out, the more "whut the??" I became. And thanks for the link; excellent info.

BTW, just so I'm clear on  "Show orientation", this means the curve is drawn ANTI-clockwise, correct?

Direction.png.3443379ea64e70c455f689527af2f35e.png

iMac (Retina 5K, 27-inch, 2019)| MacOS (Probably latest stable build)

Affinity Designer|Affinity Photo|Affinity Publisher

Link to comment
Share on other sites

5 hours ago, MEB said:

Correct. It started from that point then go to the left and closed the shape on that point again coming from the right side.

Great! And thanks everybody for all the help 👍.

iMac (Retina 5K, 27-inch, 2019)| MacOS (Probably latest stable build)

Affinity Designer|Affinity Photo|Affinity Publisher

Link to comment
Share on other sites

16 hours ago, MEB said:

Correct. It started from that point then go to the left and closed the shape on that point again coming from the right side.

About that, is it normal for "Show Orientation" to show nothing for open curves? If so, why?

All 3 1.10.8, & all 3 V2.4.1 Mac apps; 2020 iMac 27"; 3.8GHz i7, Radeon Pro 5700, 32GB RAM; macOS 10.15.7
Affinity Photo 
1.10.8; Affinity Designer 1.108; & all 3 V2 apps for iPad; 6th Generation iPad 32 GB; Apple Pencil; iPadOS 15.7

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.