试试这个:
{未测试}
- (defun c:Co2Blk (/ pt bEnt bObj)
- (vl-load-com)
- (if (and (setq pt (getpoint "\nSelect Coordinate: "))
- (setq bEnt (car (entsel "\nSelect Block to Update: ")))
- (eq "AcDbBlockReference"
- (vla-get-ObjectName
- (setq bObj (vlax-ename->vla-object bEnt))))
- (eq :vlax-true
- (vla-get-HasAttributes bObj)))
- (foreach att (vlax-safearray->list
- (vlax-variant-value
- (vla-getAttributes bObj)))
- (cond ((eq "XKOORDINAT"
- (vla-get-TagString att))
- (vla-put-TextString att
- (rtos (car pt))))
- ((eq "YKOORDINAT"
- (vla-get-TagString att))
- (vla-put-TextString att
- (rtos (cadr pt))))))
- (princ "\n<!> Incorrect Selection <!>"))
- (princ))
|