Hello!
I finally found the time to test your changes.
Again using the same freecad file as I have submitted.
Lets start with
Issue 2)
The problem has been fixed as long as I lock one object (in this case the plate) in position (with the lock constraint).
Then the solver will find a solution for the angle contraint (in my case 45°).
If one object is not locked, it still fails if I exactly use the situation from the freecad-file provided. There will be no error, but the cylinder does not get rotated against the plate.
Issue 1)
Trying to align the cylinder against the two side faces of the plate still does not work. I have uploaded a screenshot of what happens.
The faces still do not touch.
However, it partially works. If I set an offset != 0, than the cylinder gets an extra offset to the corresponding face. (Additionally to the gap you see on the screenshot). I can imagine that this is related to some radius vs. diameter problem or such.
On top of that the solver does not seem to distinguish between the face-directions. It makes no difference if I select "equal" or "opposite".
I hope that you can reproduce my problems.
Solver Issues
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Be nice to others! Respect the FreeCAD code of conduct!
-
- Posts: 14
- Joined: Thu Dec 01, 2011 10:00 pm
Re: Solver Issues
Hello,
thanks for your feedback. The angle issue is a bit of a mystery. I can reproduce it, but need to investigate further.
the cylinder-plane alignment actually does work correctly, it just gives not the expected result. This problem has two valid solutions, and you get the unwanted one. (Imagine the faces as infinite planes, then you see it's correct). However, as the starting point is way closer to the other solution it should have found this one first. I will investigate why this is not the case.
thanks for your feedback. The angle issue is a bit of a mystery. I can reproduce it, but need to investigate further.
the cylinder-plane alignment actually does work correctly, it just gives not the expected result. This problem has two valid solutions, and you get the unwanted one. (Imagine the faces as infinite planes, then you see it's correct). However, as the starting point is way closer to the other solution it should have found this one first. I will investigate why this is not the case.
Re: Solver Issues
Hello Stefan.ickby wrote:Hello,
thanks for your feedback. The angle issue is a bit of a mystery. I can reproduce it, but need to investigate further.
the cylinder-plane alignment actually does work correctly, it just gives not the expected result. This problem has two valid solutions, and you get the unwanted one. (Imagine the faces as infinite planes, then you see it's correct). However, as the starting point is way closer to the other solution it should have found this one first. I will investigate why this is not the case.
FYI, in Solidworks 3D, if alignment (for example tangential) leads to two possible results, you get a check box where you can decide which solution you want.
Roland
Deutsche FreeCAD Tutorials auf Youtube
My GrabCAD FreeCAD-Projects
FreeCAD lessons for beginners in english
Native german speaker - so apologies for my english, no offense intended
My GrabCAD FreeCAD-Projects
FreeCAD lessons for beginners in english
Native german speaker - so apologies for my english, no offense intended
-
- Posts: 14
- Joined: Thu Dec 01, 2011 10:00 pm
Re: Solver Issues
Thanks für the eye-opener! Visual sensation has a big impact on one's own plausibillity...ickby wrote:This problem has two valid solutions, and you get the unwanted one.
Anyways. If both constraints are just set to "parallel", then there are even four possible solutions. However, it usually converges to the solution shown in the picture, no matter of what starting conditions I provide.
This ambiguity should be solveable by applying the right face normals. If I would set both contraints to be "equal", then the solver actually should move the cylinder inside the plate.
I tried this and it gets even more strange: If I set one of the alignment-contraints to be "equal", then the cylinder will rotate such that the cylinder's axis will be parallel to the plate.
In this case the highlighted contraint is also the one beeing set to "equal".