#2683 Refinement transformation

About the development of the Part Design module/workbench. PLEASE DO NOT POST HELP REQUESTS HERE!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
jmaustpc
Veteran
Posts: 11207
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: #2683 Refinement transformation

Post by jmaustpc »

tanderson69 wrote: Wed Jun 14, 2017 7:38 pm IMHO:
If you guys want to go "all in" on refinement, I think you should switch to occt::ShapeUpgrade_UnifySameDomain. Then work upstream with occt to work the bugs out. That might be a long haul so maybe that should wait until after a release.

Another thing to keep in mind is: the better topo-naming gets the less problems there will be with turning the auto refine on and off.
A note for anyone reading this who does not already know......Tanderson69 was the developer who wrote Refine in FreeCAD. :)
chrisb
Veteran
Posts: 54201
Joined: Tue Mar 17, 2015 9:14 am

Re: #2683 Refinement transformation

Post by chrisb »

... and he did a great job, thanks!
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
abdullah
Veteran
Posts: 4935
Joined: Sun May 04, 2014 3:16 pm
Contact:

Re: #2683 Refinement transformation

Post by abdullah »

tanderson69 wrote: Wed Jun 14, 2017 7:38 pm IMHO:
If you guys want to go "all in" on refinement, I think you should switch to occt::ShapeUpgrade_UnifySameDomain. Then work upstream with occt to work the bugs out. That might be a long haul so maybe that should wait until after a release.

Another thing to keep in mind is: the better topo-naming gets the less problems there will be with turning the auto refine on and off.
Thanks!! This is indeed a good pointer, which links somehow with triplus' open question of what if algorithms change.

If algorithms change and the algorithm is "switched", there is a not negligible chance a model will break. Specially not negligible when considering the current toponaming status.

I must admit I like the idea of implementing this occt functionality. Whatever mechanism we provide, I think will have to clearly identify what is being used, so as to maintain backwards compatibility (not so much referring to 0.16 here, but 0.18 vs 0.17 and so on), so if several refinement algorithms will (now or eventually) be supported, we need to indicate which one is being used.

I continue with my design. So far I am positively surprised of the result...
ickby
Veteran
Posts: 3116
Joined: Wed Oct 05, 2011 7:36 am

Re: #2683 Refinement transformation

Post by ickby »

The occ algorithm may be a good choice, however, one needs to know that it was vastly improved lately. I think it is basically unusable before occ7.0 and even after 7.1 on recent master some essential improvements have been done. This needs to be considered when used.
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: #2683 Refinement transformation

Post by NormandC »

Hello,

Am I to understand there has been no progress on this?

Here's a recent topic, with the "Links go out of the allowed scope" restriction, the behavior has changed.

https://forum.freecadweb.org/viewtopic.php?f=3&t=26375

I don't expect any long term solution to be worked on before release of 0.17, but I am now wondering if, in the meanwhile, instead of making a new exclusive PD refine feature, it would be possible to make the OpenSCAD one compatible with PD Bodies.

Case in point: shaise, the developer of the Sheet Metal workbench add-on, has made it compatible with Bodies. Features are added under the body, in a lineal order.

Image


So why couldn't it be possible to adapt the OpenSCAD Refine Shape feature? Or could it cause backward compatibility issues in the long run?
wmayer
Founder
Posts: 20308
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: #2683 Refinement transformation

Post by wmayer »

Here's a recent topic, with the "Links go out of the allowed scope" restriction, the behavior has changed.
A temporary solution would be to disable this restriction and instead print a warning or error to the output window. And if the message includes the feature type we can fix the features step by step.
I don't expect any long term solution to be worked on before release of 0.17, but I am now wondering if, in the meanwhile, instead of making a new exclusive PD refine feature, it would be possible to make the OpenSCAD one compatible with PD Bodies.
An alternative would be to add a boolean property to the features that use the refinement. This way it doesn't matter if a user where the option is off gets a project from another where it's on or vice versa.
chrisb
Veteran
Posts: 54201
Joined: Tue Mar 17, 2015 9:14 am

Re: #2683 Refinement transformation

Post by chrisb »

wmayer wrote: Mon Jan 15, 2018 9:26 am An alternative would be to add a boolean property to the features that use the refinement. This way it doesn't matter if a user where the option is off gets a project from another where it's on or vice versa.
It would be great to have this property in the model. I used to have the auto refinement on but had to refrain from it to be able to exchange files without continuous issues.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
abdullah
Veteran
Posts: 4935
Joined: Sun May 04, 2014 3:16 pm
Contact:

Re: #2683 Refinement transformation

Post by abdullah »

NormandC wrote: Sun Jan 14, 2018 11:17 pm Am I to understand there has been no progress on this?
Unfortunately I have had no time to work on this. :( There is a ticket on my name, so probably I will work on it during the v0.18 development cycle. :)
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: #2683 Refinement transformation

Post by triplus »

wmayer wrote: Mon Jan 15, 2018 9:26 am A temporary solution would be to disable this restriction and instead print a warning or error to the output window. And if the message includes the feature type we can fix the features step by step.
We had tons of discussion about this area in FreeCAD 0.17 development cycle. And all that didn't get us far compared to the original proposal/objective (for having such restriction). Not that long ago @ickby expressed his views as having such restriction should help in the Assembly effort (things would be less complex). Now i do imagine FreeCAD 0.18 will be all about Assembly effort. Therefore would this temporarily solution introduce issues @ickby wanted to avoid? If yes i don't see much point in enabling it for FreeCAD 0.17 as some sort of temporary hack. If not too bad it didn't happen earlier in the FreeCAD 0.17 development cycle. As i do imagine one of the biggest complaints from end users (not being able to use favorite commands in PDN workflow in some straightforward way) could be (at least partially) avoided.
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: #2683 Refinement transformation

Post by NormandC »

Sorry for not replying sooner,

wmayer wrote: Mon Jan 15, 2018 9:26 am
I don't expect any long term solution to be worked on before release of 0.17, but I am now wondering if, in the meanwhile, instead of making a new exclusive PD refine feature, it would be possible to make the OpenSCAD one compatible with PD Bodies.
An alternative would be to add a boolean property to the features that use the refinement. This way it doesn't matter if a user where the option is off gets a project from another where it's on or vice versa.
But I doubt this could be done before the 0.17 release, right? As this would need to be implemented in a lot of PD features. Besides, there were different approaches discussed here, and I don't think there was consensus. IMO, the long term solution is to remove this refinement from the hands of the end user and to deal with it under the hood.

I was just asking for a quick hack for the 0.17 release, so the current work flow in 0.16 could be kept, that is adding an OpenSCAD Refine Shape feature directly on a PartDesign feature.
Post Reply