name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
wsteffe
Posts: 143
Joined: Thu Aug 21, 2014 8:17 pm

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby wsteffe » Tue Mar 26, 2019 3:07 pm

Jee-Bee wrote:
Tue Mar 26, 2019 2:44 pm
it's not against you as it sound maybe that way. It is just last few weeks there are a lot of (new) users complaining that it is all crap.
I know that it is not against me and I do not think that is all bad.
Having came back to try FreeCAD after many years and I have seen that a lot of progress and I think it is not very far from my needs.
There are anyway important thing to be addressed and I think that abdullah have done a good synthesis which I consider as a starting point for further discussions. Some of these problems may not have a solution in the near term. But you may not know if you do not put them on the table.
Jee-Bee
Posts: 1957
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby Jee-Bee » Tue Mar 26, 2019 3:24 pm

I think FC needs at first sombody who is able/ and is interested in starting developing.

If user "a" starts programming for part design he OR she starts with the problems he walk against.what could better and in which way. At that moment a discussion starts.
If we start discussion without anybody interested and at some moment there is a kind of agreement. after that a programmer is found he OR she has to read 50 pages this, that etc. now there i think two reactions 1) programmer read everything and quit. 2) read a part thinks i don't care we shall see, starts and the discussion starts over again...
User avatar
Zolko
Posts: 390
Joined: Mon Dec 17, 2018 10:02 am

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby Zolko » Tue Mar 26, 2019 3:30 pm

abdullah wrote:
Tue Mar 26, 2019 1:08 pm
a) a real assembly infraestructure
I guess you refer to integrated
no, I refer to linking, as opposed to copying.

Today Werner is the sole software architect of FreeCAD. He and he alone greenlights what is to be merged in the "core" of FreeCAD. Personally I am very comfortable with this because he has demonstrated to be awesome at it
...
2. duplication of incompatible functionalities
so he approved the merging of PartDesign::Pad when Part::Extrusion already existed ?

First an agreement that there is such a duplication of incompatible functionalities shall be agreed.
what do you mean ? In the same file, make a part, make a body, make a sketch, and in the part make an extrusion and in the body make a pad, both based on the same sketch, and observe. There is nothing to disagree upon.

Then if there are developers working on those workbenches they should be contacted.
...
Unless ickby comes back, there is no developer assigned there.
you mean I should contact a person of whom you tell me he's not available to be contacted ? Is this supposed to be funny ? Or helpful ?

4. based on obsolete libraries (Coin3D)
...
I do not actually know how to solve this.
ah, because you feel you did actually address the previous points ?

Zolko wrote:
Tue Mar 26, 2019 12:30 pm
If you want a real (semi-)professional CAD system look elsewhere.
Ah! You intended "toy" as a disdain!!
no, I intended "toy" as opposed to "can be used for working professionally like other major CAD software"

What is professional?
If you don't know I can't explain it on a forum.

... or start coding...
like the Assembly 4 workbench I did ? Or the coordinate system that I integrated into FreeCAD ? Good that you tell me, I might not have though about it. May-be the FreeCAD "developers" should get off their high horses and start acknowledging that there are some problems with FreeCAD, and burying their head in the sand won't make those problems go away. People posting here wouldn't loose their time if they thought FreeCAD was entirely crap, but that doesn't mean that it can't be improved. There is a whole world between "perfect" and "crap".
try the Assembly4 workbench for FreCAD v0.19
installable with Tools > Addon Manager, new version 0.7. Simple tutorial here
wsteffe
Posts: 143
Joined: Thu Aug 21, 2014 8:17 pm

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby wsteffe » Tue Mar 26, 2019 3:44 pm

abdullah wrote:
Tue Mar 26, 2019 3:01 pm
If I need it badly I may consider trying to fix it and contributing the patch.
This is a possibility but FreeCAD is a very complex software and I suspecty that a long training would be required before being able to contribute to it. I do not consider the paying options because my project is not funded by anybody. I am still convinced that in the end, despite all apparently different point of view expressed in the posts, all of us want the same thing: a good FreeCAD code that may work well in many usage cases.

Regarding the problem on your list, I think that there may be strong agreement on the need to solve them. Perhaps there is more than one way to do that but I do not think there are too many so I think that also an agrement on a proposed solution could be easily found. The main problem that I see in the FreeCAD project is that there are very many developers working hard on separate code parts (which is good) but spending little (or no) time to coordinate their works and to agree on a shared roadmap.

