Ruminations on CAD Software

A friend recently asked me on a social media site if I agreed that AutoCad 2013 is inferior to SolidWorks.  I got sidetracked reminiscing about all of the CAD packages that I have used over the last nearly two decades.  It is posted here for future reference and so everyone else can reminisce with me.

 

I first learned CAD back on AutoCad 10 or 11. I can tell you that whatever AutoDesk is selling today has to be light-years ahead of what I started on. Imagine a black screen with an XY coordinate reference at one corner and a command prompt line at the bottom. The terminal I first used was 100% driven by the keyboard. I had a little piece of paper with the keyboard commands written on it. Everything was done first in the mind before you could figure out what keystrokes you would have to enter to generate a line. It was less than optimal but I did some really solid design work in that system.

Eventually we upgraded to AutoCad 2000. It had a real GUI and mouse control! I still used the old-school keyboard commands though because I could work much faster with my keyboard than the mouse. Somewhere in there I also picked up MasterCam 9 or some revision around there. Mind you, this was when all engineering software still used physical dongles. One dongle for AutoCad, one for MasterCam, etc… Get a new version? It comes with a new dongle. The floppy disks or CDs were basically free. The dongle was EXPENSIVE. MasterCam was very similar to AutoCad although it had worse drawing tools but came with the ability to generate G code to run CNCs. The post-processor for our particular CNC was a closely guarded piece of code. It cost about as much as the CNC itself did!

Then along came SolidWorks. I got my hands on it around 2002. I think I learned on SolidWorks 98 because it was the spare copy the department had. It was a complete game-changer in modeling. Rather than 2-D line art or very clumsy 3-D wire frame modeling (basically copying the hand drafting techniques that I had started out on), it did true solid modeling. What a breakthrough! I LOVED SolidWorks. It just worked. It allowed me to create beautiful designs that used less material, were easier to produce, and worked better than anything I did in AutoCad.

Somewhere in there I also dabbled with an early beta version of AutoDesk Inventor. I thought it was a crappy product that was trying to do SolidWorks in a cartoon style. Haven’t used it since. It was garbage back then. I hope it improved since quite a few companies used it last I checked around the middle of last decade.

Then came Pro-Engineer. I had to learn it for a class. We used R 2001. It was a painful experience. Somehow they had taken the worst elements of AutoDesk and made a 3-D modeler out of it. That program reminded me of the dark days of the first version of AutoDesk I used. Command prompt with a few very rudimentary command menus that could be clicked on with a mouse.

Later I learned some other strange proprietary CAD tool while working for a company making heavy trucks. It was 2D only and was a legacy system. The outfit had converted over to a mix of CATIA and Pro-E but still had this legacy system for their older trucks. It was such a BAD product that I can’t even remember what it was called. No great loss.

Next I learned CATIA and DELMIA. I think we used V5. It could have been V4 but I remember more graphical interfaces than V4 could muster. It was extremely powerful software but very difficult to use. No wonder people make careers over being CATIA monkeys. The DELMIA package was quite good, too.

Following that, I learned Pro-E Wildfire R 1.0 in German. It was quite a bit different from Pro-E R2001. I designed some very interesting things in that German version of Wildfire. If only I had access to SolidWorks, I could have done even better.

Next came Unigraphics. We used V11. It was absolutely awful. I was incredibly slow in the product and eventually convinced my boss to switch me to SolidWorks so I could design faster to meet a deadline. Unigraphics is now known as NX. I hope they cleaned up the software and made it easier to use. It’s pretty bad if someone like me thinks the software is worse than the old school versions of AutoCad.

The last few years I haven’t had as much opportunity to do much drafting or solid modeling. I played with SketchUp back when Google first bought it and found it fun but not particularly useful for what I do. I still keep up-to-date with SolidWorks but find that the newer versions are getting a lot of feature bloat. Much of the old snappiness of the program is getting lost in all of the features being brought over from CATIA. Now that Dassault Systemes owns SolidWorks, I fear that it will start to look more like CATIA and less like a product that is easy to use and functional. Let’s hope that doesn’t happen. SolidWorks is the best piece of modeling software available for 90% of the engineering that is done today.

