Sketcher : Chamfer, Arc Slot, Rectangle Slot, Frame

Info about new community or project announcements, implemented features, classes, modules or APIs. Might get technical!
PLEASE DO NOT POST HELP REQUESTS OR OTHER DISCUSSIONS HERE!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
paddle
Veteran
Posts: 1415
Joined: Mon Feb 03, 2020 4:47 pm

Re: Sketcher : Chamfer, Arc Slot, Rectangle Slot, Frame

Post by paddle »

Regarding the commit history and separating features it's sincerely hard for several reason.
First I sucks at git.
Secondly the features are made all builds on top of toolSettings. And when I develop those other features I fix and improve tool settings.
And I just can't go back and forth between branches everytime I need to fix something in tool settings because the project rebuilds entirely between each checkout (1 hours back and forth + potential git messed up, make that 10 times a day, that just doesn't work).

Besides how can I spend days on git cleaning that I have no clue how to handle when I could work on offset or circular pattern? It's just too tempting.
Besides I did try to clean my commits. Look arcslot and rectangle slot fit in a neat commit. Chamfer tool in another. Then it got messy again because I had to do the fix tool settings implementation. Then this chamfer 3 coincident thing got in the way. How I'm supposed to get that back in the chamfer commit?
openBrain
Veteran
Posts: 9041
Joined: Fri Nov 09, 2018 5:38 pm
Contact:

Re: Sketcher : Chamfer, Arc Slot, Rectangle Slot, Frame

Post by openBrain »

adrianinsaval wrote: Wed Feb 09, 2022 8:34 pm what if the corners edges are not parallel to the the vertical and horizontal axis? :?:
There are corner cases. As if the 2 endpoints are horizontally aligned, you can't use vertical constraint for center.
The most correct solution (from a geometrical point of view) is IMO 2x coincident constraints on endpoints + a distance of 0 between centers, but that sounds a bit weird. :?
openBrain
Veteran
Posts: 9041
Joined: Fri Nov 09, 2018 5:38 pm
Contact:

Re: Sketcher : Chamfer, Arc Slot, Rectangle Slot, Frame

Post by openBrain »

paddle wrote: Wed Feb 09, 2022 9:51 pm And I just can't go back and forth between branches

Code: Select all

