#CAD Standards
6 messages in this thread
Rick (and anyone else):
I'm in the initial stages of planning for a drawing audit program which
would "check" a group of drawings for compliance with company CAD
standards.
As I see it, it is virtually impossible to truely check a file for
compliance; I see this program acting to "raise a flag" on potential
problem files.
At the very minimum, it would validate layer names, text styles and
linetypes, probably checking against an external file. I MAY also go as
far as doing some sort of rudimentary entity-to-file size ratio reporting,
check for inappropriate entities on certain layers (LINES on layer TEXT,
for example), or limits/scale checking (to verify reasonable numbers).
I'm curious though. I haven't seen any such product on the market, and I'm
wondering if it's out there but I'm just missing it.
What was your goal with DWGDUMP? Does anyone else have any experience
developing similar procedures and/or programs? Am I missing some critical
items to check?
I'd be willing to share the results of my work, but don't want to reinvent
the wheel.
Thanks,
Jeff Hester
Jeff:
I have written two such beasts… and I don't think I would want to take on
writing one that would work for anyone. If I were going to, I would write a
file that contained a coded line telling AutoLISP what was going to be
checked (e.g. >>LAYER<<) and then set up some rules for formatting the
standards to be checked. I thought that it would run much faster if I wrote
the program for specific user's standards, so I didn't try a universal
approach. I didn't check for layer names, either… I just checked to see
if they fit in a range without matching them to specific lists… because
you can get a whale of a list to check against!
C#
Craig:
I wrote a program about two years ago that checked the layers in a drawing
against an external ASCII file. Any layers not found in the external list
were written to a "report" file. It did the same for blocks, though in
most cases it wouldn't be necessary.
What checks did your audit routine include? I'd like to put together a
list, similar to the "punch list" discussed a while back, but limited to
items that can be checked by and audit program without user-intervention.
The audit routine should be capable of running unattended in batch-mode for
overnight "processing."
The issue of adherance to CAD standards will only continue to grow.
Jeff Hester
Jeff, Craig:
Note that utilities like Mike Dickason's DWGLIST and LISTMENU and Rick
Llewellyn's DWGDUMP can let you do a lot of auditing from DOS, without the
need to load the drawings into AutoCAD. Of course you end up with a text
file which you may need to post-process.
– Mark M.
Jeff:
Well, the last one I did was for a standard that didn't allow nested
blocks, polylines, ellipses, or 3D elements (so I checked for all of those)
and had standard names that were allowed for blocks (so I checked to see
that the names fit within the variables allowed) expects no funky text
types and no preset text sizes (so I… you get the idea <g>), no
associative dimensions, no hatch or otherwise unnamed blocks, and the layer
names were all 5 characters long (I just checked layer name length… there
wasn't a standard set of names, but a standard way that they had to be
named if they were added to the original set).
Also, I checked ALL of the acad variables by using a set of association
lists for the standard, I checked linetypes, and I checked to make sure
that all blocks were inserted on layer 0 but that other entities were not.
All of this was written out to a file with the name xxxx.err where xxxx was
the drawing name. I didn't bother to try to fix everything since this was a
standard that had to be adhered to and the preparers didn't get paid for
fixing their drawings. I was getting paid for writing the routines, though,
so…
C#
Craig:
Sounds similar to what I'm doing. The big exception is that I'll be
checking for specific layer names, probably color and linetype, too.
Did you write your routine in AutoLISP, or did you use one of the
"read-the-DWG" utilities? My feeling is that reading the DWG would be MUCH
quicker, even if it does bother Autodesk. I've never used one of these
utilities. If my memory serves me correctly, there are several available.
Anyone have any recommendations?
Jeff Hester