[PR] Sketcher Solver Improvements

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

[PR] Sketcher Solver Improvements

Postby abdullah » Wed Apr 25, 2018 12:20 pm

I posted here:
https://forum.freecadweb.org/viewtopic. ... 17#p229548

and maybe it got a little bit unnoticed.

I am looking for volunteers to test this branch against the bugs of the GCS project in the tracker:
https://freecadweb.org/tracker/view_all_bug_page.php

I am also looking for volunteers to run it in a small project and see if any unexpected solver issue arises (detection of redundants)...

I think it would be great to test it before merging, as there may still be room for further improvements.

EDIT: Fixes (so far):
#3434
#1557
#2797 (the remaining part, i.e. the not notification of the redundancy)

Probably the fix for (reporter notified for feedback):
#2342
#3223
Last edited by abdullah on Sun Apr 29, 2018 5:49 am, edited 5 times in total.
User avatar
sgrogan
Posts: 5201
Joined: Wed Oct 22, 2014 5:02 pm

Re: [request for testing] Sketcher Solver Improvements

Postby sgrogan » Wed Apr 25, 2018 10:08 pm

abdullah wrote:
Wed Apr 25, 2018 12:20 pm
I am looking for volunteers to test this branch against the bugs of the GCS project in the tracker:
https://freecadweb.org/tracker/view_all_bug_page.php
I am getting a build failure on windows

Code: Select all

1>c:\users\chris\desktop\fclibs_vc12_x64\freecadlibs_11.10a_x64_vc12\include\eigen3\eigen\src/Core/Matrix.h(277): error C2338: YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY
1>          C:\Users\Chris\GitHub\FreeCAD\src\Mod\Sketcher\App\planegcs\GCS.cpp(3874) : see reference to function template instantiation 'Eigen::Matrix<long,1,-1,1,1,-1>::Matrix<Derived>(const Eigen::MatrixBase<Derived> &)' being compiled
1>          with
1>          [
1>              Derived=Eigen::Matrix<__int64,1,-1,1,1,-1>
1>          ]
1>          C:\Users\Chris\GitHub\FreeCAD\src\Mod\Sketcher\App\planegcs\GCS.cpp(3874) : see reference to function template instantiation 'Eigen::Matrix<long,1,-1,1,1,-1>::Matrix<Derived>(const Eigen::MatrixBase<Derived> &)' being compiled
1>          with
1>          [
1>              Derived=Eigen::Matrix<__int64,1,-1,1,1,-1>
1>          ]
Do I need to update Eigen3, I think I have 3.2.5.
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

Re: [request for testing] Sketcher Solver Improvements

Postby abdullah » Thu Apr 26, 2018 1:54 pm

sgrogan wrote:
Wed Apr 25, 2018 10:08 pm
abdullah wrote:
Wed Apr 25, 2018 12:20 pm
I am looking for volunteers to test this branch against the bugs of the GCS project in the tracker:
https://freecadweb.org/tracker/view_all_bug_page.php
I am getting a build failure on windows

Code: Select all

1>c:\users\chris\desktop\fclibs_vc12_x64\freecadlibs_11.10a_x64_vc12\include\eigen3\eigen\src/Core/Matrix.h(277): error C2338: YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY
1>          C:\Users\Chris\GitHub\FreeCAD\src\Mod\Sketcher\App\planegcs\GCS.cpp(3874) : see reference to function template instantiation 'Eigen::Matrix<long,1,-1,1,1,-1>::Matrix<Derived>(const Eigen::MatrixBase<Derived> &)' being compiled
1>          with
1>          [
1>              Derived=Eigen::Matrix<__int64,1,-1,1,1,-1>
1>          ]
1>          C:\Users\Chris\GitHub\FreeCAD\src\Mod\Sketcher\App\planegcs\GCS.cpp(3874) : see reference to function template instantiation 'Eigen::Matrix<long,1,-1,1,1,-1>::Matrix<Derived>(const Eigen::MatrixBase<Derived> &)' being compiled
1>          with
1>          [
1>              Derived=Eigen::Matrix<__int64,1,-1,1,1,-1>
1>          ]
Do I need to update Eigen3, I think I have 3.2.5.
I am using 3.3.4, but I have to make it work with earlier versions. Do not update it. I will try to figure out what is happening.
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

Re: [request for testing] Sketcher Solver Improvements

Postby abdullah » Thu Apr 26, 2018 2:27 pm

