Feature idea: blended fusion

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
User avatar
DeepSOIC
Posts: 7485
Joined: Fri Aug 29, 2014 12:45 am
Location: Saint-Petersburg, Russia

Feature idea: blended fusion

Postby DeepSOIC » Fri Apr 07, 2017 7:16 pm

Hi!
Some may have noticed my evil plan for how to mentor jnxd in his GSoC. For those who didn't, it's here:
https://forum.freecadweb.org/viewtopic. ... 20#p168754
In point 1, I mentioned this feature.
And I think it's a good time to discuss it a bit, regardless if jnxd's proposal is accepted or not.

The idea: for operations that do fusions/cuts, it is possible to find edges where shapes being fused/cut intersect, and add fillets or chamfers there.
bleded-pad.png
bleded-pad.png (461.32 KiB) Viewed 1206 times
This can take a number of forms: as a parameter in PartDesign operations, as a parameter in Part Booleans, or as an independent feature that can be applied to a fresh fusion.

Advantages:
* fillets are added to the places where they are usually wanted, quickly and conveniently.
* likewise, the fillets can be easily adjusted or removed altogether
* these fillets don't suffer lack need toponaming, they are inherently robust.
Disadvantages:
* deliberate violation of fillets-go-last principle, they may cause problems later on the way.
* overloading the incredibly simple UI of Pad/Pocket, and not so simple UI of partdesign revolution/loft/sweep

@jnxd: do you like the idea?
@everyone: Is it useful? UI ideas? Maybe a slightly different approach to achieve the same? better terminology?
User avatar
easyw-fc
Posts: 2803
Joined: Thu Jul 09, 2015 9:34 am

Re: Feature idea: blended fusion

Postby easyw-fc » Fri Apr 07, 2017 7:24 pm

DeepSOIC wrote:Hi!
The idea: for operations that do fusions/cuts, it is possible to find edges where shapes being fused/cut intersect, and add fillets or chamfers there.
bleded-pad.pngThis can take a number of forms: as a parameter in PartDesign operations, as a parameter in Part Booleans, or as an independent feature that can be applied to a fresh fusion.

Advantages:
* fillets are added to the places where they are usually wanted, quickly and conveniently.
* likewise, the fillets can be easily adjusted or removed altogether
* these fillets don't suffer lack need toponaming, they are inherently robust.
Disadvantages:
* deliberate violation of fillets-go-last principle, they may cause problems later on the way.
* overloading the incredibly simple UI of Pad/Pocket, and not so simple UI of partdesign revolution/loft/sweep

@jnxd: do you like the idea?
@everyone: Is it useful? UI ideas? Maybe a slightly different approach to achieve the same? better terminology?
+1 from my side!
very nice idea though!
:D
ickby
Posts: 2940
Joined: Wed Oct 05, 2011 7:36 am

Re: Feature idea: blended fusion

Postby ickby » Fri Apr 07, 2017 7:27 pm

I very much like it and think this is a good addition to the existing tools!
User avatar
sgrogan
Posts: 5651
Joined: Wed Oct 22, 2014 5:02 pm

Re: Feature idea: blended fusion

Postby sgrogan » Fri Apr 07, 2017 7:52 pm

Wouldn't filleting the indicated edge "undercut" the vertical edge of the hexagon? Or would further blending (variable radius) be done?
User avatar
DeepSOIC
Posts: 7485
Joined: Fri Aug 29, 2014 12:45 am
Location: Saint-Petersburg, Russia

Re: Feature idea: blended fusion

Postby DeepSOIC » Fri Apr 07, 2017 8:03 pm

sgrogan wrote:Wouldn't filleting the indicated edge "undercut" the vertical edge of the hexagon?
I meant to indicate the fillet, not edge :oops:
triplus
Posts: 9278
Joined: Mon Dec 12, 2011 4:45 pm

Re: Feature idea: blended fusion

Postby triplus » Sat Apr 08, 2017 2:33 am

Such features i guess are the next logical step (regardless of topology implications).
Joyas
Posts: 491
Joined: Sat Jul 12, 2014 8:39 pm

Re: Feature idea: blended fusion

Postby Joyas » Sat Apr 08, 2017 10:09 am

deliberate violation of fillets-go-last principle, they may cause problems later on the way.
That principle is based on the toponaming problem, so I think that there is no problem for adding a fillet in the same operation.
I prefer JavaScript, I don't like Python indentation.
User avatar
NormandC
Posts: 18534
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: Feature idea: blended fusion

Postby NormandC » Sun Apr 09, 2017 12:55 am

Joyas wrote:That principle is based on the toponaming problem
It's not, it's considered good practice for parametric modelling: apply chamfers and fillets last. It's not a good idea to base sketches on such features, that's true for any parametric CAD software.

Edit: this "resilient modelling strategy" recommends placing chamfers and fillets into a group labelled "quarantine" :D :
http://learnrms.com/27%2DQuarantine%2D09.html
DeepSOIC wrote:@everyone: Is it useful?
To be honest I can't think of a case where it would have been useful to me. I guess that once it's available, I may find a use for it...
Joyas
Posts: 491
Joined: Sat Jul 12, 2014 8:39 pm

Re: Feature idea: blended fusion

Postby Joyas » Mon Apr 10, 2017 9:57 am

NormandC wrote:
Joyas wrote:That principle is based on the toponaming problem
It's not, it's considered good practice for parametric modelling: apply chamfers and fillets last. It's not a good idea to base sketches on such features, that's true for any parametric CAD software.

Edit: this "resilient modelling strategy" recommends placing chamfers and fillets into a group labelled "quarantine" :D :
http://learnrms.com/27%2DQuarantine%2D09.html
DeepSOIC wrote:@everyone: Is it useful?
To be honest I can't think of a case where it would have been useful to me. I guess that once it's available, I may find a use for it...
Thanks, I did not know that.
I prefer JavaScript, I don't like Python indentation.
User avatar
DeepSOIC
Posts: 7485
Joined: Fri Aug 29, 2014 12:45 am
Location: Saint-Petersburg, Russia

Re: Feature idea: blended fusion

Postby DeepSOIC » Sat May 06, 2017 3:54 pm

jnxd wrote:(attention grabber quote)
Hi!
Are you interested in implementing this feature?
I remember in PM you asked for pointers on how to implement it.
Here's one:
https://www.freecadweb.org/wiki/Macro_Section