Deelip.com

Friday, March 30, 2007

User Friendly Upgrades

Today's Rhino newletter reads:

"Now that Rhino 4.0 is shipping, the beta will expire for the last time on 30-April-2007. Upgrades are available worldwide in 11 languages from more than 700 dealers in more than 70 countries. Upgrades are US$/€295 until May 31, 2007.

Of course, if you don't think there are enough new features and enhancements to make the Rhino 4.0 upgrade a great value, you are welcome to wait for the next release. There is no financial penalty."

Sounds like something I said in an earlier article.

I have always like the way McNeel has worded their mission statement: "To enrich its clients, employees, suppliers, community and stockholders – in that order."

Saturday, March 24, 2007

SpaceClaim EULA - Follow Up

In an earlier article I wondered why SpaceClaim was not interested in providing support for their software three months after a new version was released. Three months seems to be too short a time when compared to other CAD vendors who offer support for 2 or 3 versions, which amounts to 2 to 3 years. Here is their response.

==================
"SpaceClaim’s licensing model and product lend itself to a 3 month support overlap. The annual lease licensing model means every customer is entitled, at no additional charge, to upgrade to new versions. This eliminates the cost objection to upgrades. The product data model, where there is no regeneration requirement, eliminates the risk of model failure when upgrading to a new version. This is typically a major reason why customers choose not to upgrade. In addition, our installation model reduces the administration overhead of doing an upgrade since upgrades are available to each user through a download over the web. Finally, our collective industry experience has shown that supporting old versions takes resources away from delivering new versions that offer additional value to every customer.

Of course, many other reasons why customers go to Support, such as answering usability questions, access to the knowledge base, enhancement requests are version independent."
==================


I understood a part of the response. I am still trying to figure out the part in bold. I thought people chose not to upgrade because they saw no new features that they would want. And why should they? It's not their fault that the software developer could not add anything substantial (with respect to their needs) to the new version of the software.

I never liked the idea of software subscription. Why should everyone be "forced" to upgrade their normal car engines to Formula 1 engines just because someone spent lots of money to develop them. Let the cost of developing the Formula 1 engines be shared by the people who want to race. The catch here is that the racers are few and may not be able to afford their share of R&D costs. That's why spreading the cost over everyone seems to be an easier alternative. Whether this is fair or not depends on which side of the argument you are.

I think it's unfair. Take the electronics industry for example. When a new gizmo is launched it is priced ridiculously high. But there are buyers for it, the early adopters, those who feel the need for the new features or it's status value. They are the ones who bear the brunt of the R&D costs, and rightly so. Six months down the line, the price drops down to reasonable levels. That is when other people buy the product because they feel that the price is worth it. It would be unfair to them if a situation was created wherein it would be more economical for then to pay for something they they did not want. Money does not grow on trees.

