遇到一个问题,块内对象的包围盒居然获取异常,请教下大佬们如何解决?
 - (defun c:gg()
- (setq blocks(vla-get-Blocks(vla-get-ActiveDocument(vlax-get-acad-object))))
- (setq en(car(entsel "选取一个图元:")))
- (setq obj(vlax-ename->vla-object en))
- (if(setq blkDef(vla-Item blocks(vla-get-Name obj)))
- (vlax-for x blkDef
- (if(equal(get_rgb x)'(0 0 0))
- (progn
- (vla-put-Color x 2)
- (vla-GetBoundingBox x 'minp 'maxp)
- (setq box(list(vlax-safearray->list minp)(vlax-safearray->list maxp)))
- )
- )
- )
- )
- (entmakex(list '(0 . "LINE")(cons 10 (car box))(cons 11(cadr box))))
- (print a)
- (princ)
- )
- ;---获取对象RGB值表
- (defun get_rgb(obj / c)
- (setq c(vla-get-TrueColor obj))
- (list
- (vla-get-Red c)
- (vla-get-Green c)
- (vla-get-Blue c)
- )
- )
|