作为对旧程序的修改:
- (defun c:DimO ( / *error* ocm units prec fac p )
- (vl-load-com)
- ;; © Lee Mac 2010
- (defun *error* ( msg )
- (and ocm (setvar 'CMDECHO ocm))
- (or (wcmatch (strcase msg) "*BREAK,*CANCEL*,*EXIT*")
- (princ (strcat "\n** Error: " msg " **")))
- (princ)
- )
- (mapcar 'set '(fac units prec) (mapcar 'getvar '(DIMLFAC DIMLUNIT DIMDEC)))
- (setq ocm (getvar 'CMDECHO))
- (setvar 'CMDECHO 0)
- (while (setq p (getpoint "\nSpecify Point <Exit> : "))
- (command "_.dimordinate" "_non" p "_T"
- (strcat
- "N " (rtos (* fac (cadr p)) units prec)
- "\\PE " (rtos (* fac (car p)) units prec)
- "\\PEL. "(rtos (* fac (caddr p)) units prec)
- )
- pause
- )
- )
- (setvar 'CMDECHO ocm)
- (princ)
- )
|