明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1178|回复: 6

求帮助修改小程序,感激!

[复制链接]
发表于 2019-3-21 16:07:42 | 显示全部楼层 |阅读模式
20明经币
本帖最后由 lxb9721 于 2019-3-21 16:23 编辑

  1. (defun C:EE ( / #g1 &kw &ss1 ent x)
  2. (if (and
  3.   (setq ent (entsel "\n请选择封闭的多段线"))
  4.   (setq ent (car ent));图元
  5.   (setq #g1 (entget ent));属性
  6.   (= (cdr (assoc 0 #g1)) "LWPOLYLINE");分析是多段线
  7.   (= (cdr (assoc 70 #g1)) 1);判断是封闭
  8.   (setq &ss1 (mapcar 'cdr (vl-remove-if '(lambda (X) (/= 10 (car x))) #g1)));多段线上的点
  9.      )
  10.   (progn
  11.    (if (setq &kw (ssget "wp" &ss1))
  12.    ;框选择 包含在框内的及和框相交的被选择;如果要窗选【cp】修改为【wp】即可
  13.     (setq &kw (ssadd ent &kw))
  14.     (progn
  15.      (setq &kw (ssadd) &kw (ssadd ent &kw))
  16.     )
  17.    )
  18.    (command "erase" "all" "r" &kw "")
  19.   )
  20. )
  21. (princ)
  22. );
  23. ;
根据删除后框内数据,计算最大值和最小值,平均值。

file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image002.gif



 楼主| 发表于 2019-3-22 10:03:48 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2019-3-22 10:19:32 | 显示全部楼层
回复

使用道具 举报

发表于 2019-3-23 23:26:31 | 显示全部楼层
本帖最后由 1291500406 于 2019-3-24 00:41 编辑

(defun C:bb(/ lss en enlist)(setvar "cmdecho" 0)(setq en (car (entsel"\n必强提示:选择多段线\n")))
(if en(command "pedit" "M" en "" "C" ""))(setq enlist (entget en))(setq lss (mapcar 'cdr (vl-remove-if '(lambda (x) (/= 10 (car x))) enlist)))
(Setq bbsssetfirst (ssget "WP" lss '((0 . "TEXT")(1 . "~*[~`--9]*"))) )(sssetfirst nil bbsssetfirst)(bbaverage_max_min))
(defun bbaverage_max_min()(setq ss (ssget '((0 . "TEXT")))i -1 j 0 m 0)
(setq lst  (mapcar '(lambda (x) (distof (cdr (assoc 1 (entget x)))))
(mapcar 'cadr (cdr (reverse (ssnamex ss)))))lst(vl-sort lst '>)  bbmax (last lst)bbmin (car lst))
(while (setq s1 (ssname ss (setq i (1+ i))))(setq z (cdr (assoc 1 (entget s1))))
(if (setq z (distof z))(progn(setq j (1+ j)m (+ m z)))))
(princ "\n平均值 = ")(princ (/ m j 1.0))(princ "\n最大值 = ")(princ bbmin )(princ "\n最小值 = ")(princ bbmax )(princ))


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复

使用道具 举报

发表于 2019-3-24 01:05:35 | 显示全部楼层
最大最小值有点问题
回复

使用道具 举报

 楼主| 发表于 2019-3-25 13:15:00 | 显示全部楼层
1291500406 发表于 2019-3-23 23:26
(defun C:bb(/ lss en enlist)(setvar "cmdecho" 0)(setq en (car (entsel"\n必强提示:选择多段线\n")))
...

参数类型错误: numberp: nil
回复

使用道具 举报

发表于 2019-3-25 17:31:47 | 显示全部楼层
lxb9721 发表于 2019-3-25 13:15
参数类型错误: numberp: nil

我的CAD02007测试正常
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-18 11:18 , Processed in 0.168321 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表