明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1659|回复: 7

[源码] 怎么总是提醒缺少参数,谁帮忙改一下,画焊缝的

[复制链接]
发表于 2016-3-29 19:31:54 | 显示全部楼层 |阅读模式
本帖最后由 wyb36870 于 2016-3-29 19:34 编辑

总是提示参数太少,下午的时候还正常运行
(defun C:hf (\ osold)
     (setq osold (getvar "osmode"))
     (setvar "CMDECHO" 0)
     (command "layer" "s" "HF" "")
     (setq pt1 (getpoint "\n输入焊缝的起点 :")
        pt2 (getpoint "\n输入焊缝的终点:")
        h (getint "\n输入焊缝高度的高度:")  
        l (distance pt1 pt2)
        n (fix (/ l h))
        ang (angle pt1 pt2)
        pt3 pt1)
     (setvar "osmode" 0)
     (command ".pline" pt1 "a")
     (repeat (- n 2)
        (command "ce" (setq pt4 (polar pt3 ang h)) "a" "-120")
        (command "d" pt3 pt4)
        (setq pt3 pt4)
   )
     (command "ce" (setq pt4 (polar pt3 ang h)) "a" "-180" "")
     (command "ucs" "p")

     (princ)   
     (setvar "osmode" osold )
)  

发表于 2016-3-30 16:28:03 | 显示全部楼层
  1. (defun C:hf (/ osold)
  2.      (setq osold (getvar "osmode"))
  3.      (setvar "CMDECHO" 0)
  4.         (setlayer_lsp "HF" 8);检查焊缝图层是否存在,没有则新建图层
  5.      (setq pt1 (getpoint "\n输入焊缝的起点 :")
  6.         pt2 (getpoint "\n输入焊缝的终点:")
  7.         h (getint "\n输入焊缝高度的高度:")  
  8.         l (distance pt1 pt2)
  9.         n (fix (/ l h))
  10.         ang (angle pt1 pt2)
  11.         pt3 pt1)
  12.      (setvar "osmode" 0)
  13.      (command ".pline" pt1 "a")
  14.      (repeat (- n 2)
  15.         (command "ce" (setq pt4 (polar pt3 ang h)) "a" "-120")
  16.         (command "d" pt3 pt4)
  17.         (setq pt3 pt4)
  18.    )
  19.      (command "ce" (setq pt4 (polar pt3 ang h)) "a" "-180" "")
  20.         (setvar "osmode" osold )
  21.      (princ)
  22. )
  23. (defun setlayer_lsp(LAY CLR)
  24.   (if (=(tblobjname "LAYER" LAY) nil)
  25.     (entmake (list'(0 . "LAYER")'(100 . "AcDbSymbolTableRecord")'(100 . "AcDbLayerTableRecord")
  26.        '(6 . "CONTINUOUS")(cons 62 CLR)'(70 . 0)(cons 2 LAY)))
  27.     (entmod(subst(cons 62 CLR)(assoc 62(entget(tblobjname "LAYER" LAY)))(entget(tblobjname "LAYER" LAY))))
  28.    ) (setvar "CLAYER" LAY)
  29.   )
回复 支持 1 反对 0

使用道具 举报

发表于 2016-3-29 20:53:47 | 显示全部楼层
(defun C:hf (\ osold)应该是(defun C:hf (/ osold)
发表于 2016-3-30 07:08:56 来自手机 | 显示全部楼层
还真是,这错误挺蒙人的!来自: Android客户端
发表于 2021-3-4 22:33:10 | 显示全部楼层

非常好的程序。
但请问我想把焊缝图层调整到weld图层上,怎么修改,颜色为55.
谢谢。
发表于 2021-3-4 22:57:30 | 显示全部楼层
泉(Ango) 发表于 2021-3-4 22:33
非常好的程序。
但请问我想把焊缝图层调整到weld图层上,怎么修改,颜色为55.
谢谢。

这么有规律的东西,为什么不用线型表示。还省空间。
发表于 2021-3-6 12:27:56 | 显示全部楼层
泉(Ango) 发表于 2021-3-4 22:33
非常好的程序。
但请问我想把焊缝图层调整到weld图层上,怎么修改,颜色为55.
谢谢。

第4行就是图层及颜色
发表于 2021-5-30 14:21:22 | 显示全部楼层
泉(Ango) 发表于 2021-3-4 22:33
非常好的程序。
但请问我想把焊缝图层调整到weld图层上,怎么修改,颜色为55.
谢谢。

(setlayer_lsp "weld" 55)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-23 01:59 , Processed in 0.310862 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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