I agree that supporting old versions takes resources away from creating newer and better software. But I believe software developers have to factor this while pricing their software. The reason we charge 195 USD for a file translator plug-in for AutoCAD (which, by the way, is not too much) is because we still develop and provide support for AutoCAD 2000, which was retired way back in 2004. In fact, AutoCAD 2000 users still purchase our plug-ins and are thankful that we still develop for their version. Developing a plug-in for AutoCAD 2000, 2000i, 2002, 2004, 2005, 2006, 2007 and 2008 (I could have said 2000 to 2008, but I didn't) requires a lot of planning, possibly re-writing, since AutoCAD has changed a lot over the years. Making the same code work for all versions requires a lot of adjustment. But we do it because we understand that plug-ins are often vital links in a user's workflow. We respect a customer who wants to stick to the older version of his software. He has every right to do so and we have every duty to support him when he needs our help.

I realize that we would be making much more money if we retired our AutoCAD plug-ins along with Autodesk's AutoCAD retirement schedule. But money is not everything. I prefer building mutually benefitting relationships not just making new customers or holding back old ones. Relationships bring in much more money in the long run. So many customers of our off-the-shelf products have come back to us to develop customized software or plug-ins specific to their company's needs.

Coming back to SpaceClaim, I believe they are in a position wherein they need to put their best foot forward. You do not get a second chance to make a first impression. Beginning with a subscription based sales model is a non-starter for a company that is starting up, whatever be their excuse. Subscription usually works for companies that have a firm grip on the market. Add a "three month support overlap", or whatever they call it, and you are sending out a wrong signal. I wish them well. I hope to develop plug-ins for SpaceClaim one day and when that happens my customers will get much more than three months support.

Tuesday, March 20, 2007

Spaceclaim EULA

Section 3 (c) of the Spaceclaim EULA reads:

Limits With Respect to Earlier Production Versions. In no event will SpaceClaim be obligated to provide support with respect to a production version of the Software more than three (3) months after a subsequent production version of the Software has been released by SpaceClaim. Production versions will be identified by the year following the product name (e.g., "SpaceClaim Professional 2007"). A new production version within the same year will be designated by a "+" appended to the year (e.g., "SpaceClaim Professional 2007+”). SpaceClaim shall be the sole determinant of what constitutes a new production version.

Only 3 months? I thought the fashion nowadays was to only support 2 or 3 versions earlier than the current one.

Monday, March 19, 2007

Spaceclaim - Real or Marketing Strategy?

“I’ve never had the time to learn the CAD system my designer uses. Instead, I rely on him to make all the changes for me. A 3D system that I could use without much training saves both of us a lot of time.” - reads a box item in the Spaceclaim White Paper, titled "3D Rising: Engineers harnessing the full power of 3D".

Spaceclaim seems to be targeting what they call the "extended development team", who, according to the author, are "those responsible for downstream functions from manufacturing to field engineering, as well as upstream functions involved in conceptual design and engineering." So that leaves out the "product designers" who, according to the author, are "highly-specialized CAD operators using a parametric modeling system like Pro/ENGINEER, SolidWorks, CATIA, NX or Inventor."

I have not yet seen Spaceclaim Professional 2007 in action, so I cannot comment on it's capabilities. But something tells me that there may be more to it than what is being presented. I find it hard to believe that company whose CEO co-founded SolidWorks and PTC, was as a CEO of Spatial Corp. and CTO of Dassault Systèmes would be interested in making software for the "extended development team". Maybe what Spaceclaim is claiming is true, but maybe, just maybe, this is a way to get to the product designers.

I have seen this happen earlier. When McNeel launched Rhinceros they started out by marketing Rhino as a "companion" product - companion to a user's existing CAD system, mainly AutoCAD. I guess they realised at the start that asking someone to dump their existing CAD system all of a sudden and adopt theirs was not an easy things to do. The "companion" tag allowed them to slowly push Rhino into the user's workflow.

Over the years many users have dumped AutoCAD and moved over to Rhino. I know this because I have written plug-ins for them to do the things that AutoCAD could and Rhino couldn't. McNeel's user friendly upgrade policy and Rhino's low cost have only added to this. Also, over the years, I have consistently seen a change in McNeel's marketing strategy. They are gradually shedding the "companion" tag and are portraying Rhino as a full blown CAD system, which indeed, it is.

Maybe we will see the same thing happen with Spaceclaim as well. At this point in time, they are trying to woo the "extended development team". But it would be naive to think that they do not have the designers in mind.

In the white paper the author describes a case wherein a company is introducing a new hand-held electric drill. The conceptual design group uses a 3D modeler (such as Spaceclaim, I presume) to create a sleek and trendy looking concept model. Then manufacturing uses the 3d modeler is used to "tweak" the designer's model to accomodate existing tooling. The analysis engineer uses the 3d modeler to quickly remove the rounds before analyzing it. Marketing uses the 3d modeler to get input on the early design from focus groups and key retailers.

I guess you must have noticed in the above case that the designer and his CAD system are sandwiched between the 3d modeler used in the concept stage on the one hand and the same 3d modeler used downstream in manufacturing, analysis, marketing and whatever comes after designing. I feel that this is a perfect recipe for disaster as there will be different versions and variations of the same model edited by different people floating around at the same time, not only in the company but also among suppliers, contractors, etc. Probably something like the Airbus fiasco.

It will take just one such event for the top management in any company to have a meeting wherein someone yells, "I'm sick and tired of hearing this CAD software crap. If you are using Spaceclaim before and after designing then why can't the freaking designers use Spaceclaim as well? What's is so damn special in this other software that the designers can't do without? ... And don't even think of asking me to purchase licenses of that designer's expensive software for everone else. Thanks to this 3D-modeling-for-everyone crap we are already in the red. ... Ok, now we have to decide how many workers we need to fire to keep this company in business."

Monday, March 12, 2007

Animal CAD

I always wondered why Robert McNeel & Associates have named all their software after animals. Their NURBS modeling software is called Rhinoceros. Flamingo is their photorealistic rendering plug-in for Rhino. Penguin is their sketch/cartoon rendering plug-in for Rhino (and AutoCAD as well). Bongo is their animation plug-in for Rhino. It's no surprise that their workgroup license managing software is called the Zoo.

How all this came about is as interesting as their software. Apparently, McNeel had another name for Rhino but were having trademark problems with it. The in-house code name for the project was Rhino, based on one of the programmers having a poster on the wall of the Dürer woodcut of a Rhino (see image below). Since they couldn't use the other name and they wanted to get the beta out, they stuck with Rhino. It worked well for them since nobody forgot the name or confused it with other 3D products. So they just kept using more animal names.

Friday, March 09, 2007

Acrobat 3D 8 and Data Exchange

My recent articles regarding Acrobat 3D 8 have resulted in some interesting comments from readers. Some readers are of the opinion that Acrobat is not meant for Data Exchange and are suggesting that I should focus my review on other things.

Let's get something straight. With Acrobat 3D 8, Adobe is in the Data Exchange business, whether you like it or not. The Adobe presenter was quite clear on this in
his briefing. One slide in his presentation was titled "CAD Data Interoperability", which contained phrases like "Eliminate the need to buy expensive CAD translators" and "Convert virtually any CAD format to a neutral format such as STEP or IGES".

Moreover Acrobat has a "3D Convert Setting" called "Data Exchange" whose description is: The Data Exchange conversion settings are recommended for CAD data interoperability. Using this preset will allow exporting the converted CAD data in PDF to neutral formats such as STEP and IGES.

It's naive to think that a software which can read
these many file formats is not going to be used for data exchange. I have been in the data exchange business long enough to realize that users will do just about anything to read in data in whatever format it may be. I have even written software that recreates geometric objects from plot files and NC programs.

The reason I am focussing on data exchange in Acrobat is because I happen to know something about it. I will leave it to others discuss other aspects of Acrobat 3D 8.

Thursday, March 08, 2007

Wireframe, Measurement and Collaboration

Michael Kaplan, Director of Engineering for Acrobat 3D, clarified some of the issues I raised in my First Impressions. I mentioned that "many proprietary formats cannot be imported as NURBS". I stand corrected. Indeed they can, but I think I need to clarify what led to the confusion.

I created a simple cylinder in SolidWorks and saved it to a part file which I then imported into Acrobat. Acrobat warned me that the document would contain precise B-rep surfaces and that I should use its security mechanism to control access of the resulting PDF file. Surely enough the model came in shaded like a solid. But I know that a shaded model is actually a bunch of colored triangles, the render mesh. I wanted to see the actual NURBS data, more specifically, the smooth edge curves. So I changed the mode to wireframe. I was surprised to get the same bunch of triangles in the wireframe as well. No smooth curves, just dumb triangles.

What followed was a good twenty minutes of my time spent in tweaking various import options to find the "precise B-rep surfaces" that Acrobat had warned me about. No joy. No matter what I tried I couldn't get Acrobat to show me the two smooth circles that made up the cylinder.


I decided that I must be doing something wrong because I could not believe that wireframe could mean the render mesh. So I opened Adobe's demo PDF file, a striking product brochure of a gas turbine engine with animation and all. I switched to wireframe and got the same render mesh.

I am now assuming that Adobe's interpretation of the word "wireframe" means the render mesh that is used to display the model as a solid, something quite different from what we in the CAD industry know it to be. Like Ralph Grabowski commented to my earlier post, maybe "Adobe does not fully understand the CAD market yet and its rather particular demands".

A little shaken, I then decided to verify whether Acrobat really had access to the B-rep data. I exported the cylinder to a neutral 3d format (IGES) and got it back into SolidWorks. Sure enough, it came in as a B-rep. So the PDF file indeed has the B-rep information, just that Acrobat is not showing it. At least I could not find a way to see it. All I see is a bunch of stupid triangles which make the model look like one big mess of criss crossing lines.

Another thing which struck me was Acrobat's measurement tool. Everyone knows that engineers are paranoid about dimensions and tolerances. They talk about microns as if they were miles. I am not sure they are going to be happy when they come to know that Acrobat's measurements are based on the same render mesh that they call "wireframe". If I want to measure the distance between a point and the mid point of an edge curve, I have to hope that the render mesh has a vertex at the mid point of the edge curve in question and then successfully find that vertex in the crazy maze of vertices of the "wireframe".

Acrobat has something called "3D Conversion Settings", which are essentially preset file import options which users can select depending on their need. One such setting, called "Collaboration", caught my attention. The description for this setting is: The Collaboration conversion settings are recommended for 3D-based collaboration workflows. Using this preset will increase the precision of the measurement tool.

Here "increase the precision" essentially means that the "surface triangulation" is set to high, which means that you will get a larger render mesh to take measurements from thereby increasing your chance of taking wrong measurements, thereby defeating the very purpose of collaboration.

I am not quite sure what Adobe's view of collaboration is. You just cannot give an engineer down in manufacturing a mesh (however fine and hence unmanageable it may be) and expect him to "collaborate" effectively with an engineer in the design department. He needs to know distances, angles, surface curvature and continuity, etc. precisely, from a NURBS model, not based on some stupid render mesh. A 3D model is not any ordinary document like a purchase order, and I feel Adobe needs to realize that.

Probably people down in marketing will be excited to have access to a 3D model, something which was limited to engineers. Acrobat also has a mode called "Shaded Illustration" which may be useful to techical artists. A 3D model will surely look great in a product brochure, where a customer will be able to rotate, zoom, pan and even section the model. Their 3D PDF demo of a gas turbine engine brochure is truly amazing. I am assuming that when Adobe says collaboration they mean collaboration between the technical team on the one hand and the non-technical guys on the other. I can see no meaningful technical collaboration with this version of Acrobat.

But this one takes the cake. There is no "zoom window". No, wait. Let me rephrase that. I could not find how to zoom into a window of the drawing view. Come on. Any decent 3D application has an option to zoom into a window. You surely do not expect users to zoom into the drawing along the line of sight, then pan to change the line of sight, zoom a little more, pan a little more, and so on, till they finally reach the window they want to zoom to. Interestingly, there is a zoom window feature, but it works only for the text portion of the PDF file. For the 3D portions it acts like a zoom in/out along the line of sight.

A lot has been done and a lot needs to be done. I hope someone at Adobe takes this as constructive criticizm and acts on it. They simply have to get the words "wireframe", "measurement" and "collaboration" right. It is vital for Acrobat 3D 8 to be a success.



Update (10-Mar-2007)

Michael Kaplan clarified in a comment to another post that Zoom Window does exist. For a 3D part of a PDF file, you need to click-drag the zoom window using the right mouse button, not the left. This is because the left mouse is used to zoom in/out. For the text parts you have to use the left mouse button to select the zoom window and zoom in/out. Pretty confusing. I feel Adobe should find a consistent way to navigate through the entire PDF file.

Wednesday, March 07, 2007

Acrobat 3D Version 8 - Part 3 (First Impressions)

Nothing like a small vacation to refresh the mind. I returned to find that, as promised, Adobe had sent me a beta of their Acrobat 3D 8 software. After firing it up the first thing I did was to test their 3D file importers. File->Create PDF->From File brings about the File Open box. I was amazed to find that I could import these many 3D file formats.

3D Studio ASC (*.asc)
3D Studio MAX ASCII (*.ase)
3D Studio Mesh (*.3ds, *.prj)
3DXML (*.3dxml)
ACIS (*.sat, *.sab)
Autodesk AutoCAD (*.dwg, *.dwf, *.dst)
Autodesk DXF (*.dxf)
CADDS (*.cadds, *._pd, *.pd)
CATIA V4 (*.model, *.dlv, *.exp, *.session)
CATIA V5 (*.catproduct, *.catpart)
CGR (*.cgr)
I-DEAS (*.mf1, *.arc, *.unv, *.pkg)
IGES (*.iges, *.igs)
InDesign (*.indd)
Inventor (*.ipt, *.iam)
JT (*.jt)
Lattice XVL (*.xv3, *.xv0)
Lightwave (*.lw, *.lwo, *.lws)
Microstation CAD Graphic (*.dgn)
NX (Unigraphics) (*.prt)
OneSpace Designer (*.pkg, *.sdp, *.sdpc, *.sdw)
Parasolid (*.x_t, *.x_b)
PRC (*.prc, *.prd)
Pro/ENGINEER (*.prt, *.xpr, *.asm)
Rhinoceros 3D Model (*.3dm)
Right Hemisphere (*.rh)
Softimage XSI (*.xsi)
Solid Edge (*.par) ........ surprisingly no *.asm???
SolidWorks (*.sldprt, *.sldasm)
STEP (*.step, *.stp)
STL (*.stl)
Universal 3D (*.u3d)
VRML (*.vrml, *.wrl)
Wavefront Object (*.obj)

Judging by how Acrobat imports 3D files, I get the impression that Adobe is more interested in having PDF files contain tesselated models only. Many proprietary formats cannot be imported as NURBS, even if I set the "3D conversion settings" to "Data Exchange". However, I may be doing something wrong here.

The DWG import feature is a disaster. Like the earlier version, Acrobat tries to start "the application that created the selected document", something which comes with its own set of problems. DXF file import is direct like the others. I do not expect Autodesk to license their RealDWG library to Adobe so that Acrobat can import DWG files decently. The Open Design Alliance may be able to help here.

As regards exporting to 3D formats, one would expect Acrobat, like any other 3D application, to have an "Export" menu item in the "File" menu. It does. But there is no way to export to a 3D format from there. You have to right click on the model and then select "Export Data", which, by the way is present only if the model is a NURBS model. If the model is a mesh then you have to choose "Edit in 3D Toolkit" which opens the mesh in another application called Adobe Acrobat 3D Toolkit from which I could find a way to save only U3D files.

These are my first impressions. I am sure there are easier ways to do the things I am trying to do, but they do not seem apparent. I am not the kind of guy who has the time to sit and go through tutorials. I install a software, fire it up and expect the most simplest things (such as file import and export) to be pretty simple and straightforward. But I guess Acrobat is not meant for data exchange and, in its present state, is surely not designed to be used as such.

I have to play around more to figure out how Acrobat treats 3D data, be it tesselated or NURBS.

More later.