status of Assembly2

Discussion about the development of the Assembly workbench.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
kcleung
Posts: 162
Joined: Sun Apr 24, 2011 11:56 am

status of Assembly2

Post by kcleung »

There is more than a month of complete silence in this forum subdirectory. Just wonder what is the current functionality of assembly2 branch?

Previously, Jürgen stated that there are some "fundamental data structure" that needs to be changed in order to consolidate assembly2 with trunk. Just wonder is this done yet? If not, then how much work does it take to get this done?
User avatar
jriegel
Founder
Posts: 3369
Joined: Sun Feb 15, 2009 5:29 pm
Location: Ulm, Germany
Contact:

Re: status of Assembly2

Post by jriegel »

Its done when its done....
Stop whining - start coding!
kcleung
Posts: 162
Joined: Sun Apr 24, 2011 11:56 am

Re: status of Assembly2

Post by kcleung »

jriegel wrote:Its done when its done....
Everyone knows "its done when its done", but the questions are all related at the *current* time point:

* what works and doesn't work in assembly2
* the progress of the change of the "fundamental data structure" that are required for integration of assembly2, and what needs to be done. Also where is the original structure documented and what needs to be added/changed?
User avatar
jriegel
Founder
Posts: 3369
Joined: Sun Feb 15, 2009 5:29 pm
Location: Ulm, Germany
Contact:

Re: status of Assembly2

Post by jriegel »

The data-structures is finished so far.
There is now a App::Part object which deal with all kind of groups qualify as a "Part" in some sense.
Also the reference part objects are there. That means the document can be a directed acyclic graph of objects, which have a lot of collateral damage in the rest of FreeCAD.

At the moment I'm dealing mostly with getting PartDesign with the Body object up and running. In parallel I implementing (partially) the STEP and OpenJt import to check the new structure of the data-model against the most common product data models.

PartDesign is still a bit tricky since it has to deal with all kind of old PartDesign models and transit it to the new structure (Body/Part). Jreinlaender did a great job, but that has to be tuned to the new assembly structure, especially the Part metaphor. A subproblem of this is handling state in the editor. e.g. active Body and active Part.

Also the solver is deactivated at the moment. But as I saw, ickby works on a new one anyway.

The next will be to make the selection fit for graph selection. Also all kind of tools has to be checked, since now object in FreeCAD will have no absolute positions anymore. All position will be relative. There will be tools to calculate this relativity, but one has to use it.

The multi model and project stuff is postponed until I have more time....
Stop whining - start coding!
User avatar
shoogen
Veteran
Posts: 2823
Joined: Thu Dec 01, 2011 5:24 pm

Re: status of Assembly2

Post by shoogen »

jriegel wrote:The data-structures is finished so far.
There is now a App::Part object which deal with all kind of groups qualify as a "Part" in some sense.
Also the reference part objects are there. That means the document can be a directed acyclic graph of objects, which have a lot of collateral damage in the rest of FreeCAD.
Can you give some advice where to start reading the code.
User avatar
jriegel
Founder
Posts: 3369
Joined: Sun Feb 15, 2009 5:29 pm
Location: Ulm, Germany
Contact:

Re: status of Assembly2

Post by jriegel »

Mhhh,
best to look for my commits in the log, since the changes are vastly scatered all over FreeCAD. The import stuff is in Import (STEP) and JtReader (JT).

At the moment I mostly try to get the PartDesign up and running again..
Stop whining - start coding!
jmaustpc
Veteran
Posts: 11207
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: status of Assembly2

Post by jmaustpc »

Hi Juergen

PartDesign is working for me, with some bugs, which I can explain if you want me to? For example if I go to PartDesign WB then create a new document I get a pop up error message

No body was found in this document, and none could be created. Please report this bug.We recommend you do not use this document with the PartDesign workbench until the bug has been fixed

I click "OK" and a new document gets created complete with a Body, plains, etc. ...and then PartDesign seems to work for the few thing I tried.

Do you want to know at this time that Assembly WB will not start for me? When I switch to Assembly wb I get an error message

my build directory ..../Mod/Assembly/Assembly.so: undefined symbol: _ZN3dcm6KernelIdNS_6DoglegEE6isSameEddd

OS: Ubuntu 14.04.1 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.15.4401 +400 (Git)
Branch: jriegel/dev-assembly2
Hash: e7137190874ea5f101af6b996c3af6fe9a898a0e
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.7.1.oce-0.17-dev


Anyway, let me know when you are ready for me to start serious testing in Kubuntu and I will do so. :)

Jim
User avatar
jriegel
Founder
Posts: 3369
Joined: Sun Feb 15, 2009 5:29 pm
Location: Ulm, Germany
Contact:

Re: status of Assembly2

Post by jriegel »

I moved the default planes from Body to Part, so there are some adjustments to do till it works again...
Stop whining - start coding!
bartox
Posts: 1
Joined: Fri Apr 03, 2015 12:52 am

Assembly modeling based STEP's product data structure model

Post by bartox »

Hi all,

I honestly don't know if this is useful or a waste of time (but I hope the former)..

I have some C++ code that I wrote back 15 years ago during my PhD research, for a knowledge-based parametric CAD program. The CAD functionality in my code never got very far at all but I did manage to build demonstration that handles a pretty flexible product data structure (think manipulable product tree like in CATIA) which is based upon the EXPRESS data modeling language.

My demo program implemented a few of the primitive geometric types in AP 203 (point, line, poly_loop, face_bound, face) and the user could read/write them to STEP files as well as edit their parameters in the software. The program had a simple 3D interface based on OpenGL calls to display the model.

I'd be happy to donate my code to this very worthwhile project (FreeCAD is awesome BTW!). If anybody thinks it would be useful, please contact me and let me know the best way to share my code with you.

Best regards,
Andrew
dmytty
Posts: 2
Joined: Wed Mar 18, 2015 7:25 pm

Re: Assembly modeling based STEP's product data structure mo

Post by dmytty »

bartox wrote:Hi all,

I honestly don't know if this is useful or a waste of time (but I hope the former)..

I have some C++ code that I wrote back 15 years ago during my PhD research, for a knowledge-based parametric CAD program. The CAD functionality in my code never got very far at all but I did manage to build demonstration that handles a pretty flexible product data structure (think manipulable product tree like in CATIA) which is based upon the EXPRESS data modeling language.

My demo program implemented a few of the primitive geometric types in AP 203 (point, line, poly_loop, face_bound, face) and the user could read/write them to STEP files as well as edit their parameters in the software. The program had a simple 3D interface based on OpenGL calls to display the model.

I'd be happy to donate my code to this very worthwhile project (FreeCAD is awesome BTW!). If anybody thinks it would be useful, please contact me and let me know the best way to share my code with you.

Best regards,
Andrew
Geometry manipulation and assemblies is an 'enabling' element for 3D parametric CAD - it would be a major milestone for FOSS. I hope you find the time to familiarize yourself with the inner workings and contribute your code and expertise.

FreeCAD is awesome but ... it requires more awesome programmers (which I am not).
Post Reply