The difficulty in having a constructive discussion between wmayer and realthunder on the merits and drawback of LinkStage3 is a clear example of the communication problem affecting the FC project.
User avatar
bernd
Posts: 8414
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby bernd » Tue Mar 26, 2019 3:56 pm

wsteffe wrote:
Tue Mar 26, 2019 3:44 pm
The main problem that I see in the FreeCAD project is that there are very many developers working hard on separate code parts (which is good) but spending little (or no) time to coordinate their works and to agree on a shared roadmap.
Inside FEM we do agree to each other and we surely do coordinate work, but we are only a few. I contribute a lot to FreeCAD, but I do not contribute a lot to the core. May be the main problem is FreeCAD is growing and growing and growing which is good but which makes things more difficult because a lot more people are involved.
wsteffe
Posts: 143
Joined: Thu Aug 21, 2014 8:17 pm

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby wsteffe » Tue Mar 26, 2019 4:17 pm

Jee-Bee wrote:
Tue Mar 26, 2019 3:24 pm
I think FC needs at first sombody who is able/ and is interested in starting developing.
But there are several developers working on FC project.

In a typical software project the problems on the table should be assigned to the available developers according to the priority assigned to the problems and the specific competences of developers.
Let in example consider the problem related with the orphanbed Part Design. I think this task should have the highest priority because Part Design is a key component of the FC architecture. If nobody is available, that means that in the FC team there is'nt any active developer having the competences required by this task (probably C++ programming, knowledge of OCC library.. ).

Is it this the problem you are facing ?
Jee-Bee
Posts: 1957
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby Jee-Bee » Tue Mar 26, 2019 4:36 pm

Zolko wrote:
Tue Mar 26, 2019 3:30 pm
so he approved the merging of PartDesign::Pad when Part::Extrusion already existed ?

...

what do you mean ? In the same file, make a part, make a body, make a sketch, and in the part make an extrusion and in the body make a pad, both based on the same sketch, and observe. There is nothing to disagree upon.
make top of both extrudes a new extrude. Since you refer to two different surfaces you have to create it twice.. and see the result.
Another thing to try out. use a non closed sketch for extrusions
As i think us are used to part design approach you expect the same in part which isn't true.
Just play an evening with part then you the different workflows and different methods from both workbenches a bit better.
Jee-Bee
Posts: 1957
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby Jee-Bee » Tue Mar 26, 2019 4:42 pm

wsteffe wrote:
Tue Mar 26, 2019 4:17 pm
But there are several developers working on FC project.
@wmayer i don't know but he does tons of small fixes and check code quality etc
@Bernd is structural guy and program mostly for FEM.
@Yorik is architect and does arch and draft
@mlampert is cnc i think together with @sliptonic
@abdullah i have no clue but he does sketcher.
Some do only compiling.
...etc etc
User avatar
easyw-fc
Posts: 2663
Joined: Thu Jul 09, 2015 9:34 am

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby easyw-fc » Tue Mar 26, 2019 9:17 pm

Zolko wrote:
Tue Mar 26, 2019 3:30 pm
like the Assembly 4 workbench I did ? Or the coordinate system that I integrated into FreeCAD ? Good that you tell me, I might not have though about it. May-be the FreeCAD "developers" should get off their high horses and start acknowledging that there are some problems with FreeCAD, and burying their head in the sand won't make those problems go away. People posting here wouldn't loose their time if they thought FreeCAD was entirely crap, but that doesn't mean that it can't be improved. There is a whole world between "perfect" and "crap".
As @Normandc already quoted @sliptonic in an other thread, I would suggest you to read many times the quoted text and reflect on your attitude toward this forum users and FC developers...
NormandC wrote:
Fri Mar 01, 2019 4:15 am
Here's an old reply by sliptonic I bookmarked which I very much liked and which is relevant here:
sliptonic wrote:
Fri Sep 14, 2018 8:19 pm
The developers here are all volunteers, working on whatever they want to work on. Mostly they want a great application that meets their own needs and they're willing to cooperate to get it and everybody else benfits from it.

But those developers are often put in a no-win situation. If they spend time polishing existing features, they're attacked for being slow to introduce new stuff. If they introduce lots of new stuff, people like you come by and blast them for not polishing it. They do what any sane person would do who isn't being paid for their time and effort. They listen to those that are helping out.

