A randomly started discussion about the necessity of the PD single solid rule

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!
Locked
wsteffe
Posts: 461
Joined: Thu Aug 21, 2014 8:17 pm

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by wsteffe »

-alex- wrote: Thu Mar 23, 2023 4:01 pm Part WB is less user friendly than PD (for holes for eg.), but it is far less CPU consuming compare to PD WB.
I agree that primitives (not booleans) may be less time consuming than sketch based modelling.
But I do not thnk that it would change if you call a primitive from PD WB or from Part WB (In RT branch you have both options).
Once all Part features are also in PD there is no need to have this kind of duplication.
wsteffe
Posts: 461
Joined: Thu Aug 21, 2014 8:17 pm

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by wsteffe »

user1234 wrote: Thu Mar 23, 2023 4:33 pm And is it in the master?
It must be the same also in master.

A Body has an independent placement property. And it is created before any sketch has been placed into it.
So how could it be the result of sketch based operations ? It would like to say that the effect comes before the cause.
User avatar
-alex-
Veteran
Posts: 1856
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by -alex- »

wsteffe wrote: Thu Mar 23, 2023 4:46 pm I agree that primitives (not booleans) may be less time consuming than sketch based modelling.
But I do not thnk that it would change if you call a primitive from PD WB or from Part WB (In RT branch you have both options).
Once all Part features are also in PD there is no need to have this kind of duplication.
Off topic: ok, i have no strong opinion, but my experience is that Part wb is much more faster to use on RPI4 compare to PD wb.
Because Pat is underlayed to PD, I guessed it is faster. But maybe it's more related to the workflow, I don't know.
Anyway, Part wb is perfect to handle multiple solids, then boolean them, then manage dependencies easily. It's easy to recombine operations because each solid is quite independent from others. It has many advantages compare to PD wb, and some drawbacks, they are different.
More stuff to say, but I stop the offtopic.
Isabel
Posts: 112
Joined: Mon Jun 25, 2018 6:06 am

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by Isabel »

wsteffe wrote: Thu Mar 23, 2023 4:31 pm But also internally: for sure in the PD of RT the set of solids placed in a Body must be implemented as TopoDS::Compound.
Are you sure? How should overlaps be handled then? How do you decide when to union?
wsteffe
Posts: 461
Joined: Thu Aug 21, 2014 8:17 pm

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by wsteffe »

Isabel wrote: Thu Mar 23, 2023 6:17 pm Are you sure? How should overlaps be handled then? How do you decide when to union?
Yes I am sure. In the RT branch when you make, in example, a pad you may choose if you want to create a new shape or add it
to an existing solid. It the latter case the base feature (to which it is added) is the "body tip" which usually coincides with the last solid created in that body. But you may assign the tip property to a different solid in the same Body in case you need to change it after having created another solid.

RT PD provides also a separate boolean union which can be added in any moment inside the Body. This feature has a list of arguments to which can be added the previously created solids. The arguments are fused into a single solid if they overlap.

I have to say that RT branch is very powerful in this kind of design flow.
freedman
Veteran
Posts: 3441
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by freedman »

The single solid rule is good, it's analogous to a sharp stick poking the user to expand their modeling skill. Currently the tree has a numbering scheme that numbers/renumbers the single solids as they are created. How would that work?

Humans always take the easy route so they will try and model a whole car in one Body with multiple solids.

Multiple solids disappearing, the implementation. Making something disappear is just wrong, this is not how you treat users.

A fix: When a multiple solid is detected the second solid portion should change colors or something, maybe like the shapebinder. The user can continue to model but it is obvious that there is a multiple solid. Once the two solids are connected then the model would return to the normal appearance.

I just made an Assembler that works at the Body level, wouldn't we want something like that at some point. Single Bodies are a good thing IMO.
user1234
Veteran
Posts: 3345
Joined: Mon Jul 11, 2016 5:08 pm

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by user1234 »

freedman wrote: Thu Mar 23, 2023 7:17 pm The single solid rule is good, it's analogous to a sharp stick poking the user to expand their modeling skill.
There are many usecases, where are a multi solid Body is required do model clean and without workarounds, see in this thread.


wsteffe wrote: Thu Mar 23, 2023 4:38 pm But in the RT branch both modelling are available in the same PD WB.
Tested a longer time ago the RT branch, there was nothing in that direction, there was only a checkbox to create a new Body, what have noting to do with that. But i will not test it now, since on newer test, it was alas crashing and graphical glitching around and it messed up with my configs, even when i use separate config folders configurations on startup.


Greetings
user1234
User avatar
bambuko
Veteran
Posts: 2165
Joined: Thu Oct 24, 2019 12:53 pm
Location: UK, England, North Devon

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by bambuko »

wsteffe wrote: Thu Mar 23, 2023 4:38 pm ...But in the RT branch both modelling are available in the same PD WB.
In fact he has ported to PD the primitive geometries (Box, Cylinder, Sphere, Cone, Ellipsoid, Torus ...) and the boolean operations.
Indeed, and I am using it happily with no problems at all (and great deal of convenience) for yonks....
one more reason why I prefer realthunder's link branch ;)
I am using Link branch and Assembly3
you can also download ... and try it here
excellent Assembly3 tutorials here
C_h_o_p_i_n
Posts: 225
Joined: Fri Apr 26, 2019 3:14 pm

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by C_h_o_p_i_n »

freedman wrote: Thu Mar 23, 2023 7:17 pm The single solid rule is good, it's analogous to a sharp stick poking the user to expand their modeling skill. Currently the tree has a numbering scheme that numbers/renumbers the single solids as they are created. How would that work?

Humans always take the easy route so they will try and model a whole car in one Body with multiple solids.

Multiple solids disappearing, the implementation. Making something disappear is just wrong, this is not how you treat users.

A fix: When a multiple solid is detected the second solid portion should change colors or something, maybe like the shapebinder. The user can continue to model but it is obvious that there is a multiple solid. Once the two solids are connected then the model would return to the normal appearance.

I just made an Assembler that works at the Body level, wouldn't we want something like that at some point. Single Bodies are a good thing IMO.
That sounds a lot like some religions state ... you shall not x you shall not y ... only the z is the true pure way to go.
No one will force you to change your way, if you're eager to follow your own single solid per body paradigm.

But all other will have the freedom to do it different if they like to.
freedman
Veteran
Posts: 3441
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: A randomly started discussion about the necessity of the PD single solid rule

Post by freedman »

No one will force you to change your way, if you're eager to follow your own single solid per body paradigm.
Good point. If we have a switch to set either then I would be all in.

I always thought there was a structure to modeling where you can't have free hanging objects. I thought every object (has a placement) and must be connected to something, if you want to have a free hanging object then you need an Assembler to be used to control it's placement.
Locked