fengyu6913 发表于 2024-8-6 16:08:16

如何:进行线型加载及重载不报错

如何将线型一次性加载及重载不报错:


"CONTINOUS""CENTER""CENTER2""DASHDOT""DASHDOT2""DASHED""DASHED2""DIVIDE""DIVIDE2""DOT""DOT2""HIDDEN""HIDDEN2"

用线型定义文件:"acad.lin"

yshf 发表于 2024-8-7 07:51:18

(setq linetypes (vla-get-linetypes (vla-get-activedocument (vlax-get-acad-object))))
(mapcar '(lambda(a)
            (if (not (tblsearch "ltype" a))
                  (vla-load linetypes
                            a
                            "acad.lin"; "acadiso.lin"
               )
            )
           )
           (list
               "CONTINUOUS" "CENTER""CENTER2""DASHDOT""DASHDOT2""DASHED"
               "DASHED2""DIVIDE""DIVIDE2""DOT""DOT2""HIDDEN""HIDDEN2"
           )
)
(vlax-release-object linetypes)
(setq linetypes nil)       

gaics 发表于 2024-8-7 08:15:27

本帖最后由 gaics 于 2024-8-7 08:21 编辑

报错内容是什么?


(foreach lt '( "CONTINUOUS" "CENTER""CENTER2""DASHDOT""DASHDOT2""DASHED" "DASHED2""DIVIDE""DIVIDE2""DOT""DOT2""HIDDEN""HIDDEN2")
    (if      (tblsearch "ltype" lt)
      (command "-linetype" "L" lt "acad.lin" "Y" "")
      (command "-linetype" "L" lt "acad.lin" "")
    )
)

fengyu6913 发表于 2024-8-7 12:28:19

yshf 发表于 2024-8-7 07:51
(setq linetypes (vla-get-linetypes (vla-get-activedocument (vlax-get-acad-object))))
(mapcar '( ...

命令: tt nil

yshf大佬,可不可以把这个“nill”的信息去掉呢?

crtrccrt 发表于 2024-8-6 16:24:19

加载acad.lin后,查看数据库,entmakex法,

自贡黄明儒 发表于 2024-8-6 16:45:08

用vl-catch-all-apply 一个一个加载,即使错了(比如没有的线型),后面的照样运行。这是梦想cad天天推荐的方法。你们就是不听,哎。。。。

lijiao 发表于 2024-8-6 20:58:55


这里面有一个cs-run函数可以解决这些问题
比如(/ 5 0)肯定会报错的
(cs-run '/ 5 0)返回值为nil
它对任意函数都适用,出错时返回nil,可以不中断程序

fengyu6913 发表于 2024-8-6 23:05:49

大佬们,给点代码呗!
小白一枚,get不到深奥的内容

黄翔 发表于 2024-8-6 23:52:52

(vl-catch-all-apply '(lambda ()   
   (/ 5 0)
))

lee50310 发表于 2024-8-7 08:18:58

本帖最后由 lee50310 于 2024-8-8 05:34 编辑

fengyu6913 發表於2024-8-6 23:05
大佬們,給點代碼唄!
小白一枚,get不到深奧的內容
有國外lee-mac 的載入線型程式 LoadLinetypesV1-3.lsp



crtrccrt 发表于 2024-8-7 10:30:24

本帖最后由 crtrccrt 于 2024-8-7 10:31 编辑

entmakex直接生成HIDDEN
,
没有判断是否已存在该线型,自行处理吧.
页: [1] 2
查看完整版本: 如何:进行线型加载及重载不报错