You're fundamentally misunderstanding the nature of open-source software. Much of the code-base, including many of the very features you are 'complaining in a way that annoys people' about, was written by developers that have long since left the project. If someone doesn't step in and pick it up, it won't get fixed. Either you can do that work and won't, or you can't do it at all. Either way, complaining about it doesn't 'prod the bears' to do it for you. It just pisses them off.
wmayer
Site Admin
Posts: 14882
Joined: Thu Feb 19, 2009 10:32 am

Re: name FreeCAD 0.91 instead of 0.20, means version after 0.19 could be 0.91

Postby wmayer » Tue Mar 26, 2019 9:38 pm

Zolko wrote:this can be felt: Part and PartDesign — which are the fundamental building-blocks of a CAD system — are broken. Releasing a 1.0 version with such a situation would be close to lying.
That's an absolute exaggeration!
The Part workbench was there before PartDesign and was implemented as a general purpose system. The PartDesign workbench was then implemented on top of Part with a more streamlined workflow in mind. It adds a lot of automatisms but also restrictions compared to the Part workbench. And because it is more restrictive it's automatically inconsistent in a certain way. So, things are in no way broken.

And the users were always discouraged to mix up Part and Part Designs functions too much. In the future we will have to see what to do with the Part workbench once the PartDesign offers all basic functions. AFAIK JRiegel's plan was to hide it (maybe add an option so that people can re-activate if desired).

