Howdy!
Long time since my last post huh? Well, I was (And still am) on a vacation, and the deal here was to spent time with the family… something I admit I could have done better in the last 10 years… so the golden rule was: kids first…
Today’s post is about 3rd party technology (A.K.A Component Technology or software libraries) – A vital element in CAD/CAM since its early days. I think this post is going to be very long (I don’t like Part I and Part II posts), and yet, we will cover just a small portion of what is really happening in the industry and where the components are. I’ll do my best to talk about the major players and component technology suppliers, who is using it and where, but I have to say up front that it’s nearly impossible to cover it all. This is because component technology is so deeply rooted in CAx that sometimes is nearly impossible to distinguish when you are using a component that was designed by your CAD/CAM vendor and when it was developed by a 3rd party supplier.
Let’s start from the beginning… sit tight… this is going to be a very long post…
Dr. Patrick J. Hanratty – The father of component technology.
After spending nearly 15 years working for the pioneers in CAD/CAM, such as U.S. Air Force, MIT, General Motors, GE, General Dynamics, to name a few, Dr. Patrick Hanratty decided to start his own company: MCS. In my second post here I briefly mentioned Hanratty’s contribution to the CAD/CAM world as its father, remember that?
Well, industry analysts have estimated that 70% of the CAD/CAM code these days trace their roots back to MCS’s original code. If you consider that MCS was founded 40 years ago, we can see how stagnant the CAD/CAM market has been even with all these fancy GUIs we have these days, and the powerful hardware available at Best Buy. It’s important to separate the code used to create GUIs and the algorithms that get the job done. The last type is what the analysts consider in their estimates.
Honestly, it breaks my heart to read this as well, and I think that these figures are wrong – but who am I to say that industry analysts are wrong…
Dr. Hanratty is a true genius and innovator, and below you can see him at COFES 2008 explaining why his company was beaten by his competitors, and how important innovation is in CAD/CAM:
The fact is that Hanratty was the one back then. Every company or academic institution interested in CAD/CAM was trying to work with him to start their own R&D about CAx. The genius Hanratty did not take long to realize that he could make a serious money from that while helping the technology he created to take off. It was a win-win scenario and after a short attempt with ICS, MCS was then founded in 1971. Hanratty licensed his CAD/CAM kernel to many companies, such McDonnell Douglas (Unigraphics), Computervision (CADDS), AUTOTROL (AD380), Control Data (CD-2000), Gerber Scientific Inc. (IDS 3), to name a few.
Hanratty was the first to commercialize his technology and sell it to others – He sold CAD technologies such as modeling kernels, Hidden Line algorithms, 3/4/5 axis milling toolpath algorithms, and a bunch of other stuff…
CAD Components
I think that even more than CAM, CAD uses a lot of component technology. I also think it’s fair to say that component technology is behind nearly all CAD tools in the market these days… This is because companies are struggling to survive as never before and they have to cut all possible expenses whenever is possible. R&D demands a lot of money – and in the current economy, just a few are seriously re-investing their turnover in developing new technologies in-house. It’s cheaper and safer to focus in what you do best and integrate 3rd party solutions to complement or enhance what you already have. CAD component technology is greatly diverse, by far more than CAM. This is because the intrinsic complexities of CAD development: CAD is the front end, the face of the product, the framework. It runs the responsibility for the exhibition, positioning, measurements, analysis, detailing, assembling, deliverables and nearly every aspect of the user interaction with the system. There are lots of complexities in CAD development, especially when dealing with large assemblies, where performance is a critical issue. One of them is hidden line removal algorithms. They need to run fast and precisely.
Visualization engines
In the middle of the eighties, a company named Ithaca Software was founded in the CAD labs of Cornell University to market the technology they developed. In 1996, four guys, Yanick Fluhmann, Ron Fritz, Gavin Bridgeman and Robert Mazeffa founded Tech Soft 3D to commercialize a breakthrough technology they started at Ithaca, they named it HOOPS. HOOPS is a great example of component technology in CAD. You know those great shadings and sharp and crisp visualization you have in CATIA, SolidWorks, Pro/Engineer (Creo), IronCAD, KeyCreator and many CAx apps for MAC OS: Yes – they use HOOPS as their CAD visualization engine.
In a few words, this engine
allows these companies to focus in creating new functionality for their products instead of spending a serious time and $$$ making their kernel compatible with your video card. And the investment is amortized among a greater user base, thus, reducing costs. As I said in the beginning, the purpose of this post is to highlight examples of component technology, so it’s not in my plans to cover all them, although I can do it if someone post a relevant comment asking for it…
A component like HOOPS is able to solve problems related to rendering, tessellation, hidden-line removal, translucency, zooming, pan, chaining, annotation, data exchange, publishing, graphic card driver compatibility, printing and plotting, viewing, manipulation and interaction, clash detection, attributes, data mapping, animation, to name a few. You see the value of component technology now? Imagine a CAM algorithms developer having to handle all these common things related to CAD? Modern CAD is developed by teams, formed by people with specific expertise.
This modularity is then packed together and we get the product as we know it. But seldom a single guy handles all these things alone. Some teams working for big companies with offices spread throughout the world don’t even talk to each other in some cases… an email or two is more than enough…
Component technology is crucial to reduce the size of development teams and thus cut R&D costs. Those who do not adopted it so far will probably have to review this position in a near future, unless they are serving a very specific and profitable niche.
Modeling kernels
Another example of component technology in CAD are modeling kernels such as Parasolid, ACIS, Granite. The development of a CAD kernel is a HUGE R&D effort and the truth is that no 3D CAD system is able to exist without one. So, if they are a must, it makes sense to buy one ready instead of developing one yourself, unless your CAD product is supposed to use a modelling technology that uses a totally different approach to solve geometrical modeling problems. I doubt it’s your case. 
Even if you do not use these out-of-the-box engines, you are using known solutions that are packaged into these commercial solutions. I think the main reason why companies ferociously decided to license these kernels in the last 15 years is because they allow these companies to develop better and cross compatible products in a significant shorter timeframe. Instead of worrying why the U-V lines of a surface are not being properly manipulated by the system, they can focus in creating a new pattern functionality or a projection algorithm… good modeling kernels help in the development and in the quality of nearly all deliverables of a CAD system, such as detailing, meshing, rendering, analysis, etc… because the component is used by a greater user base and even among competitors, the product keeps being constantly fixed and improved, updated to use latest hardware technologies and so on… and the improvements are propagated to several core areas of the CAD/CAM product…
Parasolid for example, is a great example of a reliable and cross functional 3rd party modeling kernel. With a few cases of poor implementation, (Mastercam still not dealing well with certain things made possible by Parasolid, such as fillets – I think they fixed it in X5 though) Parasolid is a killer kernel. Examples of applications using it would be SolidWorks, Mastercam, TopSolid, SolidEdge, Unigraphics NX, Visi-Series, ANSYS, GibbsCAM, IronCAD, Cimatron, OneCNC, Autodesk Inventor, EdgeCAM, Powershape, MSC, to name a few… besides a robust modeling foundation, these applications have excellent cross interoperability in both UNIX and Windows environments thanks to Parasolid component technology.
Licensing of modelling kernels is a great way CAx companies found to avoid dealing with complex issues of CAD development which are not their area of expertise, such as volume/mass calculation, clearance/interference computation, tessellation and mesh representation… to mention a few… ANSYS focus for example is to develop CAE and FEA software – Why would they re-invent the wheel writing their own CAD kernel these days? Even in Hanratty’s days they didn’t do it, let alone these days.
An analogy to a common fact in the CAM world
I do here an analogy of component technology to post-processor development – Post-processor developers who work for companies developing posts do this shit all day long. It will take years to you to acquire the same know-how they got after working for a broad range of customers in different industry segments and machine-tools. These guys solve in two hours what I would take three days to figure out.
The sad joke here is that shop owners are proud to buy a half million dollar machine-tool but call names when the post-developer charges them in US$10K for a custom post-processor for his crazy super-cool machine. Hopefully component technology is intelligently sold in a better schema. We’ll talk about this in the upcoming topics…
Component technology to solve 2D problems – The foundation of everything
It’s true that the 3D technology is the de-facto standard these days, but we can’t forget how important 2D still is. 2D design is still being the basis of 3D modeling and that will never change. Human beings do not think in 3D – we as limited beings need to work in 2D and then use the proper tools to expand and shape our intent. The most common method to start any 3D geometry is through a sketch. Even being apparently simple in their essence, sketcher tools may have to deal with complex inputs that can drive the designer crazy if not properly constrained: and here is where the so-called “design intent” takes place.
By means of constrains and a great deal of intelligence, sketchers can reduce by a great level the mistakes introduced by human beings, thus making the process more reliable and natural. Even being 2D tools, hundreds of challenges are present when dealing with the geometry lying on a plane. In fact, nearly every 3D tool like extrudes, blends, sections and etcetera have their foundations in 2D geometry, so we could say that before turning into a 3D geometry, a 2D geometry parser did its work. The sketcher, among many things, needs to make sure that there are no overlapping entities, that the intersections are valid, the tangent points and the constrains are mathematically feasible, the design intent is being insured, etc. For parametric sketchers, they have to publish the dimensions and relations to the CAD database so that they can be used to drive other features as well. A real complex scenario.
That being said, I think it’s now easy to understand that it’s critically important to offer easiness and yet robustness during the 2D sketching phase. A gold rule for solid modelers is to use simple features as much as possible, and use the CAD kernel tools to apply fillets, rounds, chamfers, holes… some people prefer to put everything inside the sketch, making the regeneration and the design intent poor. It’s always better to extrude a dozen of squares instead of trying to get all them into a single sketch – The same rule is valid for fillets and chamfers… The kernel runs faster when executing simple features… specially because the more edges and complex topology a feature has, the bigger are the chances to have failures in associated (children) features when the design changes… being a Pro/E dude I know how painful it can be without following these golden rules…
D-Cubed – The first commercial 2D constraints manager (Sketching algorithms)
In 1989, a dude called John Owen founded D-Cubed Limited, in Cambridge, England. Mr. Owen started developing and marketing a 2D kernel to solve sketching problems. In their early days, D-Cubed components were essentially sketching algorithms to solve and facilitate the user input to the CAD system.
Instead of full dimensioning tw
o parallel lines with the same length, the designer could simple locate one, and apply constrains telling the system that one of them was horizontal to the sketching plane, the second was parallel to the first, having their vertices aligned and with the same length. Looks obvious, no? But the truth is that it was not done like this back then. D-Cubed technology was inspired in the work of the visionary work of Dr. Ivan Sutherland, another american computer scientist who invented Sketchpad. Sketchpad technology redefined the possibilities of human interaction with computers and is one of the most primary roots of modern CAD.
D-Cubed is today licensed to a bunch of systems where it provides solutions for 2D and 3D sketching and constraint management, assembly constraint management, profile management – The last one is essential to CAM – Especially 2 1/2 axis milling and turning profiles – Including Turning Envelope calculation – (As shown below)
D-Cubed technology also solves problems related to HLR (Hidden Line Removal), clash detection, etc. In 2004 UGS, now Siemens PLM Software bought D-Cubed as a continuity in their strategy to be a leader in component technology, just like they are with Parasolid.
The list of 3rd party components in CAD is huge. There are solutions covering nearly every aspect of a CAD tool. Honestly, it’s impossible to list all them here. I hope I could share some ideas about component technology in the CAD realm, but I’m sure that I’m missed a ton of valuable things too. It will be a pleasure to update the post if I get a comment about a relevant technology I missed here.
CAM Components – They are there – You just don’t know it
Well, I my first plan was to start here, but it would not be fair and clear to write about CAM component technologies without what I wrote above. Also, I think the topic that ignited the creation fo this post was one of my lasts posts, where I wrote about adaptive roughing toolpaths. One of them in special, Volumill, is a clear example of component technology in CAM. After writing about these adaptive toolpaths, it was clear to me that component technology in CAM need to be discussed further. So, here it goes…
Component technologies in verification
I think this is the most obvious application of component technologies in the CAM field. Due to the complex nature of verification, it’s really complex and expensive to eng
age in R&D in this field. The algorithms to represent the material removal in a solid block are by far more complex then what is used to develop toolpath algorithms… specially because the factors involved in the verification are much more prone to diversity than a toolpath algorithm. To compute a toolpath, we can say that basically, the major floating factor is the part geometry (And check surfaces when appropriate). All the rest is static – such as the formulas to compute the toolpath based on a given tolerance range, the tool shapes are clearly pre-defined and known by the algorithms, which applies different equations to each tool geometry type, the variant parameters also fit in known scenarios… it’s much harder when it comes to CAV (Computer Aided Verification) – The tool shape is virtually unlimited, the stock need to be precisely updated, clash detection is far more accurate… there are endless mathematical and programming challenges to develop component technologies for verification… and yet, it is still one of the most profitable and important segments for components. For a long time CAM systems had nothing but backplotters to show the toolpath in the wireframe state. Some pioneers saw a light in the end of the tunnel and decided to start companies to address the problem and make money with it. One of these guys was Jon Prun, founder of CGTech – The creators of Vericut.
Vericut – The first verification engine to be sold as a CAV component.
It’s not hard to understand why Jon Prun started CGTech if you understand his background. Before founding CGTech, he worked as a CAD/CAM consultant at McDonnell Douglas Corporation (Unigraphics) and Occidental Petroleum. After that, he worked for the CAD/CAM father himself – Dr. Patrick Hanratty – at MCS. After gaining a ton of experience with computer graphics, mathematics and software development, he left MCS to start-up CGTech. That was in 1988. Back then MCS was in the peak of its success, but Prun grasped that the market was looking forward to be able to simulate machine tools and their CNC controls… so he developed Vericut and wore all hats to make it take off. CGTech’s first customers often reports that Jon himself trained them to use the product. A clear example about hard work and perseverance when starting a company – Especially in their case, where no external funding was gotten.
In 1989, they partnered with UGS to supply their verification technology to Unigraphics customers. This was essential to give them credibility and money to the recently started business. It did not take long to other big players notice the big value of their solution, and in 1990, Dassault Systems also partnered with them. Vericut become then the market leader for verification.
In May 1999 PTC partnered with them and dropped their own verification engine, which is still available in Pro/Engineer through a configuration option, but it did not get any enhancements or fixes ever since… in the same month (Interesting how the things used to be back then), PTC also signed an agreement with Austin NC to ship their G-Post software with every seat of Pro/NC. Before that, PTC had a partnership with ICAM, a Canadian post-processor developer who use to charge very high for its world-class products. Pro/NC was becoming a very expensive package due to ICAM pricing policies, and François Lamy, a former ICAM employee and back then PTC Manufacturing Products director, kicked ICAM ass and put G-Post as the standard post-processor solution of Pro/NC till these days. A very nice move, by the way. My personal experience with ANC products, pricing policies,services and customer care is nothing but excellent.
As you can see, component technology is also the source of many potential headaches to CAM vendors.
Licensing schemas
Well, I said many times above that the great benefit of component technology is to allow companies to do what they do best and let the hard work to others… it’s true… but since its early days (Hanratty’s days) the licensing schema is almost always based on the per seat basis. That means that every time the CAD/CAM vendor sells a seat including that optional or functionality, the component technology developer capitalizes. It works this way for post-processors generators, verification, toolpaths, etc… This method ensures the original developer is constantly raising funds to keep its R&D in that particular field it covers and the CAM vendors keeps pocketing $$$ while investing the minimal money in integrating the component to its existing code. Smart, isn’t it?
Of course the component supplier depends on the marketing and sales skills of the licensee, but this schema allows them to diminish investments in distribution and marketing themselves.
MachineWorks
I don’t know very much about their history or founders, but according to their website, they started in the middle on nineties. Considering the restrictions to apply to a position with them (“Candidates with only an undergraduate degree and no relevant commercial experience need not apply”) – There’s a big chance that MachineWorks was born within some academic institution, as many component technology developers. Also, based on their demanding job offer, I think their offices are filled with crazy mathematicians…
The fact is that these dudes are leaders in verification components for CAD/CAM, partnering with almost all major CAM vendors out there. Their are clearly the best ones in their segment, followed very closely by ModuleWorks, their main competitors currently.
Real time anti-collision systems in machine tools – Component technology goes very well here
In the recent years, with the popularization of complex machine-tools and the tremendous increase in their complexity, shop owners started to demand a real-time protection for the expensive machines they were purchasing. A solution like Vericut is only effective in the office, and it does not protect the machine against operational errors. The thing here is that a small mistake can lead to an economical disaster to a company, forcing it to deal with huge downtimes and repair costs which are much higher than the software itself. For this very reason, machine-tool builders had to figure out how to provide these systems to their customers – After decades producing mechanical equipment and only recently software, how could they start to offer verification and clash detection in a very short timeframe without no prior background in developing such technologies?
Short answer: They couldn’t. The solution was to find component technology partners to integrate their software with the machine CNC control and keep focusing the R&D money and resources in developing machine-tools. MachineWorks provides verification and collision monitoring to a great range of high-end machine-tool suppliers such as Doosan, Okuma, Makino, Fidia, EMCO, Mitsubishi, Milltronics, Hurco, to name a few. CNC controls often run with short memory for 3rd party applications, and this poses a great challenge to component developers. Only with specialized expertise a machine tool company can offer this to their customers. And it’s not financially interesting to create an internal R&D team to develop such technologies. Here, component technology follows dominant.
ModuleWorks – The German solution
Everyone knows that Germany is filled by geniuses and freaks. One town in particular is a reference for them: Aachen. This old (As most German towns) and highly populated town (For Germany standards) is one of the cradles of the science and technology in the old-world. As such, ModuleWorks could not be founded in a different place.
ModuleWorks started in the offices of CAMAIX, a German Mastercam reseller, in 1999. Prior to that, a guy called Andreas Grimm founded in 1993 a company named Grimm Plastics Engineering. In 1995 he hired a young genius called Yavuz Murtezaoglu. There was third guy hired a year before, Joachim Rodewald. This team developed many software and post-processor solutions for the German market. Their main area of expertise was 5 axis machining. In 1999 they created CAMAIX – Back then they developed many 3rd party C-Hooks to expand and add multiaxis functionality to Mastercam, as well as many other things the system did not offer back then and that the demanding German market was asking for. CAMAIX partnered with academic institutions like the Fraunhofer Institute of Production Technologies – IPT and many customers in order to develop the best 5 axis toolpaths for critical applications. And they did it.
Soon Mastercam customers all over the world started to have solutions for complex 5 axis applications, mill-turn machining, impeller roughing toolpaths with much more intelligence and less air-cut… as would happen a few more times after this (The adaptive toolpaths from CIMCO turned into HSMWorks), CAMAIX offered their technology to CNC Software for a very competitive price, and C
NC said: – No, thanks!
Andreas and Yavuz knew they have a mine of gold in their hands, but it needed to be properly marketed and further developed in order to be integrated to other systems. After spending some years improving their algorithms, GUI and gaining experience with their Mastercam customers, they decided to found a new company, to develop and commercialize their component technology. That happened in 2003 and Yavuz was named as the Geschäftsführer – The director of the company. Two years later CNC Software knocked on their door asking them to license their technology to the weary Mastercam, which was not being able to compete in the 5 axis realm due to their outdated toolpaths. Of course ModuleWorks licensed to them… but not for the same comrade price of the first offer made years before… And they paid.. sure they paid.. D’oh!
Well, CNC Software itself did not suffer too much… it was much more a punch in their ego than a lost… in the end, end-users pay for these components, so the profit margin is basically the same…
ModuleWorks started also to develop 3 axis HSM toolpaths and sell them as an option… companies with broken or none R&D could license their technology and offer toolpaths as they were developed in-house… Surfcam is a great example of company that licenses ModuleWorks technologies for nearly everything… machine simulation, verification, toolpaths… they sell it as fresh fish developed by their R&D, but is ModuleWorks stuff… the agreements are usually set in a way that the licensee does not have to mention the source of its technology… and the customers also do not care where it comes from as long as it works… set your watch – usually, a few months after ModuleWorks releases, Surfcam issue a very nice newsletter showing off their new functionalities…
Notice here the mention to the 3-axis Multi-Cut add-on… this is how Surfware license ModuleWorks products following the licensing schema I mentioned earlier…
A good example of toolpaths developed by ModuleWorks in the recent years that are now available in many CAM systems: STL machining. This is essential in dental CAD/CAM and ModuleWorks came up with a series of toolpaths to work with STL models. Soon after the release of their framework, their customers were able to provide dental machining support for their existing customers and offer it as a in-house development. This is one of the many positive sides of component technology.
Many companies that are licensing ModuleWorks technology often license MachineWorks technology for solid verification, and ModuleWorks stuff for toolpaths and machine simulation. Mastercam is one of these. Their solid verification engine is from MachineWorks (The cheapest package I think), and their machine simulation and many 4/5 axis toolpaths comes from ModuleWorks.
An interesting remark
Because ModuleWorks started with toolpaths and later with machine simulation and other stuff, they have more experience in 5 axis algorithms than their main competitor, MachineWorks. In fact, MachineWorks started to offer toolpaths in order to compete with ModuleWorks more efficiently, as they didn’t have a complete set of solutions as the germans… they have better machine simulation capabilities, but ModuleWorks is superior in the toolpath algorithms field and that’s why they have a bigger market share in this segment. Can you see now the benefits of this competition for us, end-users?
The lost of identity
The big problem with component technology is that due to the fact they license APIs and software libraries to do the job, many of them look-alike. If you compare their GUIs and the way the user interacts with the system, you will notice it’s nearly the same way. This has the advantage of reducing the user training when moving between systems licensing the same technology, but it also creates a room for the lack of differential solutions. When something becomes the de-facto standard, people tend to believe that is the best way to do things – This is a common pitfall in CAD/CAM. I believe that’s the reason HSMWorks, even lacking many of possibilities in the 5 axis realm which are available through these components, prefered to keep a safe distance from them… wearing the same hat everyone else does may not give them the freedom to create differential and creative solutions to their customers… a valid point-of-view, if this is the reason anyway… one way or another, they do use MachineWorks as their verification and machine simulation engine.
Below you can see the ModuleWorks machine simulation engine used in SolidCAM, Euklid and Mastercam – Very similar GUIs – The same is true for their multiaxis toolpaths:
Component technology as an innovation booster in CAD/CAM
I think with a few exceptions, the innovations in CAx in the past 20 years were in a great extent created by component technology developers. If you read what we covered in the CAD area and in the CAM, it’s easy to see that one way or another the competition between the tools is increasing and the end-user is being able to make interesting choices. ModuleWorks for example is forcing MachineWorks to innovate faster in order to keep their leadership. NC Simul, the French alternative to Vericut made CGTech lost important accounts all over the Europe, and for this reason, CGTech is innovating faster and delivering faster. These few examples tells me that component technology, although not solving all problems we have now, helps to reduce the stagnant period we have observed in CAD/CAM world in the past two decades. So yes, in my opinion, component technology is a valid and helpful resource to deliver best tools for modern manufacturing.
What’s next
Well, I’ll use this topic to share my opinion about the next challenges component technology has to solve:
#1 – Adopt machine simulation in the early stages of the CNC programming
Most machine simulation components are only available after the completion of the task and not during its creation. Machine simulation needs to be tied to the machine definition in the CAM systems and to be available instantaneously when necessary.
#2 – Stock updates
99% of CAM systems out there fail to represent the material removal progress. It’s still hard to CAM programmers to track the order of the events and visualize the progress of their work yet with all hardware and software technologies we have today. This is the future of CAD/CAM and can lead to an unprecedented wave of innovation in the toolpath technology, creating smart and air-cut free toolpaths to the most diverse scenarios. Big CAM vendors will not R&D for this. It will probably come from component technology developers. Today, as far as I know, only TopSolid CAM, TEBIS and HyperMill are able to do it decently, followed by Pro/Engineer, that does it not so decently, but does it anyway. Pro/Engineer however allows the user to create the material removal representation himself through the powerful CAD tools available in the system. TopSolid CAM can only make it for 2 ½ axis toolpaths. Although slightly limited when compared with Pro/E in this area, Missler implemented a robust technology that solves most problems related to air cutting. PTC technology is very unstable, prone to crash and not as smart as Missler when it comes to air cutting.
This technology has also to evolve to a point where the cut stock can be saved in the native format of the CAD/CAM system (Not as STL or triangulated geometry) where the simulation was ran, therefore allowing the part to be fully detailed in the drafting module or to be used in the next operation or even in an assembly. Once you win the battle to update the stock, Pro/Engineer does this very well. I’m not sure how far TopSolid can go on this area.
Conclusion
I think component technology is a great thing to the CAx world. Without it, many possibilities in modern CAD/CAM wouldn’t be available today. I see it as a hope for fast paced innovation and quality services. Although there is a lot of room for improvements in several areas, all major CAD/CAM component suppliers are working and delivering better tools for tomorrow, and it’s our responsibility as end users to keep pushing our CAD/CAM resellers and suppliers to get the tools we need. Your hard-earned maintenance dollar is precious and you have to fight for it, especially in the current global economy. Usually, component technology providers do not interact with end-users, but yet, with CAx developers and executives. For this very reason, you have a key role in keeping them aware of your needs – It’s YOUR hard-earned dollar and YOUR struggle to survive and compete in an aggressive market. Think about this.
Many of the problems we have today are caused by our stupid trend to worship our CAD/CAM suppliers to a point that we are proud to be constantly work-arounding the systems to prove ourselves heroes. There’s no such thing my friend – When we do this we are protecting the incompetence of someone who wouldn’t do the same for you. If you want to worship someone, then do it for your family, true friends and even your employer – Not to a CAD/CAM company. Fight for the company you work for.
Sorry for the extremely long post folks… but component technology is deep shit… we didn’t cover 2% of it here… and it took me 8 hours to finish this one…
Have a good week,
Daniel

