A New Era for Mechanical CAD - a "Commit to Memory" article

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!
chrisb
Veteran
Posts: 53922
Joined: Tue Mar 17, 2015 9:14 am

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by chrisb »

Zolko wrote: Sun Nov 28, 2021 2:17 pm Isn't this what App::Link does ?
Exactly.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
-alex-
Veteran
Posts: 1856
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by -alex- »

user1234 wrote: Sat Nov 27, 2021 9:31 pm Pretty ever point in the article is seen from a geek point, but not from RL working.
+ 1
The hardware industry is desperate for a modern way to do mechanical design.
Nowaday mecanical CAD already allow to design a lot of stuffs pretty easily, if users are quite skilled. My opinion : trust in users, trust in human being skills, just a little bit.
A new CAD program created for the modern world would lower the barrier to building hardware, decrease the time of development, and usher in a new era of building
The earth is already full of wastes, speed up again the design workflow of hardware goods is not needed IMO. That's fine as is.
User avatar
onekk
Veteran
Posts: 6144
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by onekk »

But CAD code are done by programmers, not users.

What innovation do you pretend if math is driving something?

Maybe never formulas, oculd be of some help, but for calculating what?

In the past there were no graphics card faster enough to do calculations, for what many older CAD have his own graphics hardware, simply to pass some drawing code to the graphics hardware and to use CPU to make calculation.

Now every graphics card has enough power, sadly these are integrated to "crunch triangles" as the underlying technology is using "mesh like" objects with "triangular facets" so if the cad is using some more exotic, like OCCT are using, there were be everytime a translation to meshes.

OCCT (and I think many other CAD engines) could create surfaces done by an arbitrary number of edges and also with edges that not necessarily are lines, so some mismatch from the "3d model" and the "visualization model" is the normality.

The problem is not easily solved as there will ever be a translation from "3d solids" and " triangular faceted models".

Maybe if the computing industry will adopt a different standard (very difficult as non new architecture are in planning for general usage) for visualization maybe some speed improvement could be achieved.

Maybe having some hardware that can handle BSPlines, NURBS, Bezier Surface directly, with some computation algorithm made directly on the GPU could be of some help.

But this sort of things, seem not been implemented, in professional workstations, (at least for what it seen easily around) the most advanced things are high end GPU and maybe some graphics "co-processors" like CUDA and similar things, that at the very end are simply GPU without the output to drive a screen (sorry for the rough approximation).

Nothing new this sort of things are at least 40 or 50 years old, try to do some research about retrocomputing, and similar thing.

It is difficult to move from pixels, resolutions, and similar things, so innovation in computer graphics is more to have bigger figures in term of screen resolution, pixel per mm, and similar thing, than in some different things, GPU tend to machine more triangles per "unity of time" than move over the "triangular facet paradigm with linear edges" that is simply translated onto a 2d surface made by pixels organized in row and column.

If this is the "state of the art" nothing new will be seen for some time in the future.

It is true that representation of 3d objects on 2d sheet of paper, is a very similar concept, so not many road has been done from paper, and pencil drawings, only error could be erased in a "more invisible way".

Moving over to the GUI paradigm will be a very good thing, as efforts could move to some more "promising land" like improving math comprehension and maybe some more Bezier and similar people will arise to innovate CAD design, only to mention that these people are working for European (French) Automotive industries, searching for a way to make industrial design more smooth and to abandon old lines in automotive and aeronautics field.

Sorry for the OT.

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
user1234
Veteran
Posts: 3337
Joined: Mon Jul 11, 2016 5:08 pm

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by user1234 »

onekk wrote: Mon Nov 29, 2021 9:08 am But CAD code are done by programmers, not users.
Do you referencing, that i called it that the article is seen from a geek point? If yes, sorry, i did not want to blame programmers, and i also did not mean programmers. I mean the people with that company/startup mindset to construct fast and sell cheap useless composite and electric junk, example hoverboards ..... .

Greetings
user1234
User avatar
onekk
Veteran
Posts: 6144
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by onekk »

user1234 wrote: Mon Nov 29, 2021 8:46 pm Do you referencing, that i called it that the article is seen from a geek point? If yes, sorry, i did not want to blame programmers, and i also did not mean programmers. I mean the people with that company/startup mindset to construct fast and sell cheap useless composite and electric junk, example hoverboards ..... .

Greetings
user1234

No problem, probably I'm not explained my thought in a correct way.

CAD users are to be taken in account, as they are in some sense "customers to satisfy".

But in some cases, there are precise reason to do something in a way, as common sense is not a "scientific concepts" even the convention of the cartesian plane is a convention, but if this is a wide convention, better to adopt it.

There are notably exceptions, as in many graphical program the origin of the screen is the higher left corner so the X axis is intended as usual, Y is somewhat inverted. But this as some reasons, as in old CRT scan lines worked this way, so many graphics languages uses the "old CRT convention".

