It’s just before our 22nd anniversary on April 1, and looking back at the history of LEDAS, I see that the first years from each decade were, for our company, the really important ones. Often, these years started new stories and finalized old ones.
Arguably, 2011 was the most pivotal year in LEDAS’ history. Let me list the top five events that happened to our company ten years ago:
Geometrical modeling projects often contain some form of central hierarchy of objects. A geometric kernel, for example, has a hierarchy of geometric entities. Another example is a geometric solver which has a hierarchy of objects and constraints. Simplified inheritance diagrams for these hierarchies are shown in the figures below.
Many routines/algorithms of other modules need to process all the entities in a hierarchy in a similar fashion, although with different implementation details. So, polymorphism naturally is used with these kinds of hierarchies.
Assuming we are talking about C++ (and this is usually the programming language of choice for algorithmic libraries in CAD), using virtual functions is the first consideration for implementing polymorphic behaviour.
However, a variety of routines applied to the entire hierarchy, ...
While working on LGS, the programmers at LEDAS developed similar software for Dassault Systèmes, which were integrated into CATIA and so are used by hundreds of thousands engineers in corporations like Toyota, Honda, Airbus, and Boeing. Much later, LEDAS was asked to develop constraint solvers that ...