Good post. Don’t you think “Component Technology” (note capital C and T) is slightly over-hyping what other people simply call software libraries?
I see a slight contradiction in many of the academic papers published on CAM. On one hand academics need to publish to get grants and keep their jobs, but on the other hand they seem to almost deliberately hide or not publish parts of the CAM-algorithms or implementation-details because they are funded by commercial players. In the medical field this has been taken to the point where granting agencies (notably NIH in USA) require academics to simultaneously publish their results in open-access freely available journals/websites.
I would think freely available information and algorithms for key techniques would be beneficial for long term development and progress? What happens when a team of academics found a company and go closed-source? You go from a big community where information/algorithms/implementations are shared freely to a small team working in isolation unwilling to share/communicate…
The point about post-processors you talk about was mentioned on the freesteel website too. It’s amazing that the CNC-controller-industry cannot agree on a G-code standard. I can understand the need to differentiate between mills and lathes, 3-axis and 5-axis and so on, but it is surprising that there is a whole industry around such a trivial thing as post-processors!
Hi Anders,
I agree with you in regards the term “software libraries” – I think “Component Technology” is a marketing expression to make it appear more powerful than it really is. In regards a G-Code standardization, I think it would create a huge problem to machine builders to deliver differential solutions… specially because if it was about to be standardized, then some academic team would be in charge, and for this very reason, the bureacracy to implement changes would be huge. You can take as an example the ISO-ANSI standardization of C++ – When developers need something the ISO standard can’t cover, they use libraries like “Boost” or “Qt”…
Kitware seems to be an interesting Component company in the visualization & scientific computing field. It’s interesting that they release almost all of their Components open-source. See for example: http://www.kitware.com/blog/home/post/162
OpenCascade and the community-edition OCE seems to be a step in this direction for CAx.
Wow this is great stuff and I dont mind the long posts keep it up! I have read on the Volu mill site about Volumill universal. This stand alone application will output G code or CL data. Have you had any experiance using this application and if so what are your thoughts about how it could integrate specifically with Creo (CL data)
Hi Nick,
As far as I know, Volumill universal does not work with neutral toolpath data from CAM systems, nor it would make sense… what their offer is a solution that can read DXF, IGES or STEP files representing the islands and boundaries of a pocket and then compute the toolpaths for you once you enter the technological data… at least it used to be like this…
They can deliver the result of the computation in G-Code and neutral CL formats… in the last case you can post it with your own post-processor tool…
It’s different when they integrate this to a CAM system… then it does it directly in the original system…
Cheers
Daniel
Hi Jon,
NX simulation (ISV) is not up front either in the context you put above. But it does a decent job, so does CATIA V5…
I´d say that many systems do the simulation the right way, but some others have better technologies, like Topsolid. It all depends on what you want and how much you are willing to pay for it… in the CAD/CAM world, you literally get what you pay for…
Daniel
Daniel,
Great post, but I wanted to clarify something about using machine simulation up front. In NX, you can do some things in the context of the simulation machine. For example, when setting a tool axis, as you tilt the tool or drag it around the screen, the machine moves with you. This way you can see clearances, collisions and axis limits at various positions before you generate the tool path. The machine context is also available in the “generic motion” operation, where you manually drive the tool wherever you want, and the machine simulates as you make each motion.
Mark Rief
Siemens PLM
Hi Mark!
Thanks a million for your contribution to make the discussion richer! Really good to know a little bit more about NX simulation (ISV) !
Thank you!
Daniel
A bit of NX ISV:
Great post Daniel. I have only just got round to reading properly as I’ve been on vacation.
The section about D-Cubed is spot on. John Owen is still coming up with ideas for new and improved algorithms faster than we can implement them. It is also of note that before he founded D-Cubed John was responsible for the development of the first version of Parasolid, so he has been working with components for a long time.
Obviously D-Cubed are firm believers in the value of using components but it is important to select the right technology to “componentise”. It should be something that is a common requirement (such as constraint solving or hidden line removal in our case) but still gives the application flexibility of how it is presented to users. Ideally, it is will also be something where there is an clear “right” answer as this will generally reduce the complexity of the interface. Components don’t necessarily need to be technically complex, but they are unlikely to be successful commercially if they are straightforward to implement. Also, technically challenging components are more interesting to develop!
Mike Atkins
D-Cubed Components, Siemens PLM Software
has anyone used open mind hypermill? They claim to track stock for all turning and milling operations
http://zyklen.openmind-tech.com/archiv.php?bildobjnr=0.1.235.744.754.773.1126&sprache=EN
http://www.openmind-tech.com/en/products/hypermill/machining_strategies.html
Hi Nick!
Hypermill is one of the best systems out there, probably the best one for 5 axis milling… I wouldn’t be surprised if the have it… they use to have a version that ran on Wildfire 3, but they dropped it…
Thanks for sharing,
Best,
Daniel
Thank you very much for this very very interesting post.
It surely has increased my understanding of CAD/CAM systems.
By the way I’m using Creo / ProEngineer.
Hi Daniel,
very interesting post!
Thanks!
bye
marcus (greetings from germany)
Excellent article! This really increases the knowledge of how CAD/CAM systems today function, especially on the non-PLM type software packages, that have lower volume and R&D development funding and still offer excellent products with some bit of adaptability.
I am in a situation where the CAM programmers are stuck with PLM software for manufacturing. These companies, in my opinion, are sub-par to the technology of the component suppliers when it comes to manufacturing. With the PLM software’s focus on the “big picture”, manufacturing technology becomes the step child and the component software’s focus really begins to shine in comparison. With these PLM software’s alloying quite a bit of customization, this really makes me wonder why no-one was started a business developing custom manufacturing solutions for the “out of date” PLM software using component solutions. Quite possibly, maybe I am more focused on the technical innovations than the business sense.
Hi John!
Thanks for stopping by. You probably read the article below right?
http://camzone.org/2011/08/10/why-plm-is-killing-innovation-in-cadcam/
There you are going to notice I agree with the points you mention above.
Thank you for your feedback,
Best
Daniel
Excellent topical discussions of the CAD & CAM community. Thanks for taking the time to pull all this material together.