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

@# - missing characters #680

Merged
merged 1 commit into from May 3, 2020
Merged

@# - missing characters #680

merged 1 commit into from May 3, 2020

Conversation

kaalleen
Copy link
Collaborator

@kaalleen kaalleen commented May 2, 2020

Addressing: #658

@kaalleen
Copy link
Collaborator Author

@kaalleen kaalleen commented May 2, 2020

@lexelby
I noticed, that the lettering module uses the auto-route algorithm. Are you planing to change it or make it an option to the font developer?
Couldn't fonts that by choice use the auto-route algorithm always use the same file? It doesn't seem to make a lot of sense to include all the direction files if for the routing is taking care for automatically. I know, the lettering module is still in it's very first version and you have lots of plans for it. I am just curious about your thoughts.

@lexelby
Copy link
Member

@lexelby lexelby commented May 2, 2020

I have so many ideas! Yes, I was definitely thinking that the font author could specify whether to use the auto-route algorithm. I even had in mind that you could create a font with big letters, with filled letters with satin borders. Or applique, perhaps.

I originally had exactly the same idea is you. If we can use auto-route, we don't need to have different fonts for the different directions. I couldn't get it to work how I wanted, though.

Imagine a letter "t". You might make it as three satins: the horizontal cross, the top vertical part, and the bottom vertical part. usually font designers seem to have the vertical parts sew first and overlap a little into the horizontal section, and then the horizontal section covers up the overlap to avoid gaps.

It won't work to use the auto-route algorithm directly, because it might choose to do the horizontal part first! We have to use it with "preserve order" mode.Of course, that really only works for left-to-right and right-to-left text. For vertical, we need a different order and we might even choose to break up the satins differently.

@lexelby
Copy link
Member

@lexelby lexelby commented May 2, 2020

It's all very complicated, and I have no idea if I'm taking the right approach. I would be completely open to throwing out what I have and taking a different approach. If you want to work on lettering, by all means take it in whatever direction you like!

@lexelby
Copy link
Member

@lexelby lexelby commented May 2, 2020

I was thinking it might be cool if you could tell it "do these two satins before the next one". Some kind of grouping, and an option for auto-route satin that tells it to "respect groupings" or something?

@kaalleen
Copy link
Collaborator Author

@kaalleen kaalleen commented May 2, 2020

Yes, I know. It's all very complicated. Also this describes an issue, why I don't use the auto-route function not as often as I would like to. Best solution for this would be (don't know if possible) if we could make the preserve order so, that it also break the parts if needed, but cares for the order in the overlapping parts only. I was wishing we had something like this often, but I have no idea how to approach it.

@kaalleen
Copy link
Collaborator Author

@kaalleen kaalleen commented May 2, 2020

Still I think the author should have the option to disable the auto-route function. Even if we can make it work automatically. Sometimes it's good to have full control ;)

@lexelby
Copy link
Member

@lexelby lexelby commented May 2, 2020

Yeah! I've had that problem, too. I couldn't figure out how the user would say "do these satins before those". I mean, what would that look like in Inkscape? If you can figure that out, I can probably provide tips on how to change the auto-route code to make it work.

And yes, definitely, I intended to allow the font author to choose whether to use auto-route, and even whether to use the "preserve order" option. With the json file there's plenty of room for more options :)

lexelby
lexelby approved these changes May 2, 2020
@kaalleen
Copy link
Collaborator Author

@kaalleen kaalleen commented May 2, 2020

@wwderw how would you digitize an overlapping top to bottom T?
I think it'd be possible to also go from one section to an other with an zig-zag line on top of stitched out satin if there is no other way to reach the next section. Is that right?

@wwderw
Copy link
Contributor

@wwderw wwderw commented May 2, 2020

There are 2 ways of doing this that I try to mainly employ when I'm trying to make sure that one thing is always overlapping all instances of a particular letter (in this case, "T").

I'll do the vertical first in it's entirety and then I'll do the horizontal to finish it off (will have connector stitches as well, but let's just focus on the main outer objects).

The other way is to force it, which I think is the way that you are talking about has well.

I will do the top portion of the of the vertical, then do the bottom portion, with a slight overlap on the top portions satin stitch, and I'll do a manual zig zag stitch to get up to where I can do the top horizontal piece.

This forced method, I would think would also be incorporated into some closest connection from the current letter to the next. If that makes sense.

@kaalleen
Copy link
Collaborator Author

@kaalleen kaalleen commented May 2, 2020

@wwderw Thank you for describing it, that already gives a good picture. But maybe we should create a visual example to get a good picture? I prepared a file with two examples (T and H). Could you prepare the routing while following the rules of starting and ending point and the given order at the overlapping parts? That would help a lot! No hurry!
AutoRoute-PreserveOrder.svg.txt

@kaalleen kaalleen merged commit 555628b into master May 3, 2020
4 checks passed
@kaalleen kaalleen deleted the kaalleen/missing-font-characters branch May 3, 2020
kaalleen added a commit that referenced this issue May 16, 2020
## New Features

- New Simulator (#531)
- Import Threadlist (#666)
- Export Threadlist in ZIP file (#664)
- Option to include SVG in ZIP file (#648)
- Break Apart and Retain Holes (#653)
- G-Code: option to alternate z-value (#659)
- New Stitch Plan Extension (#640)
- Optionally enable/disable ties (lock down stitches) (#619)
- Multiple Fill Underlays
- Additional Fonts (#683):
    * Geneva
    * DejaVu

## Improvements

- Better Algorithm for Satin Columns (#607)
- Better Algorithm for Fill Stitches (#606)
- Convert to Satin with Loops (#608)
- Adding '@ #' to all fonts (#680)

## Bug Fixes

- Fix Issue with Troubleshoot Pointer Position (#696)
- Inherit Styles (#673)
- Fix Color Palette Issues (#660)
- Preserve Aspect Ratio (#646)
- and more

## Under the Hood

- Namespaced Attributes (#657)
- Remove stub.py (#629)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants