Invalid A2+-assembly of valid objects

Discussion about the development of the Assembly workbench.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
Roland
Posts: 333
Joined: Fri Aug 21, 2015 2:20 pm

Invalid A2+-assembly of valid objects

Post by Roland »

Hello Assemblers,

This topic rose from a discussion on TechDraw. There, it was suggested that TechDraw needs "valid" shapes in order to proceed properly. (Hopefully, TechDraw will answer that question.)

The shapes that I am making are invalid (says the Parts Geometry Check). I do not know what that means. Perhaps that they are discontinuous? But they are intended the way they are. Please check the attached, as an example.

GeometryTest.FCStd is an assembly made by A2+. It contains only 1 part now: CentralBody-900. In my use case, further elements would be added using A2+. The resulting unit would be further assembled into higher levels of complexity.

For the purpose of the further analysis, I am not increasing that level of complexity now in GeometryTest.FCStd, but rather I run Parts Geometry Check. It tells me that CentralBody-900 is invalid.

The original of CentralBody-900 is a file called CentralBody-900_ass.FCStd. It contains 3 parts. Of each of those parts Parts Geometry Check tells me that they are valid. So, A2+ produces an invalid thing out of valid parts.

Questions:
  • What is validity?
  • Should we bother about that, when making an assembly with A2+?
  • Are assemblies of invalid components a problem for further model elaboration (e.g. the preparation of drawings using TechDraw)?
Please let me know your views.

Greetz

Roland
Attachments
CentralBody-900_ass.FCStd
(32.94 KiB) Downloaded 40 times
GeometryTest.FCStd
(27.08 KiB) Downloaded 36 times
kbwbe
Veteran
Posts: 1052
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Invalid A2+-assembly of valid objects

Post by kbwbe »

Roland wrote: Wed Aug 28, 2019 8:50 am This topic rose from a discussion on TechDraw. There, it was suggested that TechDraw needs "valid" shapes in order to proceed properly. (Hopefully, TechDraw will answer that question.)
Hi Roland,
at first you should enable the A2p-option "use solid union for importing parts" and redo your assembly with this option being active.
I hope this helps.

Why:
Per default, A2p imports the single components as a shell and tries to convert them to a solid. This usually works well at first level import. Latest at second level (import of the first subassembly), the conversion from a shape to a solid fails often. This is due to small positioning errors which are caused by the solver. As result, some sub shells within a combined shell overlap a little bit and it is impossible for OCC, to convert the combined shell to a valid solid.
Using the option "use solid union..." tries to avoid this and fuses every shape which is found during import to a single valid shape.
But there are some drawing backs working this way. The fusing operation takes more time and the handling of colors will not work properly.

Techdraw seems to require valid solids. But i am not inside enough to tell more. So i could be necessary to work according to the description above.
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.56, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
User avatar
Roland
Posts: 333
Joined: Fri Aug 21, 2015 2:20 pm

Re: Invalid A2+-assembly of valid objects

Post by Roland »

Thanks KB,

I am testing it. Before I know if it is a workable approach will take some time. Meanwhile, a first result of the union option makes the next level indeed 'valid'. Losing colours indeed, and costing plenty of processor time.

A very strange observation: I made a complicated part (prepared in Part Design) that consists of various 'bodies' inside the very single part FSTD. Each individual body is 'valid', says Part. Upon importing it with A2+ into another FSTD, it becomes an invalid object inside the new document. This contradicts all my human logic.

Throughout a design process, imperfections are unavoidable. So, I would be happy with the invalidity of some intermediate results. It is really a pity that tools that are operational further downstream the design process require the perfection of 'validity'. In my opinion, such strictness does not sufficiently appreciate the iterative nature of a design process.

Second issue:
Your advice implies to redo many assemblies. During that process A2+ reports that some constraints are no longer valid, or even that the constraint system is inconsistent. Not surprising since the several bodies are entirely replaced by others. The suggestion of A2+ to "remove my last added constraint" is not so useful in this situation. Is there a way to switch off some constraints individually, for a trial & error approach? This would save me quite some time.

Best regards,

Roland
User avatar
wandererfan
Veteran
Posts: 6326
Joined: Tue Nov 06, 2012 5:42 pm
Contact:

Re: Invalid A2+-assembly of valid objects

Post by wandererfan »

Related discussion of valid shapes in TD Forum: https://www.forum.freecadweb.org/viewto ... 10#p329951
kbwbe
Veteran
Posts: 1052
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Invalid A2+-assembly of valid objects

Post by kbwbe »

wandererfan wrote: Wed Aug 28, 2019 1:27 pm Related discussion of valid shapes in TD Forum: https://www.forum.freecadweb.org/viewto ... 10#p329951
Thank you for the link, @wandererfan. I think, these problems are not easy to solve.
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.56, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
kbwbe
Veteran
Posts: 1052
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Invalid A2+-assembly of valid objects

Post by kbwbe »

Roland wrote: Wed Aug 28, 2019 12:07 pm Second issue:
Your advice implies to redo many assemblies. During that process A2+ reports that some constraints are no longer valid, or even that the constraint system is inconsistent. Not surprising since the several bodies are entirely replaced by others. The suggestion of A2+ to "remove my last added constraint" is not so useful in this situation. Is there a way to switch off some constraints individually, for a trial & error approach? This would save me quite some time.
Hi Roland,
replacing a part within an assembly is a very critical task. In most cases, not only one but all constraints related to the part will break. So i am not a friend of a trial and error approach. My workflow is different. If i detect broken constraints during a part's replacement, i delete all constraints relatied to it. There is a button for this task. Within next step, i redefine the constraints.

best regards,
Klaus
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.56, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
User avatar
Roland
Posts: 333
Joined: Fri Aug 21, 2015 2:20 pm

Re: Invalid A2+-assembly of valid objects

Post by Roland »

If i detect broken constraints during a part's replacement, i delete all constraints relatied to it. There is a button for this task.
Dear Klaus,

Where is that button? (A2+ v0.4.26a)
kbwbe
Veteran
Posts: 1052
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Invalid A2+-assembly of valid objects

Post by kbwbe »

Roland wrote: Wed Aug 28, 2019 7:06 pm Where is that button? (A2+ v0.4.26a)
Hi Roland,
it is the button with the big "X". Normaly it is greyed out. If you select an imported part, it gets red as shown here (most right side):
.
red-x.png
red-x.png (14.92 KiB) Viewed 1461 times
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.56, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
User avatar
Roland
Posts: 333
Joined: Fri Aug 21, 2015 2:20 pm

Re: Invalid A2+-assembly of valid objects

Post by Roland »

Thanx!
User avatar
Roland
Posts: 333
Joined: Fri Aug 21, 2015 2:20 pm

Re: Invalid A2+-assembly of valid objects

Post by Roland »

Just to confirm, KB,

The Union option does indeed produce valid solids (at least I can confirm this from a few tests up to the second level of assembling).

Good job!

Greetz

Roland
Post Reply