TheSwamp

Code Red => AutoLISP (Vanilla / Visual) => Topic started by: Steve Johnson on April 02, 2008, 09:00:20 AM

Title: Best way to check if object enablers are required
Post by: Steve Johnson on April 02, 2008, 09:00:20 AM
First post, hello everyone!

In my day job, we're getting drawings that have been drawn using apps like AutoPlant, where things like pipes are objects that don't display properly without an object enabler. We need to store the drawings in lowest-common-denominator plain AutoCAD 2000 format, because the drawings need to be distributable to lots of different companies.

Therefore, I need to check for drawings containing object-enabler-dependent objects using an automated process (I'll actually be adding to a rather complex existing drawing-checking routine in written in LISP). The check will need to work both in plain AutoCAD or any variant (e.g. the verticals), and in AutoCAD or any variant, both with and without the object enablers being present. The routine will need to work in at least AutoCAD 2002 to 2009 inclusive.

Has anyone else been there and done that? What's the best way of detecting such dependencies?
Title: Re: Best way to check if object enablers are required
Post by: T.Willey on April 02, 2008, 11:10:07 AM
First welcome to theSwamp Steve.

The only way that I have seen it possible to detect if an object enabler is needed, is if there are proxy objects, or zombie objects, within the drawing.  I don't know how to tell which program created them, so as to know which enabler to download though.  Maybe someone who has worked in such areas more, or has a better working knowledge will chime in soon.
Title: Re: Best way to check if object enablers are required
Post by: FengK on April 02, 2008, 12:51:31 PM
Something like this? (I don't know the entity name pattern for Architectural Desktop, Mechanical Desktop, etc..)

(if (ssget "X" (list (cons 0 "AECC_*")))
  (prompt "\nYou need Civil Object Enabler.")
)

Title: Re: Best way to check if object enablers are required
Post by: FengK on April 02, 2008, 12:54:30 PM
After I posted above, I'm wondering if those objects are named "AECC_*" only if you have object enabler installed. Can someone confirm this? I'd like to avoid uninstalling and reinstalling the object enabler.
Title: Re: Best way to check if object enablers are required
Post by: Dinosaur on April 02, 2008, 06:31:16 PM
Joe Burke spent a great deal of time in THIS THREAD (http://www.theswamp.org/index.php?topic=18153.0) searching for ways to find  these objects for his SUPERFLATTEN program.  Perhaps some of his discoveries will be of use with your project.
Title: Re: Best way to check if object enablers are required
Post by: Steve Johnson on April 02, 2008, 08:49:21 PM
Thank you very much, people!
Title: Re: Best way to check if object enablers are required
Post by: Krushert on April 03, 2008, 07:57:44 PM
Thank you very much, people!

I just stumbled across this form Autodesk (http://usa.autodesk.com/adsk/servlet/ps/item?siteID=123112&id=5911327&linkID=9240657&CMP=OTC-RSSSUP01) which might be of help.  I don't know if this will fit to what you are trying to do.  It sounds like you can skip the whole checking part and just whack it with this.

Oh and welcome to TheSwamp.