Btw, I once had access to a commercial CAD application which consisted of many modules. There it was also possible to model a surface in one module which couldn't be reused in other modules. The application was about 50,000 Euro per license and its name was Catia V5.
Zolko wrote: And the problem is not only that this functionality is limited and broken, but that the process to lead to this situation is also broken: why wasn't this intercepted during merging ? Why wasn't the developer who proposed the 2nd implementation — whichever it was — been told that a similar function already existed, and he should improve that one instead of rewriting a new implementation, with some important features missing ?
Maybe because it was the grand master himself who started the development? At that time it was discussed and agreed to have the more streamlined Part Design functions.
Zolko wrote:What would worry me much more: if PartDesign is indeed orphaned, who knows the code well enough to add those functions to PartDesign ? There are many small things in PartDesign that need to be fixed, who is able to touch that code ?
I wouldn't say it's orphaned. Since the PartDesignNext branch was merged to master I did a lot if bug fixing there and added also a handful of new features. At the time when PartDesign was developed in a separate branch I was not part of this team but in the meantime I understand the code good enough (but for sure not entirely) to add some new features. IMO, the main reason that the PartDesign workbench hasn't evolved much in the last years is that there was no agreement between the involved developers and some pro-users (with a lot of background knowledge from commercial CAD systems) on how certain functions should behave.
Zolko wrote:How did the become the copyright holders ? How are they making decisions ? Where is it documented ?
At the beginning the copyright notice only included Jürgen Riegel. After some years of contribution he decided to add my name too. Then after a few years after Yorik joined and contributed we decided to add him, too. That's the whole history. Until that time there have been only a handful of people who contributed to the project. It was around 2010 when FreeCAD started to become mature enough to do useful things with it. And that was the time when more and more people joined the project.
wsteffe wrote:But this mine is just an other digression from the most important point: The FreeCAD project needs a project leader with a clear vision of the project goals and of the road to get there.
How did the German chancellor Helmut Schmidt once say? People with visions should go to the doctor. :D
wsteffe wrote: So, in conclusion, if the the goal of FreeCAD is to mimic the life evolution it may retain the current numbering scheme (0.18, 0.19 to arrive to 1.0 after a few hundreds of years). But I hope that a person with a clearer vision will emerge (probably trough a fork) and that he will drive (in a reasonable time frame) the FreeCAD code to a point where it may be considered the "production-level software" described by Zolko.
wsteffe wrote:I think that, for visualization purpose, it would be easier to use the V3d_Viewer class which is part of the OpenCascade library instead of relying on an external package like Coin3D or OpenSceneGraph. V3d_Viewer (see https://www.opencascade.com/doc/occt-7. ... iewer.html), together with AIS_InteractiveContext, is designed to work on OCC objects providing also the selection mechanism needed in any CAD environment.
I don't know when you started to work with OCCT. I made my first experiences 20 years ago with version 3.x when it was still a proprietary product and together with JRiegel we were working on an in-house product. At that time the viewer was simply not capable of handling huge data structures, especially meshes with e.g. > 500,000 triangles.
And at the very beginning of FreeCAD we also used this viewer but it turned out that we had to move to something more powerful. We decided to go for Coin3d -- an OpenInventor reimplementation. Alternatives were Coin3d, OpenSG and maybe OpenSceneGraph (I don't remember how mature it was at that time) but Coin3d was the most advanced system at that time.
wsteffe wrote:I really do not understand why the FreeCAD developers wanted to reinvent the wheel (with an unecessary conversion from OCC objects to a different kind of representation) instead of using the visualization tools available in the Opencscade library, which is already linked to and extensively used by the FreeCAD code.
It's rather the other way round. Coin3d offered a lot of more features you never got with OCCT (unless you implemented all this on your own). The one and only advantage of the OCCT viewer over Coin3d I remember was that it had a ready highlighting/selection system. But the effort to get something similar with Coin3d was not that much.
And why do you think that other projects like Salome additionally use the vtk viewer? Because the OCCT viewer was so great?
I think in the meantime the OCCT viewer has improved -- maybe since the developers decided to also use vtk? I don't know.
I can just tell you that in OCC a presentation can be assigned (as an attribute) to a label of the OCAF data structure.
The latter is a tree like structure where each label is associated with an object (in example e body/part/subassembly..) and may
have several attributes.
That was another big limiting factor at that time. Everything was fine as long as you used pre-defined types but as soon as trying to register own types everything became very complicated with an intransparent plugin system. After spending several years without real progress we decided to go our own way with our own document structure and with our own visualization using Coin3d.
wsteffe wrote:It is you (not me) which departed from a constructive discussion by saying that you do not care about the CAD market needs because you and most other FreeCAD developers are just coding for their personal fun.
Look at the title of this thread. It is about the version numbering of future releases which was kept in a friendly and constructive manner until Zolko and you joined it. It was mainly you both who have turned the whole discussion in a destructive manner full of subliminal accusations and debasing attributes. Now you got a reply in the same manner and you start to complain about this. Sorry, but this is simply childish behaviour.
wsteffe wrote: I just would like to see a faster progress and I expressed my thought that a clear and shared vision of what the FreeCAD architecture is supposed to be would help this process.
When looking at the history of EmCAD then you haven't contributed to it for more than 3 years. So enough time to have participated here in a constructive manner if things don't go fast enough for you.

Btw, have you ever worked on an open-source with more people involved than yourself? Do you really think you can force people to work on certain areas they don't really understand/need/whatsoever? Once you start with this you cannot look fast enough and a community project turns back into a one-man show.
So, you have to be happy with the people who join and offer their spare time to work on functions they want to see improved. If you want professional structures then at some point you have to pay the people.
Zolko wrote:so he approved the merging of PartDesign::Pad when Part::Extrusion already existed ?
No. There was the old PartDesign that was done by JRiegel. Starting at around 2012 its successor PartDesignNext was done in a separate branch developed by a handful of people. Before it was ready JRiegel left the project and the code was orphaned until ickby decided to rebase it. I then merged the reworked branch which was a consensus decision.
wsteffe wrote:The difficulty in having a constructive discussion between wmayer and realthunder on the merits and drawback of LinkStage3 is a clear example of the communication problem affecting the FC project.
Realthunder asked me exactly once to have a look at the Assembly stuff. And I also started to have a quick look on the code but then I was forced to stop it again because a more important issue emerged: many Linux distributions started to kick out Qt4 from their repositories and all dependent projects too. So, I decided to push forward the Qt5 migration and also continue with the Python3 port as maintenance of Python2 will stop in foreseeable future.
And seriously what else do you expect from me? I have to check the majority of PRs, fix bugs listed in our bug tracker, make sure that FreeCAD compiles on a wide range of different platforms with different versions of libraries, participate on several development discussion, help newcomers to get their things done who use the FreeCAD API, look through the results of code checkers regularly offered by saso to improve code quality, ... while for several years I have nearly no time any more to implement the stuff that I am interested in.

So, I don't have the time to also go in parallel through a huge PR with from what I have read more than 100,000 lines of code changes.