sgrogan wrote:
Wed Apr 25, 2018 10:08 pm
I am getting a build failure on windows
I have pushed an additional commit. There were some left-overs from development. A type was fixed to be long int, while Windows 64 uses __int64.

I cannot test it, but It should compile now ;)
User avatar
sgrogan
Posts: 5201
Joined: Wed Oct 22, 2014 5:02 pm

Re: [request for testing] Sketcher Solver Improvements

Postby sgrogan » Thu Apr 26, 2018 9:40 pm

abdullah wrote:
Thu Apr 26, 2018 2:27 pm
I cannot test it, but It should compile now ;)
That's the ticket!
https://github.com/sgrogan/FreeCAD/rele ... /redundant
Your branch name is a mouth full ;)
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

Re: [request for testing] Sketcher Solver Improvements

Postby abdullah » Fri Apr 27, 2018 4:28 am

sgrogan wrote:
Thu Apr 26, 2018 9:40 pm
abdullah wrote:
Thu Apr 26, 2018 2:27 pm
I cannot test it, but It should compile now ;)
That's the ticket!
https://github.com/sgrogan/FreeCAD/rele ... /redundant
Thank you!! Now Windows users have no excuse to participate in the testing:
https://forum.freecadweb.org/viewtopic. ... 17#p229548

While testing, you can also give some feedback on the DoF finder (the solver messages saying the DoF are a hyperlink that selects the elements contributing to the DoFs).

Today I think I will have some time, maybe I try to use realthunder's script to generate ubuntu builds...
sgrogan wrote:
Thu Apr 26, 2018 9:40 pm
Your branch name is a mouth full ;)
Indeed. I have very bad memory. I need something very descriptive. It is also good, given that the Sketcher DoF finder, as in the PR will not make it into master, as we have just discovered it does not compile with MSC, maybe what is finally merged is this branch that is built on top of it...
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

Re: [request for testing] Sketcher Solver Improvements

Postby abdullah » Fri Apr 27, 2018 6:09 am

This a first effort of an appimage using realthunder's script:
https://github.com/abdullahtahiriyo/Fre ... 0.11-alpha

I am a total newbie to Appimage and I ran into some issues while building it, so tell me if it does not work. :)

Edit: Updated appimage
Last edited by abdullah on Fri Apr 27, 2018 7:16 pm, edited 1 time in total.
chrisb
Posts: 16831
Joined: Tue Mar 17, 2015 9:14 am

Re: [request for testing] Sketcher Solver Improvements

Postby chrisb » Fri Apr 27, 2018 6:55 am

abdullah wrote:
Fri Apr 27, 2018 4:28 am
Thank you!! Now Windows users have no excuse to participate in the testing:
I would rather say that Windows users have no excuse to not participate in the testing :lol:
abdullah wrote:
Fri Apr 27, 2018 6:09 am
I am a total newbie to Appimage and I ran into some issues while building it, so tell me if it does not work. :)
Thank you very much! Will test right away.
chrisb
Posts: 16831
Joined: Tue Mar 17, 2015 9:14 am

Re: [request for testing] Sketcher Solver Improvements

Postby chrisb » Fri Apr 27, 2018 7:05 am

AppImage runs, First redundancy test was successful. More later.

Thanks!
abdullah
Posts: 3174
Joined: Sun May 04, 2014 3:16 pm

Re: [request for testing] Sketcher Solver Improvements

Postby abdullah » Fri Apr 27, 2018 8:51 am

chrisb wrote:
Fri Apr 27, 2018 6:55 am
abdullah wrote:
Fri Apr 27, 2018 4:28 am
Thank you!! Now Windows users have no excuse to participate in the testing:
I would rather say that Windows users have no excuse to not participate in the testing :lol:
:lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol:
chrisb wrote:
Fri Apr 27, 2018 6:55 am
abdullah wrote:
Fri Apr 27, 2018 6:09 am
I am a total newbie to Appimage and I ran into some issues while building it, so tell me if it does not work. :)
Thank you very much! Will test right away.

AppImage runs, First redundancy test was successful. More later.
Good to know!

realthunder did a good job with that script. I did not know it this morning, but you just indicate which branch from which repo, and it does not even matter if it is your repo or not. The thing clones the repo and makes the package. You do need some disk space for the whole thing, I think it took more than 2.5 GB. But that is it.

If you run GCS tickets, it would be great to known which ones are solved and which ones were tested but not solved. This way I can concentrate in the ones that are not solved. :)

Thanks for testing :)