git worktree
may be of help.
everytime I need to fix something in tool settings because the project rebuilds entirely between each checkout (1 hours back and forth + potential git messed up, make that 10 times a day, that just doesn't work).
There should be a problem in your configuration. If you work only on sketcher files, compiling changes is a matter of minutes (if not seconds). :?

Besides how can I spend days on git cleaning that I have no clue how to handle when I could work on offset or circular pattern?
Because at the end you want your changes to be merged. Development has no sense if production never comes.
How I'm supposed to get that back in the chamfer commit?

Code: Select all

git commit --fixup SHA
git rebase -i --autosquash SHA^1
Or manual way with

Code: Select all

git rebase -i
User avatar
adrianinsaval
Veteran
Posts: 5553
Joined: Thu Apr 05, 2018 5:15 pm

Re: Sketcher : Chamfer, Arc Slot, Rectangle Slot, Frame

Post by adrianinsaval »

paddle wrote: Wed Feb 09, 2022 9:51 pm Besides I did try to clean my commits. Look arcslot and rectangle slot fit in a neat commit. Chamfer tool in another. Then it got messy again because I had to do the fix tool settings implementation. Then this chamfer 3 coincident thing got in the way. How I'm supposed to get that back in the chamfer commit?
I mostly meant that your commits should be separate, IMO it's fine to a have a commit for chamfer, then one for tool settings then one for chamfer. These can be later rebased, just don't commit tool settings AND chamfer stuff at the same time. Take the time to learn git, it will be worth it. Use a gui if you're not already, I recommend gitkraken, makes my life easier.
Given your constant recompilation i would consider dualbooting to linux or at least a good VM were you can set up ccache. Recompilation of minor differences shouldn't take that long, it didn't take that long even in my previous shitty notebook that took 5h to make a full compile. Also keeping your different branches rebased on the same commit from master will make a difference (so just YOUR changes get compiled not other unrelated stuff too).
openBrain wrote: Wed Feb 09, 2022 10:10 pm There are corner cases. As if the 2 endpoints are horizontally aligned, you can't use vertical constraint for center.
The most correct solution (from a geometrical point of view) is IMO 2x coincident constraints on endpoints + a distance of 0 between centers, but that sounds a bit weird. :?
what about coincidence in one and endpoint tangency on the other, no constrain on the centerpoints. Also in the context of inward filleting it's possible to constraint with point on object between one line and rim point and coincidence between the other rim points and the center points
User avatar
NewJoker
Veteran
Posts: 3089
Joined: Sun Oct 11, 2020 7:49 pm

Re: Sketcher : Chamfer, Arc Slot, Rectangle Slot, Frame

Post by NewJoker »

paddle wrote: Wed Feb 09, 2022 7:27 pm Don't get your hopes too high I'll probably not manage to do all I have planed but I'll try my best.

For the offset, I think I can manage offset for lines and circles/arcs. It probably gets really tricky for things like bspline, hyperbolas, parabolas, ellipses, and worse of all projections.Though I'm not sure there are projections in Freecad? Can you create external geometries from shapes that are not in the same plan? ie getting complex projections.
Anyhow. If it's working for lines and circles that already pretty nice I guess.

However I was thinking about starting rotation first. Though I don't know anymore if offset is not more appealing.
Sure, your contributions are already amazing. Thanks to you the Sketcher can get very close to a complete user-friendly environment. These functionalities have been requested for many years and plenty of users would appreciate them but until now there has been no one to take them on. I have minimal coding experience so I don't even try to work on that.

There is a tool called External geometry but it only adds reference lines that can't be used for further operations so there's no need to implement offset for them. Realthunder's branch has the Defining geometry tool but the lines generated by it are still something different than the regular sketch geometry. I used this offset macro a few times and it performs really well so maybe you could use it as a base for built-in offset functionality.

For me, all these sketching features are very important, especially when modeling the cellular structures that I often design in other software. But I would list them from the most useful in this order:
1. Circular pattern: https://forum.freecadweb.org/viewtopic.php?f=8&t=61841
2. Offset - I just recalled that in September 2021 chrisb replied to me that Abdullah has it on his to do list. But I guess that he won't start working on that any time soon since he's probably very busy.
3. Rotation (possibly with an option to copy): https://forum.freecadweb.org/viewtopic.php?f=8&t=61828
4. Scaling (I forgot to mention this in my previous post)

By the way, my favorite tool from the ones included in the current contribution is Chamfer. There are fillets in the Sketcher but surprisingly no chamfers and they have always been desired.
User avatar
paddle
Veteran
Posts: 1415
Joined: Mon Feb 03, 2020 4:47 pm

Re: Sketcher : Chamfer, Arc Slot, Rectangle Slot, Frame

Post by paddle »

Regarding the constrain question for the 2 arcs, something occured to me, the original arc is not required at all, there was no good reason to keep it as construction. So I just removed it.
galou_breizh
Posts: 437
Joined: Wed Sep 15, 2010 9:38 am

Re: Sketcher : Chamfer, Arc Slot, Rectangle Slot, Frame

Post by galou_breizh »

paddle wrote: Wed Feb 09, 2022 3:23 pm Hey guys,
I implemented Chamfer, Arc Slot, Rectangle Slot on top of my constrain Contextually branch, this way they now support ToolSettings.
Also introduced a small Frame tool that has been asked to me.
Thanks Pierre for all the work you've been doing lately! Please don't get discouraged by the tone of some of the users and by people keeping comparing to commercial CAD software and requiring the implementation of other features (we shouldn't compare to other CAD software if we are going to be better than them at the end of the day ;) ). I really appreciate the changes you bring to FreeCAD and it looks that many other users share my opinion.

Thanks and keep up the good work!
Gaël
User avatar
paddle
Veteran
Posts: 1415
Joined: Mon Feb 03, 2020 4:47 pm

Re: Sketcher : Chamfer, Arc Slot, Rectangle Slot, Frame

Post by paddle »

galou_breizh wrote: Wed Feb 16, 2022 7:37 am
paddle wrote: Wed Feb 09, 2022 3:23 pm Hey guys,
I implemented Chamfer, Arc Slot, Rectangle Slot on top of my constrain Contextually branch, this way they now support ToolSettings.
Also introduced a small Frame tool that has been asked to me.
Thanks Pierre for all the work you've been doing lately! Please don't get discouraged by the tone of some of the users and by people keeping comparing to commercial CAD software and requiring the implementation of other features (we shouldn't compare to other CAD software if we are going to be better than them at the end of the day ;) ). I really appreciate the changes you bring to FreeCAD and it looks that many other users share my opinion.

Thanks and keep up the good work!
Gaël
Glad you like it!
Post Reply