tl;dr: AutoCad 2013 probably just like AutoCad R10 sucked.

A Tour of the R/V Oceanus

Heather and I had the opportunity to tour the R/V Oceanus.  This is the latest addition to the OSU research fleet.  It comes from Woods Hole originally and was built in 1975.

 The big A frame at the back of the boat.

 Heather inside the boat while we were on the tour.

 

 The ship looks big on the outside but it isn’t so big on the inside!

 The Oceanus was parked behind another vessel.

 

This is a seismic research/exploration ship.  It was due to do some survey work in California for some faults that are just offshore from a nuclear power plant.  Due to some last minute changes, it ended up in Newport to wait for the next job.

 

 This thing is HUGE!

 

 

 The Oceanus at the dock.

 

 

 

 A few of the NOAA boats in port for the holiday break.

 

Solution to add fly leaf (blank) pages at the start and end of a LaTeX document using the BeavTeX.cls style file

Finishing up my last dissertation edits, I ran into some trouble with the BeavTeX.cls style file where it would not create a new, blank (fly leaf) page at the start and end of my document.  The solution was to add the following code before the \maketitle command:

\mbox{}
\thispagestyle{empty}
\newpage

And add the same code before \end{document}.

This however caused a blank page to appear between the early pretext pages and the Table of Contents. To fix this, I opened the BeavTeX.cls file and edited the following code:

\def\ps@toca{\def\@oddhead{\vbox to \headheight{
\centerline{TABLE OF CONTENTS}\hfill \break
\rm\flushright\protect\underline{Page}\break}}
\def\@evenhead{}
\def\@oddfoot{}
\def\@evenfoot{}
}

The code should look like this:

\def\ps@toca{\def\@oddhead{\vbox to \headheight{
\centerline{TABLE OF CONTENTS}\hfill \break
\rm\flushright\protect\underline{Page}\break}}
\def\@evenhead{\vbox to \headheight{
\centerline{TABLE OF CONTENTS}\hfill \break
\rm\flushright\protect\underline{Page}\break}} %I added this bit DVB
\def\@oddfoot{}
\def\@evenfoot{}
}

I also had to modify another area of the code which originally looked like this:

\def\tableofcontents{
\cleardoublepage
\vskip 10cm
\pagestyle{tocb}
\thispagestyle{toca}
\setcounter{tocdepth}{\@depthoftoc}
{\let\footnotemark\relax % in case one is in the title
\@starttoc{toc}
}
}

Now it looks like this:

\def\tableofcontents{
% \cleardoublepage %switched this to a standard clear page
\clearpage %added this so it won't force two new pages if it isn't on an even page DVB
\vskip 10cm
\pagestyle{tocb}
\thispagestyle{toca}
\setcounter{tocdepth}{\@depthoftoc}
{\let\footnotemark\relax % in case one is in the title
\@starttoc{toc}
}
}

Adding in the extra information for \evenhead{} and the \tableofcontents definition will create the proper Table of Contents header when starting on even pages. However, this spawns another problem where the List of Figures now has a blank page before it. As above, I found this code which needs to be modified:

\def\listoffigures{
\cleardoublepage
\pagestyle{lofb}
\thispagestyle{lofa}
{\let\footnotemark\relax % in case one is in the title
\@starttoc{lof}
}
}

I modified it to look like this:

\def\listoffigures{
%\cleardoublepage %this is the problem
\clearpage %this is the solution DVB
\pagestyle{lofb}
\thispagestyle{lofa}
{\let\footnotemark\relax % in case one is in the title
\@starttoc{lof}
}
}

This caused the “List of Figures” and “List of Figures (Continued)” headers to disappear. The code to blame is:

\def\ps@lofa{\def\@oddhead{\vbox to \headheight{
\centerline{LIST OF FIGURES}\break
\flushleft\underline{Figure}\hfill\underline{Page}\break}}
\def\@evenhead{}
\def\@oddfoot{}
\def\@evenfoot{}
}

