明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: cqu20104225

分享一个CAD插件自动加载的源码

    [复制链接]
发表于 2020-4-10 14:52:41 | 显示全部楼层
谢谢老师分享,受教了
发表于 2020-4-18 14:31:46 | 显示全部楼层
怎么加载不了ARX格式的程序
发表于 2020-4-18 15:45:54 来自手机 | 显示全部楼层
谢谢楼主老师提供分享!
发表于 2020-8-17 14:15:46 | 显示全部楼层
谢谢分享好用的
发表于 2020-8-23 10:36:39 | 显示全部楼层

看看学习一下
发表于 2020-9-7 09:58:42 | 显示全部楼层
改进一下,你可以编辑放在0楼,拖拽加载,放在那儿都行,不用写路径了



;lsp文件拖入cad绘图区域.能获取 lsp 自身路径
;cad有(command "_.copyhist")同样可以获取加载lsp文件自身路径.而且.路径很长或有空格时同样正确.
;;;xshrimp 2011.7
(vl-load-com)
(OR
xzj-clip-gettxt
(defun xzj-clip-gettxt (/ html result)
    (if (setq html   (vlax-create-object "htmlfile"))   
        (progn
          (setq result
                 (vlax-invoke-method
                       (vlax-get
                          (vlax-get html 'parentwindow)
                          'clipboarddata
                        )
                       'getdata
                       "text"                  
                  )
           )
          (vlax-release-object html)     
          (if (= (type result) 'variant) (vlax-variant-value result)result) ;add
         )
     );end if
    )
)
(defun xzj-CurrentDirectory( / key len nn str str2)  
(while (= (logand (getvar "CmdActive") 1) 1)(command))
(princ "\n")(command "_.copyhist")
(if (setq str(xzj-clip-gettxt))
  (progn
    (setq str2 (strcase str))   
    (setq len (strlen str) nn (- len 2))
    (while        
            (progn
             (setq key (substr str nn 1) nn (1- nn))
             (and (> nn 0)(/= "\"" key))
             )
    )
      (setq str (substr str (+ nn 2) (- len nn 3)))
      (while (vl-string-search "/" str)     (setq str (vl-string-subst "\\" "/" str) ))
      (while (vl-string-search "\r\n" str)  (setq str (vl-string-subst "" "\r\n" str)))      
      ;(alert (strcat "加载文件路径为: " str))
  )
)str
)
;自动加载CAD插件
(defun ll_lsp_autoload ( / str1 str2 ll_lsp_file ll_vlx_file ll_fas_file ll_arx_file i)
  (setvar "cmdecho" 0)
  (setq str1(car(fnsplitl(xzj-CurrentDirectory))))
  (setq str2(vl-string-right-trim "\\" str1))
  (setq ll_lsp_file (vl-directory-files str2 "*.lsp" 1))
  (setq ll_vlx_file (vl-directory-files str2 "*.vlx" 1))
  (setq ll_fas_file (vl-directory-files str2 "*.fas" 1))
  (setq ll_arx_file (vl-directory-files str2 "*.arx" 1))
  (if (or  (/= ll_lsp_file nil) (/= ll_vlx_file nil) (/= ll_fas_file nil) (/= ll_arx_file nil))
    (progn
      (setq ll_lspfile (append ll_lsp_file ll_vlx_file ll_fas_file ll_arx_file))
      (foreach i ll_lspfile (vl-catch-all-apply 'load (list (strcat str1 i))))
    )
  )
  (setvar "cmdecho" 1)
)
(ll_lsp_autoload)
(setq xzj-CurrentDirectory nil)
(princ)
  

评分

参与人数 1明经币 +1 收起 理由
yanchao316 + 1 很给力!

查看全部评分

回复 支持 4 反对 0

使用道具 举报

发表于 2020-9-8 10:27:14 | 显示全部楼层
学习一下,有空也练习练习
发表于 2020-9-8 11:19:42 | 显示全部楼层
顶一下,谢谢分享
发表于 2020-11-24 09:25:16 | 显示全部楼层
wzg356 发表于 2020-9-7 09:58
改进一下,你可以编辑放在0楼,拖拽加载,放在那儿都行,不用写路径了

; 错误: 参数类型错误: VLA-OBJECT ""
请问是怎么回事?
发表于 2020-11-26 10:20:08 | 显示全部楼层
wzg356 发表于 2020-9-7 09:58
改进一下,你可以编辑放在0楼,拖拽加载,放在那儿都行,不用写路径了

有错误啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-25 02:04 , Processed in 0.172614 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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