As this is a discussion, is welcome to have different thinking, this is the correct way to affirm things.

I have seems and probably there will be many others in future, requests to make things like in other CADs, but some inner wokring of FreeCAD are dictated by the fact that the "3d modelling engine" (OCCT) is expecting data in a way, sadly there is not yet a:

FreeCAD modelling guide, like:

https://dev.opencascade.org/doc/occt-7. ... algos.html

see under:
Example of a Tangency Constraint
The operation could lead to 8 different results, even if maybe a designer (the people who make the drawing) has in mind one or two solutions.

Maybe some other CAD are used to show "most usual solutions" only.

Some othe interesting reading could be:

https://dev.opencascade.org/doc/occt-7. ... ct_modat_5

From what you could see that usually OCCT use the counterclockwise convention for numbering edges.

Many of these things are not explained (or I have not read them) in FreeCAD documentation, so unexpected results could arise, or better, user are not aware of this internal working and expect a different result.

To summarize things:

- "FreeCAD is lacking some documentation", to be honest in the near past many things have been done and documentation is improving costantly.
- FreeCAD use OCCT and many things are done "in the OCCT way"
- There is room for improvements, and maybe some "high level methods" that "reduce complexity" but you will have to not make too much assumptions, as they reduce "flexibility".
- Usually programmers have "some reason to do thing in this way" even for some readability or maintainability of the code, so reusing some part of code will maybe lead to some "reduction in flexibility".
- It is true that users have the right to express they willing, and maybe as they are "customers" they deserve at least some "good explanation" of "why things have to be done in this way".
- every question is a legitimate question, even if there were already an answer, maybe it is not in the place where the user is expecting to find it, maybe some "documentation improvement is needed" and if a question is repeated many times, maybe some "better explication" is needed.

To shorten things:

If there will be some "modern CAD concepts" someone has to write some code and not simply criticize things, as here in Italy there is a proverbial phrases that roughly say:
Is a man is able to do things, it made them.
If he is not able to do things, it will became a teacher.
if he is not able to teach it will write about things.
Sorry form my bad english.

Best Regards to all.

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
User avatar
Zolko
Veteran
Posts: 2213
Joined: Mon Dec 17, 2018 10:02 am

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by Zolko »

onekk wrote: Mon Nov 29, 2021 9:08 am But CAD code are done by programmers, not users.
for FreeCAD this is false: FreeCAD is coded by its users. I think this is actually one if its very strength
try the Assembly4 workbench for FreCAD — tutorials here and here
User avatar
kwahoo
Posts: 680
Joined: Fri Nov 29, 2013 3:09 pm
Contact:

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by kwahoo »

Zolko wrote: Tue Nov 30, 2021 12:39 pm
onekk wrote: Mon Nov 29, 2021 9:08 am But CAD code are done by programmers, not users.
for FreeCAD this is false: FreeCAD is coded by its users. I think this is actually one if its very strength
I feel that FreeCAD is quite unique even as a FLOSS software. Users not only add code to FreeCAD, but they also learn programming to be able do this.
I think there are users who initially just planned creating a simple script doing X or Y functionality, but ended with a full add-on or even a workbench.
user1234
Veteran
Posts: 3337
Joined: Mon Jul 11, 2016 5:08 pm

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by user1234 »

onekk wrote: Tue Nov 30, 2021 10:31 am CAD users are to be taken in account, as they are in some sense "customers to satisfy".
Except FreeCAD users, at least i think so. They often choose FreeCAD not because want to satisfy customers (also when they have to). I think they like the limitless (not only for free) use of FreeCAD, without think about of licenses and other cr*p, also when they can easily effort commercial CADs. Because often commercial CADs are only annoying with their license system (locked in PDM databases, Workbench licenses, forced maintenance cost without any maintenance, forced hardware specification with the conclusions that it does not work, .......).


onekk wrote: Tue Nov 30, 2021 10:31 am Sorry form my bad english.
Better then mine.


Greetings
user1234
TheMarkster
Veteran
Posts: 5505
Joined: Thu Apr 05, 2018 1:53 am

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by TheMarkster »

onekk wrote: Tue Nov 30, 2021 10:31 am
Is a man is able to do things, it made them.
If he is not able to do things, it will became a teacher.
if he is not able to teach it will write about things.
In English there is something similar:

Those who can, do, and those who can't, teach.

I guess we could add to that, those who can't teach, write.
chrisb
Veteran
Posts: 53922
Joined: Tue Mar 17, 2015 9:14 am

Re: A New Era for Mechanical CAD - a "Commit to Memory" article

Post by chrisb »

onekk wrote: Tue Nov 30, 2021 10:31 am
Is a man is able to do things, it made them.
If he is not able to do things, it will became a teacher.
if he is not able to teach it will write about things.
And I have the very strong feeling, that those who can't do any of these, become politicians.

And excuse me for exposing my inabilities by having written about the sketcher and working in the wiki.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Post Reply