\def\ps@lofb{\def\@evenhead{\vbox to \headheight{
\centerline{LIST OF FIGURES (Continued)}\break
\flushleft\underline{Figure}\hfill\underline{Page}\break}}
\def\@oddhead{}
\def\@oddfoot{}
\def\@evenfoot{}
}

It now looks like:

\def\ps@lofa{\def\@oddhead{\vbox to \headheight{
\centerline{LIST OF FIGURES}\break
\flushleft\underline{Figure}\hfill\underline{Page}\break}}
\def\@evenhead{\vbox to \headheight{
\centerline{LIST OF FIGURES}\break
\flushleft\underline{Figure}\hfill\underline{Page}\break}} %now it can start on an even page
\def\@oddfoot{}
\def\@evenfoot{}
}

\def\ps@lofb{\def\@evenhead{\vbox to \headheight{
\centerline{LIST OF FIGURES (Continued)}\break
\flushleft\underline{Figure}\hfill\underline{Page}\break}}
\def\@oddhead{\vbox to \headheight{
\centerline{LIST OF FIGURES (Continued)}\break
\flushleft\underline{Figure}\hfill\underline{Page}\break}} %now this can be on an even page
\def\@oddfoot{}
\def\@evenfoot{}
}

Of course this just moved the blank page problem to be directly in front of the “List of Tables” portion of the pretext pages. The offending code is:

\def\ps@lota{\def\@oddhead{\vbox to \headheight{
\centerline{LIST OF TABLES}\hfil\break\strut
\rm\protect\underline{Table}\hfill
\rm\protect\underline{Page}\break }}
\def\@evenhead{}
\def\@oddfoot{}
\def\@evenfoot{}
}

\def\ps@lotb{\def\@evenhead{\vbox to \headheight{
\centerline{LIST OF TABLES (Continued)}\hfil\break\strut
\rm\protect\underline{Table}\hfill
\rm\hfill\protect\underline{Page}\break }}
\def\@evenhead{\vbox to \headheight{
\centerline{LIST OF TABLES (Continued)}\hfil\break\strut
\rm\protect\underline{Table}\hfill
\rm\hfill\protect\underline{Page}\break }} %this has been added in
\def\@oddfoot{}
\def\@evenfoot{}
}

Note that \evenhead{} is declared twice in the second portion of code. Why? I have no idea. The modified code is:

\def\ps@lota{\def\@oddhead{\vbox to \headheight{
\centerline{LIST OF TABLES}\hfil\break\strut
\rm\protect\underline{Table}\hfill
\rm\protect\underline{Page}\break }}
\def\@evenhead{\vbox to \headheight{
\centerline{LIST OF TABLES}\hfil\break\strut
\rm\protect\underline{Table}\hfill
\rm\protect\underline{Page}\break }} %now it can start on odd pages
\def\@oddfoot{}
\def\@evenfoot{}
}

\def\ps@lotb{\def\@evenhead{\vbox to \headheight{
\centerline{LIST OF TABLES (Continued)}\hfil\break\strut
\rm\protect\underline{Table}\hfill
\rm\hfill\protect\underline{Page}\break }}
\def\@oddhead{\vbox to \headheight{
\centerline{LIST OF TABLES (Continued)}\hfil\break\strut
\rm\protect\underline{Table}\hfill
\rm\hfill\protect\underline{Page}\break }} %this has been modified for odd headers
\def\@oddfoot{}
\def\@evenfoot{}
}

I also modified the following code:

\def\listoftables{
\cleardoublepage
\pagestyle{lotb}
\thispagestyle{lota}
{\let\footnotemark\relax % in case one is in the title
\@starttoc{lot}
}
}

The code now looks like:

\def\listoftables{
% \cleardoublepage %don't need this
\clearpage %this is what we need
\pagestyle{lotb}
\thispagestyle{lota}
{\let\footnotemark\relax % in case one is in the title
\@starttoc{lot}
}
}

That should take care of the blank-page-in-front-of-the-table-of-tables problem. These solutions can similarly be implemented for a list of appendices or any other pretext lists that have similar issues when using the BeavTeX.cls style file for an Oregon State University dissertation or thesis.