马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
这几天一直在找矩形单边拉伸的方面的代码,看到论坛里面有很多,我记得在什么帖子里面看到过一个,et工具自带的函数,可以轻松实现,但是实在是找不到了,下面有源代码,附件是 ET工具函数说明,我汇总过来了,方便需要的同志下载,矩形单边拉伸,主要用于矩形太高的情况,用s拉伸框选不是很方便,新版本已经支持中间点拉伸了
 - (defun c:tt ()
- (setq ent (entsel "\n春婵工具-矩形单边拉伸:"))
- (setq pnt (apply 'vlax-curve-getclosestpointto ent));将对象表传递给函数,并取出点击曲线的两点
- (setq ent (car ent));返回表的第一个函数,转换成vla对象
- (setq pp (fix (vlax-curve-getparamatpoint ent pnt)))
- (setq pa (vlax-curve-getpointatparam ent pp);;节点1
- pb (vlax-curve-getpointatparam ent (1+ pp));;节点2
- )
- (command "_.stretch" "c" "non" pa "non" pb "" "non" pnt)
- )
- ;;; (vlax-curve-getParamAtPoint curve-obj point) 返回曲线在指定点的参数
- ;;; curve-obj
- ;;; 要测量的 VLA 对象
- ;;; point
- ;;; curve-obj.上的三维点表(在 WCS 中
- ;;;
- ;;; fix截去实数的小数部分,将它转换成整数后返回该整数
- ;;;
- ;;; (vlax-curve-getPointAtParam curve-obj param) 返回曲线上具有指定参数值的点
- ;;; param数值,
- ;;; 指定曲线上的参数。
|