CAD Forum - tips, tricks, discussion and utilities for AutoCAD, Inventor, Revit and other Autodesk products [www.cadforum.cz] ARKANCE | CONTACT - CZ | SK | EN | DE

CAD tip CAD tip # 10884:

Question

CAD 
 %  platform  category 
A
If you to find in your utility or menu-macro whether the current drawing is a 2D or 3D drawing file, or whether it doesn't contain any visual entities, you can use the following simple AutoLISP functions (predicates):

;is current drawing 2D? (defun is2D-p () (and (zerop (caddr (getvar "EXTMIN")))(zerop (caddr (getvar "EXTMAX")))) ; Z-boundingbox = 0? ) ;is current drawing 3D? (defun is3D-p () (< (caddr (getvar "EXTMIN"))(caddr (getvar "EXTMAX"))) ; Z-boundingbox ? ) ;is current drawing visually empty? (vl-load-com) (defun isEmpty-p () (vla-regen (vla-get-activedocument (vlax-get-acad-object)) 1) (> (caddr (getvar "EXTMIN"))(caddr (getvar "EXTMAX"))) ; min>max? )

The functions - e.g. (is2D-p) - return the values of T (true) or nil (false) in AutoCAD.

ACAD
100% *CAD
4.5.2016   9055×  
   
this tip shared by ARKANCE experts applies to: AutoCAD ·

See also:
Tip 15090:3DPlot - 3D math surfaces in AutoCAD.
Tip 15089:2DPlot - parametric math curves in AutoCAD.
Tip 14946:Dimensioning the arc length and radius at the same time.
Tip 14650:3D rotation of a DWG object to the target point.
Tip 14477:PurgeAll - automation of DWG file cleaning


Back    All CAD Tips



Have we helped you? If you want to support the CAD Forum web service, consider buying one of our CAD applications, or our custom software development offerings, or donating via PayPal (see above). You may also add a link to your web - like this "fan" link: CAD Forum - tips, utilities, blocks for Autodesk products
CAD: 
OS: 
Categ: 
Text:
 FAQ
  





Please use these tips at your own risk.
ARKANCE is not responsible for possible problems that may occur as a result of using any of these tips.
TOPlist