输入一次拉伸后,默认上一次拉伸的距离
在作图时有很多对象要拉伸相同的长度,使用stretch命令时,在选择完对象,输入了基点后,每次都在再输入相同的长度值(是数字挺多的小数哟,如50.005),很是麻烦!!! 能否实现拉伸长度确定后自动输入???高手帮忙
本帖最后由 yucpp 于 2011-1-15 23:54 编辑
这个是可以实现的。你可以自己编个命令,把stretch命令引用到你的程序里面。把拉伸距离设成一个全局变量,每次要输入拉伸距离的时候就判段这个变量值,并把他作为默认值就可以了。
我按照上面的想法编了一个,你参考下。
;;拉伸不用输入距离程序参考。s_dis_all为全局变量,保存的是默认拉伸距离,不可设置为局部变量
;;使用注意事项:在拾取拉伸基点后,输入拉伸距离时,鼠标十字指针不能停留在基点上
;;这是因为你要给拉伸指定一个方向
(defun c:ss (/ s_dis)
(command ".STRETCH" (ssget) "")
(command (setq BasicPoint (getpoint "\n指定基点:")))
(if (= nil s_dis_all)
(progn
(setq s_dis_all (getreal "\n输入拉伸距离:"))
(command s_dis_all)
)
(progn
(setq
s_dis (getreal
(strcat "\n输入拉伸距离<" (rtos s_dis_all 2 4) ">:")
)
)
(if (= nil s_dis)
(setq s_dis s_dis_all)
)
(command s_dis)
(setq s_dis_all s_dis)
)
)
)
这个很好用,谢谢楼主 的确好用,感谢!! 不错实用,感谢楼主分享!
页:
[1]