Creo (Pro/Engineer) vs. SolidWorks — More Fuel in the Debate
Which is better? Creo vs SolidWorks? That debate has raged for years, and here is some more fuel to the fire. This is from someone who has been around both for many years, and is considered a complex geometry expert. See our past Tips of the Month.
These latest observations are based on the newest release, Creo 5.0 (formerly Pro/Engineer).
Biggest Differences: Creo vs SolidWorks
1. Speed to Accomplish Stuff.
Yes, both Creo and SolidWorks have numerous shortcuts to help processes go faster. Both use the keyboard, and both use the mouse for quick access to commands. However, there are some big differences.
To sum it up, SW tends to rely more on the mouse with context sensitive and motion sensitive menus. Creo relies more on mapkeys (via keystrokes and mouse). To me, that’s just 2 ways to skin a cat — but the big differences show up in the limitations.
Creo, like its Pro/E predecessor, allows multiple sequential commands all in one shortcut. Here’s a quick video of a simple mapkey created in Creo:
It’s a simple example of 3 actions in one shortcut: 1) Turn Off Display of Planes, 2) Rotate the View Position, 3) Change the Model Display state. It’s simplistic, I agree, but it illustrates a capability of Creo that SolidWorks can’t do, and it’s very useful when repeating things frequently.
Example 1: Select a plane, then use a shortcut which creates a new sketch, orients to the screen, and selects the line command to start sketching.
Example 2: Save the model as an SLA complete. The shortcut does all the menu picking normally done manually. With a mapkey it takes a second, compared to the process of mouse and dialog boxes. I’ve tried to automate SW, but even the experts can’t show me how.
Creo allows one or many keystrokes to define a short-cut. SolidWorks is limited to one. That means a limit to the number of keys on your keyboard + added ones using prefixes (like the Ctrl+ key). I find this very limiting. For example: ‘R’ may be used to sketch a rectangle — but what about differentiating between a corner/corner rectangle and a center point rectangle? Or ‘A’ for Arc. Center Arc? 3 Point Arc? Tangent Arc? If you have to use the mouse anyway to get to what you want, shortcuts are limiting. For example, not allowing multiple keystrokes like ‘AC’, ‘A3’, or ‘AT’.
In SW you can also put shortcuts in a 3rd mouse button gestures, which are cool, but again, with limits. And there are 3rd mouse button menus which help, but are contrary in many respects to speed. Read Efficiency and the Mouse. True for both Creo and SolidWorks.
Winner of Speed Capabiltiy: Creo by far.
2. Ways Creo vs SolidWorks Handle Failures.
Feature failures happen. References change or conditions become invalid when models are modified. That happens with all parametric modelers. How they handle it differs greatly. For the most part, Creo stops and you have to solve the issue (or suppress it).
SolidWorks is similar, but handles failures more gracefully — not using, but not really suppressing failed features (or those that rely on the failed feature). This added state gives you the opportunity to continue, showing cascading effects of the failure. If you know why something is failing, and you know it will fix itself when you make the next modification, then you just don’t worry about it. Most important, the customer has the choice of dealing with it now or later. It’s more graceful, for sure.
Winner of Failure Handling: SolidWorks.
3. Ability to Retroactively Make Fundamental Changes.
Do you ever modify models? Do you ever change a base or early feature of a model? If you do much with design iteration or product development, you probably deal with change requests that cause grief with your CAD models. The ability of a CAD system to handle changes gracefully is super important.
There is much more, but let’s suffice it to say Creo gives methods for re-assigning references that SolidWorks does not.
a. Creo vs SolidWorks ability to tell the software to look at a new reference instead of the old one is super powerful. Both have the ability to edit a feature again, but in SolidWorks there is no way to tell it to reassign a reference. You must Edit, then delete items that constrain to the old reference (alignments, dimensions, etc.), then recreate them. Awkward and time consuming.
b. Creo shows you some idea of what the old references were even if they are now gone. SolidWorks leaves you guessing.
c. This is exponentially more important as models get bigger. When there are hundreds of features, changing something early in the design can cause big trouble downstream. In SW, it can take all day to fix things, where in Creo, you might only reroute a hand full of features.
To illustrate, sometimes in SolidWorks you must manually fix related features one at a time. On one occasion I spent nearly 4 hours fixing more than 200 failed features — mostly I only had to edit, then close, so SolidWorks would realize it already knew what to do. Manually for each feature! Fail!
Winner of Retroactive Changes: Creo — by a landslide.
How are references are made? Pro/E has a much more stable approach to referencing. Even if you insert something between a reference and the referencing feature, it maintains the reference. SolidWorks can be a bear in dealing with this.
Another interesting problem occurs when an earlier feature appears to reference a later feature in SolidWorks. For instance, if a sketch is made early in the model, then later it is used for a feature, the later feature absorbs the early sketch even though features between reference it. Makes it very difficult to diagnose issues with a model — or to even know how to modify a model — if you don’t know where the information is.
Pro/E has been criticized for not being as flexible in this, but I’d much rather have a more rigid paradigm than spaghetti.
There is also the question of referencing edges or surfaces — but much has already been said about that on other places. Creo allows both, SolidWorks sticks with edges — Or, if you want to have more stable models, unhide a sketch and reference that (if you can figure out how to tell SW to reference the sketch instead of a point or edge). Setting best practice and stable references is much easier in Creo.
Winner for References: Creo.
5. Core Modeling Capability
The reason to purchase a parametric 3D CAD system is to make 3D CAD models. Right? So what about the Core Modeling Capability of Creo vs SolidWorks? This is a mixed bag because both systems have enviable capabilities. Here are a few of my favorites:
- Multiple bodies in one part in SolidWorks. I have found the ability to merge features or not extremely valuable. Sometimes you just need to develop areas separately before joining them. (Though, it can make for spaghetti if you’re not careful.)
- Structural Weldments in SolidWorks. Going along with multiple bodies, beams are an excellent example. You can create the whole structure in one part and SW handles BOM and Drawings just fine. (Creo has a module for this, at extra cost, but I have not used it. From what I’ve read, it’s not as good, but don’t quote me on that.)
- Sketches in SolidWorks. This is a favorite to love and hate. Sketches are required for everything. I love that it treats them separately when you delete features and I love that they all show easily (simple parts) — but I hate that they are so difficult to work with in complex models as you figure out which ones are where to hide or unhide or select if you want to reference them. (See references above.) I hate that to keep control of a large model you often have sketches on top of sketches which makes it hard to select the right one.
- Feature Kaleidoscope in Creo. Way back with Wildfire, PTC introduced features that don’t have to be any one thing — a feature can be a cut, a protrusion or a surface — and change from one to another simply. The ability to change from solid protrusion to cut to surface is so powerful.
- Surface Modeling in Creo. Modeling with surfaces makes complex modeling so much easier. Creo has surfacing as a fundamental capability. SolidWorks treats it more as a sidelight. And, if you want to go advanced, Creo easily does things that SW struggles with. In general, I am much more successful with surfaces in Creo.
- Advanced Features in Creo. Pro/Engineer started as a high-end system and incorporated really cool functions like Toroidal bends, Spinal bends, and multi-trajectory Sweeps that are still in the base of Creo. I use these a lot to simply build geometry that I struggle with in SolidWorks.
The above is just scratching the surface (pun) for these CAD systems. Pro/E started as a high-end system and maintains the advantage when things get more involved. For simple rectangles and circles, SW is arguably easier, but move beyond the basics, and the tools in Creo start to shine. For more, see the Review of SolidWorks.
Winner for Core Modeling: Creo for Experience. Maybe SolidWorks for Beginners?
6. Customer Focus In Sales
Creo has a ton more to offer in terms of total package and capability, but PTC packages their stuff in too many modules — you must purchase separately. Initially Creo vs SolidWorks look similar in price, but if you want full function, Creo is definitely more expensive. Also, PTC inserts some nifty little gems in modules so you have to buy the whole module to get the little thing you want.
SolidWorks tends to package their stuff in neater groups, so out of the blocks you have access to more of their functionality. SW doesn’t compartmentalize the functions as much. (Even if they have less total to offer in the first place).
In Summary, Creo has much more to offer, but SolidWorks packages their stuff for the customer better.
Winner for Sales Packaging: SolidWorks Tips It.
Similarities (with Differences)
1. Error Messages:
Both Creo and SolidWorks have pitiful error messages. With most SolidWorks errors, all I can usually tell is there is an error, but the messages typically give no clue what actually caused the error or what I have to do to correct it. Creo is slightly better in some areas, but worse in others. From a user perspective, understanding WHY gives power. Both have room to improve here.
2. Regeneration on the Fly.
Both systems do this, though in assembly modes, Creo works much nicer. The ability to regen some things without others and the much greater ease of access to dimensions is really nice.
3. Direct Modeling:
Both have Direct Modeling capabilities, and both are pretty impressive. I don’t usually work in this arena because it feels band-aid ish for fundamental design, but it does have its place, and it is pretty cool.
4. The Mouse:
Both systems are excessively mouse intensive. I’m not sure which approach — Creo vs SolidWorks — is better. Yet, in both there is a ton of moving the mouse from one side of the screen to the other, and from the top to the bottom. The mouse is the most flexible and versatile input device, but it’s also the least efficient.
Certainly, the capability for better keyboard shortcuts (see above) CAN drastically reduce this in Creo IF an operator takes time to customize for efficiency.
That said, SolidWorks has done a lot to help users customize and accelerate — and I applaud the effort — they just miss the obvious.
5. Neither System Plays That Well With Others:
Wouldn’t it be nice if we could choose which system we preferred to work in, then just know that it would also work well with others we need to interact with? Well, things are moving in that direction (sort of). We’ve done some experiments that highlight the progress you can read about in this article on 3D CAD System Interaction. Hopefully both systems will continue to make progress.
6. Software Bugs:
Both systems have a reputation for bugs !! I’m sure it’s hard, yet extermination is just part of the game. There are, however, some important differences in perspective with software bugs.
SolidWorks users seem to expect and tolerate bugs. My experience is SW has more bugs, but Corporate doesn’t seem to care. One engineer at Desault Systems (SolidWorks) told me the pile of bugs is growing faster than the fixes — and has been for a while.
I don’t feel the same “We Don’t Care” attitude from PTC. They are overwhelmed with bugs at times, but they seem care about it. Maybe they’ve been beaten up more by their big customers so they address it more directly? I don’t know.
7. Subscription Only.
It’s unfortunate that both companies follow the worst customer rapist of all — MickySoft — down the path of subscription only. This is customer dis-service for a lot of reasons, but I’ll leave that for another time. Suffice it to say: It saddens me that neither company respects us as customers the way they want us to respect them.
My Suggestions To Both
1. Get with the program and start seeing things from a customer perspective. It is very obvious that your developers don’t use the software they create. That makes it a mess for customers, because developers are then out of touch with real needs, and the impact of bugs.
Am I wrong? How many developers have created and modified a 100+ feature model in the last year? Any?
Have each developer spend one day each month modeling an item they pick up from the toy store. Have them fundamentally change the base features, then solve all the issues that happen. In short, make each developer the end customer for a few days.
2. Think about ease of use.
It’s not the number of mouse clicks, nor right mouse button menus, or shortcuts, or ability to change menu colors. Yes, that’s part of it, yet usability is much more. Usability is only understood by watching and noticing where users spend time looking and fiddling with various parts of the software.
Most important, it’s different for NEW users compared to Experienced ones. The software must be functionally usable for both. In the case of Creo vs SolidWorks, they both have success points, and they both fail in areas. Again, IMHO, the customer has NOT been the focus of either.
Figure out how to be customer focused. Quit the empty lip service and actually do it! Optimize the customer experience so it is focused on their work rather than how to accomplish it.
3. Consider customer use cases, and get the software into their hands.
So, you’ve chosen a subscription only model, use the power of the subscription to provide customer benefits that really help — and further promote the use of your software. This is a big DUH to me.
Set the licensing model to allow customers to “check-out” modules to try them, use them, and become better customers. Sell a variable license for one module that can be “checked” in and out anytime. Let the customer trade Complex Surfacing for Simulation today, and tomorrow trade for Manufacturing. Make it for every module. Customers will try the other modules, accomplish more by using them, then discover they need to purchase more licenses for access to stuff they would not otherwise even try. Simple. Give customers value for forcing them into subscriptions. Help your customer accomplish great things and they’ll reward you with loyalty and more sales.
Creo vs SolidWorks is not an easy choice. I really like a lot about SolidWorks. For me, it comes down to 3 most important things:
- If you want to be really productive, SolidWorks doesn’t compare favorably.
- SolidWorks hasn’t figured out that the customer is important, so they don’t focus on quality software. Really, they don’t treat customers with much respect.
- Creo is awesome in it’s abilities, with way more total capability AND productivity (speed), but to get it all, you pay a fortune. You can’t use all that functionality all the time, but you have to pay for it all the time.
I think it’s terrible that the 3 most important things are “negatives” rather than positives. Am I really choosing between the worst they have to offer instead of the best? That’s a sad insight.
What is a customer to do? That question rages on. Let us know your most important issues.
If you have other opinions, please comment. This is the Engineer’s Perspective, and we fully recognize that you may have a different and equally valid opinion. Please take a minute and let us know.