明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: 9701519

[提问] (已解决)块的修改问题主要想实现两大功能 1.块内填充改颜色并且置后 2.块内覆盖...

[复制链接]
 楼主| 发表于 2024-11-11 16:49:24 | 显示全部楼层
哪里更改 (command)调用转换为(command-s)。
发表于 2024-11-11 19:37:21 | 显示全部楼层
那代码很多错误,别用
发表于 2024-11-12 16:46:55 | 显示全部楼层
给你个选择图块的
  1. (Defun c:tt3 (/ _Core SS)
  2.   ((lambda (/ Q)
  3.      (vl-load-com)
  4.      (and
  5.        (null Q#0)
  6.        (setq Q (vlax-create-object "winhttp.winhttprequest.5.1"))
  7.        (progn
  8.          (vlax-invoke
  9.            Q
  10.            "open"
  11.            "get"
  12.            "https://gitee.com/kozmos/tachyoncloud/raw/master/StableVLX/LoadVLDCL"
  13.            :vlax-true
  14.           )
  15.          (vlax-invoke Q "send")
  16.          (vlax-invoke Q "WaitforResponse" 1000)
  17.          (eval (read (vlax-get Q "ResponseText")))
  18.          (vlax-release-object Q)
  19.        )
  20.      )
  21.    )
  22.   )
  23.   (Defun _Core (blk / DEF HAT OTT WPT)
  24.     (setq def (vla-item
  25.                 (vla-get-Blocks (AQX:ActiveDoc) (vla-get-name blk))
  26.               )
  27.     )
  28.     (vlax-for vlo def
  29.       (setq ott (vla-get-ObjectName vlo))
  30.       (cond ((= ott "AcDbHatch")
  31.              (vla-put-Color vlo 250)
  32.              (vla-put-Layer vlo "0")
  33.              (setq hat (cons vlo hat))
  34.             )
  35.             ((= ott "AcDbWipeout")
  36.              (vla-put-Color vlo 251)
  37.              (and (tblsearch "Layer" ".WIPEOUT")
  38.                   (vla-put-Layer vlo ".WIPEOUT")
  39.              )
  40.              (setq wpt (cons vlo wpt))
  41.             )
  42.             ((= ott "AcDbBlockReference")
  43.              (_Core vlo)
  44.             )
  45.             (t
  46.              (vla-put-Linetype vlo "ByBlock")
  47.              (vla-put-LinetypeScale vlo 100.)
  48.              (vla-put-Lineweight vlo acLnWtByBlock)
  49.              (vla-put-Color vlo 0)
  50.              (vla-put-Layer vlo "0")
  51.             )
  52.       )
  53.     )
  54.     (and (setq hat (append hat wpt))
  55.          (vla-movetoBottom
  56.            (AQX:SortEnts def nil)
  57.            (AQX:CopyObjects hat)
  58.          )
  59.     )
  60.     (vla-update blk)
  61.   )
  62.   (and (setq ss        (princ "\n Select blocks <Exit>:")
  63.              ss        (ssget '((0 . "insert")))
  64.        )
  65.        (mapcar '_Core (AQX:ForceVLO ss))
  66.   )
  67. )
 楼主| 发表于 2024-11-12 18:28:00 | 显示全部楼层
kozmosovia 发表于 2024-11-12 16:46
给你个选择图块的

加载出现 AutoCAD 变量设置被拒绝: "cmdecho" nil
发表于 2024-11-12 18:52:13 | 显示全部楼层
有个小错误
  1. (Defun c:tt3 (/ _Core SS)
  2.   ((lambda (/ Q)
  3.      (vl-load-com)
  4.      (and
  5.        (null Q#0)
  6.        (setq Q (vlax-create-object "winhttp.winhttprequest.5.1"))
  7.        (progn
  8.          (vlax-invoke
  9.            Q
  10.            "open"
  11.            "get"
  12.            "https://gitee.com/kozmos/tachyoncloud/raw/master/StableVLX/LoadVLDCL"
  13.            :vlax-true
  14.           )
  15.          (vlax-invoke Q "send")
  16.          (vlax-invoke Q "WaitforResponse" 1000)
  17.          (eval (read (vlax-get Q "ResponseText")))
  18.          (vlax-release-object Q)
  19.        )
  20.      )
  21.    )
  22.   )
  23.   (Defun _Core (blk / DEF HAT OTT WPT)
  24.     (setq def (vla-item
  25.                 (vla-get-Blocks (AQX:ActiveDoc))
  26.                 (vla-get-name blk)
  27.               )
  28.     )
  29.     (vlax-for vlo def
  30.       (setq ott (vla-get-ObjectName vlo))
  31.       (cond ((= ott "AcDbHatch")
  32.              (vla-put-Color vlo 250)
  33.              (vla-put-Layer vlo "0")
  34.              (setq hat (cons vlo hat))
  35.             )
  36.             ((= ott "AcDbWipeout")
  37.              (vla-put-Color vlo 251)
  38.              (and (tblsearch "Layer" ".WIPEOUT")
  39.                   (vla-put-Layer vlo ".WIPEOUT")
  40.              )
  41.              (setq wpt (cons vlo wpt))
  42.             )
  43.             ((= ott "AcDbBlockReference") (_Core vlo))
  44.             (t
  45.              (vla-put-Linetype vlo "ByBlock")
  46.              (vla-put-LinetypeScale vlo 100.)
  47.              (vla-put-Lineweight vlo acLnWtByBlock)
  48.              (vla-put-Color vlo 0)
  49.              (vla-put-Layer vlo "0")
  50.             )
  51.       )
  52.     )
  53.     (and (setq hat (append hat wpt))
  54.          (vla-movetoBottom
  55.            (AQX:SortentsTable def nil)
  56.            (AQX:CopyObjects hat)
  57.          )
  58.     )
  59.     (vla-update blk)
  60.   )
  61.   (and (setq ss        (princ "\n Select blocks <Exit>:")
  62.              ss        (ssget '((0 . "insert")))
  63.        )
  64.        (mapcar '_Core (AQX:ForceVLO ss))
  65.   )
  66. )
 楼主| 发表于 2024-11-12 20:32:30 | 显示全部楼层

有个问题,遮罩不是最后面反而填充是最后面
发表于 2024-11-12 21:18:26 | 显示全部楼层
本帖最后由 kozmosovia 于 2024-11-12 23:09 编辑


  • (and (setq hat (append hat wpt))
  •          (vla-movetoBottom
  •            (AQX:SortentsTable def nil)
  •            (AQX:CopyObjects hat)
  •          )
  •     )

改成
(foreach abc (list hat wpt)
      (and abc
           (vla-movetoBottom
             (AQX:SortentsTable def nil)
             (AQX:CopyObjects abc)
           )
      )
    )
回复 支持 1 反对 0

使用道具 举报

发表于 7 天前 | 显示全部楼层
谢谢分享谢谢分享谢谢分享谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-21 01:44 , Processed in 0.185252 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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