明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1519|回复: 9

,求助!选择集问题

[复制链接]
发表于 2012-12-19 22:11:46 | 显示全部楼层 |阅读模式
本帖最后由 yaokui25 于 2012-12-19 22:17 编辑

小弟初学,请教的问题对大家来将也许很简单,希望大家不要见笑
代码要求条件如下:
1,选择A 图层的含等号文字    “ *=*”
2,选择B 图层的含 123 的数字      “ *123*”  
3,选择B 图层的标注和Line

选择之后,分别归到不同的图层内 比如说 c  d  f  图层
小弟也试着写了代码,可是分别选择3次之后,才能执行命令
如何实现只选择一次,然后执行命令呢
代码在公司电脑上,如果需要明天奉上

求大侠指点迷津


"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2012-12-19 22:53:49 | 显示全部楼层
<4>、 “选择集中根据实体类型筛选实体及代码优化”>>>当你遇到选择集要分出不同类别进行分类处理,此贴必看
 楼主| 发表于 2012-12-19 23:15:34 | 显示全部楼层
wowan1314 发表于 2012-12-19 22:53
、 “选择集中根据实体类型筛选实体及代码优化”>>>当你遇到选择集要分出不同类别进行分类处理,此贴必看

这么晚了,谢谢您的您的回复
说真的我确实也想学习一下LISP
但是苦于上学的时候学的是日语,英文完全不懂,自己写个代码也是东凑西凑得
太费劲了,有时也想好好学习一下,可是看到那么多英文字母头都大了,哈哈
 楼主| 发表于 2012-12-20 06:10:24 | 显示全部楼层
早早起来第一件事,就是打开电脑,看看有哪位大侠为我解决了问题
够敬业吧,哈哈
发表于 2012-12-20 08:04:07 | 显示全部楼层
游客,本帖隐藏的内容需要发帖数高于 5 才可浏览,你当前发帖数只有 0
 楼主| 发表于 2012-12-20 09:47:57 | 显示全部楼层
本帖最后由 yaokui25 于 2012-12-20 10:10 编辑
ZZXXQQ 发表于 2012-12-20 08:04
[/post]


谢谢您的回答
还有一点小小要求点
我想实现一下选择的东西可以随层
现在选择的东西却是暗我所想的归层了,可是颜色没改变
上面的问题,我自己解决了,再次谢谢您

不过为什么我自己写的代码却实现不了,您能帮我看看吗,代码很丑,初学,不要见笑

(defun c:J_SS (/)
  (setq ss1 nil ss2 nil ss3 nil)
  (if (setq ss1 (ssget '((0 . "DIMENSION,line,arc,*text")(8 . "A,B" ))))
    (progn
      (setq ss2 (ssget "p" '((0 . "*text")(1 . "*=*,")(8 . "A" ))))
      (setq ss3 (ssget "p" '((0 . "line,arc")(8 . "B" ))))
      (command "select" ss1 "")
      (setq ss1 (ssget "p" '((0 . "DIMENSION")(8 . "B" ))))
    )
  )
  (if (/= (sslength SS1) 0)
(command "_.chprop" ss1 "" "_color" "_bylayer" "")
)
  (if (/= (sslength SS2) 0)
(command "_.chprop" ss2 "" "_color" "_bylayer" "")
)
  (if (/= (sslength SS3) 0)
(command "_.chprop" ss3 "" "_color" "_bylayer" "")
)
  (if (/= (sslength SS1) 0)
(command "Chprop" SS1 "" "layer" "C" "")
)
  (if (/= (sslength SS2) 0)
(command "Chprop" SS2 "" "layer" "D" "")
)
  (if (/= (sslength SS3) 0)
(command "Chprop" SS3 "" "layer" "E" "")
)
)
发表于 2012-12-20 10:13:04 | 显示全部楼层
  1. (defun c:tt1()
  2.   (setq ss0(ssget '((-4 . "<or")
  3.         (-4 . "<and") (8 . "A") (1 . "*=*") (-4 . "and>")
  4.         (-4 . "<and") (8 . "B") (1 . "*123*") (-4 . "and>")
  5.         (-4 . "<and") (8 . "B") (0 . "LINE") (-4 . "and>")
  6.         (-4 . "or>")
  7.        )
  8.      )
  9.   i -1
  10.   )
  11.   (repeat (sslength ss0)
  12.     (setq i (1+ i)
  13.     en(ssname ss0 i)
  14.     et(entget en)
  15.     )
  16.     (if (assoc 62 et)
  17.       (setq et (subst '(62 . 256) (assoc 62 et) et))
  18.     )
  19.     (if (= (strcase (cdr (assoc 8 et))) "A")
  20.       (entmod (subst '(8 . "c") (assoc 8 et) et))
  21.       (if (= (cdr (assoc 0 et)) "LINE")
  22.   (entmod (subst '(8 . "e") (assoc 8 et) et))
  23.   (entmod (subst '(8 . "d") (assoc 8 et) et))
  24.       )
  25.     )
  26.   )
  27.   (princ)
  28. )
发表于 2012-12-20 19:09:28 | 显示全部楼层
注意大小写。
  1. (defun c:J_SS (/)
  2. (setq ss1 nil ss2 nil ss3 nil)
  3. (if (setq ss1 (ssget '((0 . "DIMENSION,LINE,ARC,*TEXT")(8 . "A,B")))) (progn
  4.   (setq ss2 (ssget "p" '((0 . "*TEXT")(1 . "*=*")(8 . "A" ))))
  5.   (setq ss3 (ssget "p" '((0 . "LINE,ARC")(8 . "B"))))
  6.   (command "select" ss1 "")
  7.   (setq ss1 (ssget "p" '((0 . "DIMENSION")(8 . "B"))))
  8. ))
  9. (if (/= (sslength SS1) 0)
  10.   (command "_.chprop" ss1 "" "_color" "_bylayer" "")
  11. )
  12. (if (/= (sslength SS2) 0)
  13.   (command "_.chprop" ss2 "" "_color" "_bylayer" "")
  14. )
  15. (if (/= (sslength SS3) 0)
  16.   (command "_.chprop" ss3 "" "_color" "_bylayer" "")
  17. )
  18. (if (/= (sslength SS1) 0)
  19.   (command "Chprop" SS1 "" "layer" "C" "")
  20. )
  21. (if (/= (sslength SS2) 0)
  22.   (command "Chprop" SS2 "" "layer" "D" "")
  23. )
  24. (if (/= (sslength SS3) 0)
  25.   (command "Chprop" SS3 "" "layer" "E" "")
  26. )
  27. )
 楼主| 发表于 2012-12-20 21:02:45 | 显示全部楼层
ZZXXQQ 发表于 2012-12-20 19:09
注意大小写。

谢谢,老大
谢谢您的帮助
初学,很多东西都不懂
嘿嘿~
 楼主| 发表于 2012-12-21 12:15:42 | 显示全部楼层
ZZXXQQ 发表于 2012-12-20 19:09
注意大小写。

版主您好
你昨天修改过的代码我使者执行了一下,有问题,执行不可
原因不明,您能再帮我看一下吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-3 09:39 , Processed in 0.218206 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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