[SOLVED] makeOffset2D: wires are nonplanar or noncoplanar - on union of edge sets

Post here for help on using FreeCAD's graphical user interface (GUI).
Forum rules
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help

Also, be nice to others! Read the FreeCAD code of conduct!
User avatar
quiret
Posts: 72
Joined: Wed Jun 15, 2022 1:23 pm
Location: Germany
Contact:

Re: Bug: makeOffset2D: wires are nonplanar or noncoplanar - on union of edge sets

Post by quiret »

chrisb wrote: Wed Jun 22, 2022 2:33 pm
quiret wrote: Tue Jun 21, 2022 8:24 pm Having new workflows that currently helpers do not understand is a problem, of course.
That's not what I meant, not at all. But we see here quite often that weird details are discussed leading to a cumbersome overall workflow, where the final goal could be more easily reached with an understandable and clear workflow.
I promise you that I have just the best intentions in mind when I am proposing new things for FreeCAD. It may seem "cumbersome" but that is just because the things I describe are new to you and this community.
adrianinsaval wrote: sorry, I was talking of PD mirror, Part mirror works too if you are primarily working on Part workbench, if you work primarily in Part Design mixing the workbenches can be tricky so I prefer to use the PD features wherever possible.
Dw, no problem. I really love the Part Design WB and would like to stay as much as possible inside of it aswell. Still looking for things that are possible outside of Part Design WB to optimize my workflow in combination.
User avatar
onekk
Veteran
Posts: 6205
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: Bug: makeOffset2D: wires are nonplanar or noncoplanar - on union of edge sets

Post by onekk »

quiret wrote: Wed Jun 22, 2022 2:03 pm Thank you for this very detailed insight into FreeCAD specifics. I believe now that some modellings aspects I have assumed as feasible for FreeCAD might be too much of an API burden to implement. I love how the Python API closely matches the UI possibilities.
Python API is way more powerful than UI, as it expose also some complicated things.

quiret wrote: Wed Jun 22, 2022 2:03 pm Your professionally selected excerpts prove that. Gotta love the amount of insight that the FreeCAD community has gotten into this free & open-source product. That is the main reason I want to continue using and contributing to FreeCAD.
Thanks that these are not properly "professional" only some things that have helped me to focus on FC modelling.

Some more interesting things maybe:

https://forum.freecadweb.org/viewtopic. ... 5&start=10

https://forum.freecadweb.org/viewtopic.php?f=22&t=66330

https://forum.freecadweb.org/viewtopic.php?f=22&t=68733

https://forum.freecadweb.org/viewtopic. ... 87#p595687

https://forum.freecadweb.org/viewtopic. ... 43#p598343

https://forum.freecadweb.org/viewtopic. ... 65#p598065

https://forum.freecadweb.org/viewtopic.php?f=22&t=69193

https://forum.freecadweb.org/viewtopic. ... 49#p601149

https://forum.freecadweb.org/viewtopic.php?f=22&t=69304

As you could see some of these things are not easy to determine and require some "vector maths" and some "deep knowledge" of 3D graphics, plus some knowledge of the API.

If you note people that are discussing these sort of things are users, very few are "core developers" and usually each of them is willing to collaborate and is trying to guess what the OP (Original Poster) want to achieve and if FC will have such "facilities".

Sometimes you could note that if the question is interesting and the problem clearly stated, it is not rare that some "core developer" make something on source code to fulfill the needs of the OP or other participants to the discussion.

quiret wrote: Wed Jun 22, 2022 2:03 pm Your post continues to show how amazing you people really are at taking their time to write quality replies to newcomers like me. Thank you once again!
Thanks, but the only people to thanks are those who made explanations, among others @chrisb, @Chris_G @edwilliams16 , @Roy_043 and @wmayer , only to mention the most recurring people from what I've archived forum post that has served me well to catch something about FC work. (Sorry for those I've forgotten).

Here I'm an user, who maybe do some "instigation" to have answers and as I'm a "scripting guy" some code to copy and reuse in some of my projects.

Hope it helps.

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
User avatar
quiret
Posts: 72
Joined: Wed Jun 15, 2022 1:23 pm
Location: Germany
Contact:

Re: Bug: makeOffset2D: wires are nonplanar or noncoplanar - on union of edge sets

Post by quiret »

I have actually found out the cause of the issue and it has nothing to do with Python lists. Why the Sub-Object Shape Binder works and why the Part WB tools do not on compounds: the "Relative=true" feature of the Sub-Object Shape Binder. Let me explain this briefly because I aim to create a video about this explaining it in full detail.

What does the Relative property do?
- when true then all transformations in coordinate spaces are captured by
the shape binder up to the global origin transformation
- when false then only the transformations up to the object included into
the shape binder are captured, decided up to the local source, leaving out any further coordinate system
attachments up the transformation chain
-> then if you capture a (regular) shape binder whose property is Relative=true AND
such included shape binder is attached to the global origin, then
all included geometrical information of the inclusion is transformed to the
global origin anyway, which means that the Relative=false of the Sub-Object shape
binder would not seem to do anything BUT is very important depending on configuration
anyway
-> then if you capture another shape binder B whose property is Relative=False into our
Sub-Object shape binder called A, consequently all geometrical information from B
is taken as-is meaning an attachment of B does not have an effect on the translation
hierarchy of A; moreover any transformations up to the origin coordinate system inside B are
also captured by A

