本帖最后由 1291500406 于 2019-4-17 17:26 编辑
里面有物体中心坐标,挺好的
只能转一个物体,不能多个,转的是90°,不是180
(defun c:angle ()(setvar "CMDECHO" 0)(vl-load-com)(setq bbang(getreal"\n请输入旋转角度:"))(setq en1 (ssget))
(while (setq s1 (entsel "\n<<选物体中心旋转>>"))(setq en (car s1))(vla-getboundingbox (vlax-ename->vla-object en) 'minpoint 'maxpoint)
(setq pmax (vlax-safearray->list maxpoint) pmin (vlax-safearray->list minpoint))(setq pm (polar pmin (angle pmin pmax) (/ (distance pmax pmin) 2)))
(command ".ROTATE" en1 "" "non" pm bbang)(princ "\n旋转完成!"))(setvar "CMDECHO" 1)(prin1))
旋转一次后命令结束就把(while ...) 去掉 要动态(setq bbang(getreal"\n请输入旋转角度:")) bbang去掉
|