Yes, it's fixed now. Thanks.realthunder wrote: ↑Tue May 12, 2020 2:09 pm Thanks for reporting. It has been fixed. Please try the latest image.
Assembly3 preview
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Be nice to others! Respect the FreeCAD code of conduct!
Re: Assembly3 preview
Re: Assembly3 preview
Thanks! I managed to remove all inconsistent and redundant constraints. Need to have a deeper look why some constraints are marked as redundant and fix that.realthunder wrote: ↑Sun May 10, 2020 11:47 pmYou don't need to delete the constraint, just disable it. Right click the constraint in the tree and select disable. You can limit the solving to the selected assembly by disabling the 'AutoSolve' option, and select the sub-assembly (or any of its children) and then click the 'Solve' button manually. Not the 'QuickSolve', but a full 'Solve' will give you more diagnostic information in the report view. Make sure you don't see the 'Redundant constraint' warning to avoid future inconsistent constraint error.cos4 wrote: ↑Sun May 10, 2020 9:33 pm I'm using Assembly3 now for a while to assemble my new 3D-Printer. The only issue I have is that while the assembly gets more and more complex with sometimes having to modify sub-assemblies again I get frequent problems with "inconsistent contraints". Do you have any recommendations on how to identify what is causing the problem other than deleting constraints and checking when the solver can solve the assembly again?
Would be nice if you could select multiple constraints and en-/disable them as a batch for such procedures.
Does the "freezing" of a subassembly prevent the it's constraints from being solved? Or put differently is it viable to freeze all sub-assemblies to check if the a constraint issue is originating from a constraint in a sub-assembly?
Re: Assembly3 preview
I encountered another issue with the asm3 branch when opening a document created with the standard FC version. The attached file was created by the standard version of FC 0.19 (last saved with FC-0.19-21007). The file was stripped down from a larger project, so that it can be uploaded here. When opening the file with the asm3 version the Sketch007 loses its external references to Sketch006:
Opening the same file in the standard version of FC does not show the problem.
When using external references I try to reference only sketches but not edges generated by the OCC kernel, because I think that the IDs used in sketches are under control of FC and thus not subject of sudden change. I wonder why the asm3 branch fails in restoring those "easier" references while it does a pretty good job in restoring references to OCC generated edges or face.
OS: macOS High Sierra (10.13)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.20886 +2256 (Git)
Build type: Release
Branch: LinkStage3
Hash: 330e59cb5ce14d465934dad1df07a0a0d9a5248c
Python version: 3.7.6
Qt version: 5.12.1
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/Germany (en_DE)
Code: Select all
6e-08 <App> Document.cpp(3032): Failed to restore sketch_reference_test#Sketch007: Failed to restore external geometry
When using external references I try to reference only sketches but not edges generated by the OCC kernel, because I think that the IDs used in sketches are under control of FC and thus not subject of sudden change. I wonder why the asm3 branch fails in restoring those "easier" references while it does a pretty good job in restoring references to OCC generated edges or face.
OS: macOS High Sierra (10.13)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.20886 +2256 (Git)
Build type: Release
Branch: LinkStage3
Hash: 330e59cb5ce14d465934dad1df07a0a0d9a5248c
Python version: 3.7.6
Qt version: 5.12.1
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/Germany (en_DE)
- Attachments
-
- sketch_reference_test.FCStd
- (208.71 KiB) Downloaded 46 times
-
- Veteran
- Posts: 2190
- Joined: Tue Jan 03, 2017 10:55 am
Re: Assembly3 preview
The error occurs because that sketch somehow has duplicated reference to the same external geometry. It does not seem to cause any harm however, so I will relax the migration check, and you'll only see a warning message.
There are major changes in the way geometries are named and referenced in sketch. In fact the whole development of topo naming in my fork starts with refactoring sketch geometry naming and referencing.tom wrote: ↑Tue May 12, 2020 10:07 pm When using external references I try to reference only sketches but not edges generated by the OCC kernel, because I think that the IDs used in sketches are under control of FC and thus not subject of sudden change. I wonder why the asm3 branch fails in restoring those "easier" references while it does a pretty good job in restoring references to OCC generated edges or face.
-
- Veteran
- Posts: 2190
- Joined: Tue Jan 03, 2017 10:55 am
Re: Assembly3 preview
Will do in the future
Freezing is for a different purpose, although yes it does prevent solving. However, the sub-assembly is only solved if it is touched. By following the the assembly with the exclamation mark you can easily find the deepest sub-assembly that is causing the problem. Any deeper sub-assemblies are just fine.Does the "freezing" of a subassembly prevent the it's constraints from being solved? Or put differently is it viable to freeze all sub-assemblies to check if the a constraint issue is originating from a constraint in a sub-assembly?
Re: Assembly3 preview
Hello,
I wanted to use Asm3 to answer a question of animating a sketch on the French forum.
I built my sketches in different bodies, then moved it all into an assembly container as usual, like for solids. Everything works, including for mouse animation with AxialMove.
However when I use my macro to animate automatically, the calculations take place, but the result is only displayed at the end. I tested on another of my assemblies and it works!
Do not understand !!!!!!!
- Attachments
-
- Asm3BiellMani.FCStd
- (45.85 KiB) Downloaded 78 times
-
- anim_asm3biellmani.py
- (387 Bytes) Downloaded 72 times
My website : http://help-freecad-jpg87.fr updated 2023/11/06
-
- Veteran
- Posts: 2190
- Joined: Tue Jan 03, 2017 10:55 am
Re: Assembly3 preview
Re: Assembly3 preview
Thank you. It's OK.
I don't understand why my other mechanisms worked without this line.
My website : http://help-freecad-jpg87.fr updated 2023/11/06
Re: Assembly3 preview
I think, the duplicated reference was caused by saving the document in the asm3 version and then going back to the standard version of FC (same root cause as in the invalid group issue). It would really help to relax the migration check for this case, because probably other users are also switching between the two FC versions as long as the asm3 version is not merged with the standard version. Not breaking the models, when switching between the FC versions, would be very appreciated.realthunder wrote: ↑Wed May 13, 2020 2:33 am The error occurs because that sketch somehow has duplicated reference to the same external geometry. It does not seem to cause any harm however, so I will relax the migration check, and you'll only see a warning message.
Re: Assembly3 preview
Hello @realthunder,
Topological naming is absolutely great and a must have feature, still I'd like to whether there is or will be a possibility - in your FC fork - to reference things more dynamically similar to what can be done in CadQuery: https://pythonhosted.org/cadquery/selectors.html
I often (try) to make enclosures for various electronic boards in FC and a functionality to e.g. select top most point of a board and use it to create working plane representing roof of an inside space in an enclosure would come handy. Does this make sense?
Topological naming is absolutely great and a must have feature, still I'd like to whether there is or will be a possibility - in your FC fork - to reference things more dynamically similar to what can be done in CadQuery: https://pythonhosted.org/cadquery/selectors.html
I often (try) to make enclosures for various electronic boards in FC and a functionality to e.g. select top most point of a board and use it to create working plane representing roof of an inside space in an enclosure would come handy. Does this make sense?