autolisp代码统计面积能进行单位换算吗? 10
(defunc:ss(/&k1&kw1a1a2ss1);统计面积(setvar"cmdecho"0)(setvar"blipmode"0)(if(nullvlax-dum...
(defun c:ss ( / &k1 &kw1 a1 a2 ss1);统计面积 (setvar "cmdecho" 0) (setvar "blipmode" 0) (if (null vlax-dump-object) (vl-load-com) );加载vlax函数 (princ "\n请选择要计算面积的对象") (if (setq &kw1 (ssget '((0 . "POLYLINE,LWPOLYLINE,CIRCLE,ELLIPSE,SPLINE,REGION")))) (progn (setq ss1 '() a1 0.0) (while (setq &k1 (ssname &kw1 0)) (setq &kw1 (ssdel &k1 &kw1)) (if (and (setq &k1 (vlax-ename->vla-object &k1));转换为vlax对象 (null (vl-catch-all-error-p (setq a2 (vl-catch-all-apply 'vla-get-area (list &k1))))) );计算面积 (progn (setq a1 (+ a1 a2) );总面积 (setq a2 (rtos a2)) (if (car ss1) (setq ss1 (append ss1 (list "+" a2)));计算公式 (setq ss1 (cons a2 ss1)) ) ) ) );while (princ "\n对象总面积:") (princ (rtos a1)) (princ " ㎡") (princ "\n计算公式为:") (princ (apply 'strcat ss1));显示计算公式 ) ) (princ))
展开
1个回答
展开全部
用 command 命令即 面我随手输入 自调试
(defun c:cla()
(setvar "cmdecho" 0)
(setq SS (+ 1 2))
(command "text" (getpoint "point:") "" "" ss )
(princ)
)
(defun c:cla()
(setvar "cmdecho" 0)
(setq SS (+ 1 2))
(command "text" (getpoint "point:") "" "" ss )
(princ)
)
追问
我是需要把我发的那个程序优化,你给我的并不能实现我想要的功能啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
上海巴鲁图工程机械科技有限公司_
2022-05-15 广告
2022-05-15 广告
增量编码器一般输出信号是两路正交脉冲信号和一路参考信号,之所以叫增量是因为它的位置信号是通过对脉冲计数累加得到,依靠计数设备的内部记忆来记住位置,并且同每圈输出的参考信号来清除累计误差. 缺点就是断电后,需要重新寻找初始位置. 例如打印机扫...
点击进入详情页
本回答由上海巴鲁图工程机械科技有限公司_提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询