这是一个快速而肮脏的示例,但它很有效,正确的方法是拾取对象并找到参数化DIM。方法是使用要更改的变量(例如“d1”“d4”“d5”)生成一个可以多次运行的defun
- ; example of changing constraint dim "d1"
- (defun c:test ( / ss obj)
- (setq ss (ssget '((0 . "dimension")))) ; pick all dims
- (repeat (setq x (sslength ss))
- (setq obj (vlax-ename->vla-object (ssname ss (setq x (- x 1)))))
- (If (= (vla-get-DimConstrName obj) "d1") ; get the dim prefix need to know which one etc to change
- (vla-put-TextOverride obj (strcat "d1=" (getstring "Enter value "))) ; redo string etc with correct prefix
- )))
|