明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 662|回复: 1

[基础教程] 参数太多怎么整合 哪位大神能给看看

[复制链接]
发表于 2023-12-11 16:18:22 | 显示全部楼层 |阅读模式
  • (defun c:qw1 (/ ss1 ent ent_list ent_data color layer linetype obj_list result_ss)
  •   (prompt "\n选择一个图形: ")
  •   (setq ss1 (ssget)
  •         ent (ssname ss1 0)
  •         ent_list (entget ent)
  •         ent_data (assoc 8 ent_list)
  •         layer_name (cdr ent_data)
  •         ent_data (assoc 62 ent_list)
  •         color (if (= (cdr ent_data) 256) "bylayer" (cdr ent_data))
  •         ent_data (assoc 6 linetype ent_list)
  •         linetype (if (= (cdr ent_data) 7) "bylayer" (cdr ent_data))
  •   )
  •   (prompt (strcat "\n所选图形的颜色: " color))
  •   (prompt (strcat "\n所选图形所在的图层: " layer_name))
  •   (prompt (strcat "\n所选图形的线型: " linetype))
  •   (setq obj_list (list (cons 62 "bylayer") (cons 8 "0") (cons 6 "bylayer")))
  •   (setq result_ss (ssget "X" obj_list))
  •   (if result_ss
  •     (progn
  •       (sssetfirst nil result_ss)
  •       (prompt "\n选中了所有颜色为\"bylayer\"、图层为\"0\"、线型为\"bylayer\"的对象!")
  •     )
  •     (prompt "\n未找到符合条件的对象.")
  •   )
  • (princ)
  • )






我想用命令"QW1"来运行。当你运行程序后,它会提示你选择一个图形。然后它会获取该图形的颜色、图层和线型,并在命令行上显示出来。接着,它会获取颜色为"bylayer"、图层为"0"、线型为"bylayer"的所有对象,并将它们选中。如果没有找到符合条件的其他对象,则会显示相应的提示信息。目前反馈参数太多咋整 有点困住了

发表于 2023-12-11 16:40:54 来自手机 | 显示全部楼层
11            ent_data (assoc 6 linetype ent_list)

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

本版积分规则

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

GMT+8, 2024-11-25 03:19 , Processed in 0.156015 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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