 - (defun c:tt ( / ar box da db dc dd e h p p1 p1a p2 p2a pa pb w)
- (defun ebox (e / pa pb)
- (Vlax-Invoke-Method (Vlax-Ename->Vla-Object e ) 'GetBoundingBox 'pa 'pb )
- (setq pa (trans (vlax-safearray->list pa) 0 1)
- pb (trans (vlax-safearray->list pb) 0 1)
- )
- (list pa pb)
- )
- (setq da (getreal "\n偏移值A:")
- db (getreal "\n偏移值B:")
- dc (getreal "\n偏移值C:")
- dd (getreal "\n偏移值D:")
- p (getpoint "\n点取区域中心:")
- e (bpoly p)
- ar (Vlax-Get (Vlax-Ename->Vla-Object e) 'Area )
- box (ebox e)
- p1 (car box)
- p2 (cadr box)
- p1a (mapcar '- p1 (list da dd))
- p2a (mapcar '+ p2 (list dc db))
- pa (mapcar '+ p1 (list da dd))
- pb (mapcar '- p2 (list dc db))
- )
- (mapcar 'set '(w h) (mapcar '- p2 p1))
- (if (equal ar (* w h) 1e-8)
- (progn
- (alert "是矩形!")
- (vl-cmdf "rectang" p1a p2a)
- (Vlax-Put-Property (Vlax-Ename->Vla-Object (entlast)) 'Color 1)
- (vl-cmdf "rectang" pa pb)
- (Vlax-Put-Property (Vlax-Ename->Vla-Object (entlast)) 'Color 6)
- )
- (alert "非矩形!")
- )
- (entdel e)
- )
|