When we perform a "Make Face from Wires" Part WB operation on a mirrored-sketch compound, then there is an implicit "Relative=False" property in that operation. Instead of taking the geometrical information as globally transformed by the compound and mirror, the information is only treated as if local on the origin sketch, skipping any mirror or translation up to the global origin coordinate system. That is why we get this error message in the thread title.

Any shape binder geometrical capture is treated as local geometrical information.

This is a very strong mathematical detail of FreeCAD which - in my opinion - makes this software the most advanced CAD software on the open internet. I dare to say that even the commercial softwares do not have this feature; they set themselves apart just by the users they dragged into their pay2play schemes. I am very effin impressed, FreeCAD devs! The modelling freedom of this software is very complex and amazing...

EDIT: I have run into details of FreeCAD which made me revise my direction. I do not plan to do this video anymore.
Last edited by quiret on Thu Jun 30, 2022 11:03 pm, edited 1 time in total.
User avatar
thomas-neemann
Veteran
Posts: 11919
Joined: Wed Jan 22, 2020 6:03 pm
Location: Osnabrück DE 🇩🇪
Contact:

Re: Bug: makeOffset2D: wires are nonplanar or noncoplanar - on union of edge sets

Post by thomas-neemann »

quiret wrote: Fri Jun 24, 2022 8:33 am ... I am very effin impressed, FreeCAD devs! The modelling freedom of this software is very complex and amazing...
+1
Gruß Dipl.-Ing. (FH) Thomas Neemann

https://www.youtube.com/@thomasneemann5 ... ry=freecad
User avatar
onekk
Veteran
Posts: 6205
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: Bug: makeOffset2D: wires are nonplanar or noncoplanar - on union of edge sets

Post by onekk »

quiret wrote: ...
Could you kindly modify the post title:

1) go to your first post and then click on the pencil icon
2) modify the title deleting Bug and maybe put [Solved]

This way future users will have a better feeling. Bug is ugly if not followed by [Solved] and if this is not a bug but a "standard" although "weird or strange" behaviour of the software.

IMHO as usual, as I'm not a moderator, nor a developer, and "Veteran" is only saying I've exceeded a certain number of post (I don't remember how much), without any judgement about the correctness of posts and other "quality" concerns.

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
User avatar
quiret
Posts: 72
Joined: Wed Jun 15, 2022 1:23 pm
Location: Germany
Contact:

Re: [SOLVED] makeOffset2D: wires are nonplanar or noncoplanar - on union of edge sets

Post by quiret »

onekk wrote: Fri Jun 24, 2022 10:03 am
quiret wrote: ...
Could you kindly modify the post title:

1) go to your first post and then click on the pencil icon
2) modify the title deleting Bug and maybe put [Solved]

This way future users will have a better feeling. Bug is ugly if not followed by [Solved] and if this is not a bug but a "standard" although "weird or strange" behaviour of the software.

IMHO as usual, as I'm not a moderator, nor a developer, and "Veteran" is only saying I've exceeded a certain number of post (I don't remember how much), without any judgement about the correctness of posts and other "quality" concerns.

Regards

Carlo D.
Done! Thank you for reminding me. I have also removed the inappropriate remark about feature quality. 👍
drmacro
Veteran
Posts: 8982
Joined: Sun Mar 02, 2014 4:35 pm

Re: Bug: makeOffset2D: wires are nonplanar or noncoplanar - on union of edge sets

Post by drmacro »

quiret wrote: Fri Jun 24, 2022 8:33 am ...it has nothing to do with Python lists. ...
You seem to be rather focused on this particular comment.

I assume this is reference to my comment. Maybe you took it as an explicit description of the Compound functionality. It was not meant to be.

I was simply saying that the Compound does not create a new solid such as a Boolean operation would when used with solids. (Yes, I suppose i could have bloviated more on the subject...but didn't.)

Typical (tradition, not that is shouldn't) workflow doesn't use Compound with sketches or binders, so the convolution you describe with the Relative property, may simply be a result of the original dev didn't consider it as tool to be used with other than solids or the scope of Compound has not been expanded. The Compound has been around long before the binders were introduced. In addition, the binders are relatively new and are definitely not understood by many (and have had some strange issues in recent builds).
Star Trek II: The Wrath of Khan: Spock: "...His pattern indicates two-dimensional thinking."
User avatar
onekk
Veteran
Posts: 6205
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: [SOLVED] makeOffset2D: wires are nonplanar or noncoplanar - on union of edge sets

Post by onekk »

quiret wrote: Fri Jun 24, 2022 11:46 am Done! Thank you for reminding me. I have also removed the inappropriate remark about feature quality. 👍
:D

Thanks
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
Post Reply