乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
楼主: foster5476

[编程交流] Lisp编码帮助

[复制链接]

2

主题

15

帖子

13

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 17:37:48 | 显示全部楼层
我试图,但我似乎不能插入kpblc代码到我的更正它。非常新的编码。
 
你介意帮忙把它放在哪里吗。很长时间以来我一直在处理这个问题。我本不想寻求帮助,但我觉得自己像个水蛭,我真的迷失了方向。
 
 
 
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 17:41:43 | 显示全部楼层
对不起,我的观点是,我们需要查看txt1和txt2函数以帮助您-您在第一篇文章中发布的代码中缺少这些定义。
回复

使用道具 举报

2

主题

15

帖子

13

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 17:46:14 | 显示全部楼层
这看起来可能是一切。对不起,如果这是一个烂摊子继承了这些东西。努力简化我的生活哈哈。
 
感谢您抽出时间。
 
 
  1. (defun C:scable2 (/)
  2. (setq echo (getvar "cmdecho"))                        ;gets current value of screen echo
  3. (setvar "cmdecho" 0)                                ;sets echo to off
  4. (setq style (getvar "textstyle"))                        ;gets current value of textstyle
  5. (setvar "textstyle" "STANDARD")                                ;sets textstyle to STANDARD
  6.    (arrowinfo)
  7.    (arrowdir1)
  8. (setvar "textstyle" style)
  9. (setvar "cmdecho" echo)
  10. );end defun scable
  11. (defun C:dcable2 ()
  12. (setq echo (getvar "cmdecho"))                        ;gets current value of screen echo
  13. (setvar "cmdecho" 0)                                ;sets echo to off
  14. (setq style (getvar "textstyle"))                        ;gets current value of textstyle
  15. (setvar "textstyle" "STANDARD")                                ;sets textstyle to STANDARD
  16.    (arrowinfo)
  17.    (arrowdir2)
  18. (setvar "textstyle" style)
  19. (setvar "cmdecho" echo)
  20. );end defun dcable
  21. (defun rtd (a)
  22.     (/ (* a 180.0) pi)
  23. );DEFUN
  24. (DEFUN arrowinfo ()
  25.          (SETQ first (entsel)
  26.    slect1 (entget (car first))
  27.        pt1 (cadr first)
  28.     ang1 (angle (setq pt3 (cdr (assoc '10 slect1)))(setq pt4 (cdr (assoc '11 slect1))))
  29.     ang2 ( ANGLE pt1 (setq pt2 (getpoint "\nPICK THE TEXT LOCATION: ")))
  30.     ang3 ang1)
  31.          (if (or (and (> (sin ang1) 0) (> (cos ang1) 0)) (and (< (sin ang1) 0) (> (cos ang1) 0)))
  32.          (setq ang1 ang1)
  33.          (setq ang1 (+ PI ang1)))
  34.          (if  (equal ang3 (* 0.5 pi) 0.00000001) (setq ang1 ang3))
  35.          (if  (equal ang3 PI 0.00000001) (setq ang1 (+ pi ang3)))
  36.          (if  (equal ang3 0 0.00000001) (setq ang1 ang3))
  37. );end defun arrowinfo
  38. (defun arrowdir1 ()
  39.   (if (> (distance pt1 pt3) (distance pt1 pt4)) (ins1) (ins2))
  40. );end defun arrowdir1
  41. (defun arrowdir2 ()
  42.   (if (> (distance pt1 pt3) (distance pt1 pt4)) (ins3) (ins4))
  43. );end defun arrowdir2
  44. (defun ins1()
  45. (Setq old (Getvar "clayer"))
  46. (if (tblsearch "layer" "cab")(Setvar "clayer" "cab")
  47. (command "layer" "M" "cab" "C" "red" "" "")
  48. );end if
  49.    (command "insert" "NEW-ARROW" pt4 (getvar "ltscale") "" (rtd (+ PI ang3)))
  50. (if (tblsearch "layer" "TICK22")(Setvar "clayer" "TICK22")
  51. (command "layer" "M" "TICK22" "C" "magenta" "" "")
  52. );end if
  53.    (command "insert" "TICK2" pt3 (getvar "ltscale") "" (rtd (+ PI ang3)))
  54. (command "setvar" "clayer" old )
  55.    (if (> (- (angle pt4 pt3) (angle pt4 pt2)) 0)
  56.        (setq pt2 (polar pt4 (- (angle pt4 pt3) 0.277745) 34.5))
  57.        (setq pt2 (polar pt4 (+ (angle pt4 pt3) 0.277745) 34.5))
  58.    );end if
  59.    (txt1)
  60. );end defun ins1
  61.    
  62. (defun ins2()
  63. (Setq old (Getvar "clayer"))
  64. (if (tblsearch "layer" "cab")(Setvar "clayer" "cab")
  65. (command "layer" "M" "cab" "C" "red" "" "")
  66. );end if
  67.    (command "insert" "NEW-ARROW" pt3 (getvar "ltscale") "" ( rtd ang3))
  68. (if (tblsearch "layer" "TICK22")(Setvar "clayer" "TICK22")
  69. (command "layer" "M" "TICK22" "C" "magenta" "" "")
  70. );end if
  71.    (command "insert" "TICK2" pt4 (getvar "ltscale") "" ( rtd ang3))
  72. (command "setvar" "clayer" old )
  73.    (if (> (- (angle pt3 pt4) (angle pt3 pt2)) 0)
  74.        (setq pt2 (polar pt3 (- (angle pt3 pt4) 0.277745) 34.5))
  75.        (setq pt2 (polar pt3 (+ (angle pt3 pt4) 0.277745) 34.5))
  76.    );end if
  77.    (txt1)
  78. );end defun ins2
  79. (defun ins3()
  80. (Setq old (Getvar "clayer"))
  81. (if (tblsearch "layer" "cab")(Setvar "clayer" "cab")
  82. (command "layer" "M" "cab" "C" "red" "" "")
  83. );end if
  84.    (command "insert" "NEW-ARROW" pt4 (getvar "ltscale") "" ( rtd (+ PI ang3)))
  85.    (command "insert" "NEW-ARROW" (polar pt4 (angle pt4 pt3) 12) (getvar "ltscale") "" ( rtd (+ PI ang3)))
  86. (if (tblsearch "layer" "TICK22")(Setvar "clayer" "TICK22")
  87. (command "layer" "M" "TICK22" "C" "magenta" "" "")
  88. );end if
  89.    (command "insert" "TICK2" pt3 (getvar "ltscale") "" (rtd (+ PI ang3)))
  90. (command "setvar" "clayer" old )
  91.    (if (> (- (angle pt4 pt3) (angle pt4 pt2)) 0)
  92.        (setq pt2 (polar pt4 (- (angle pt4 pt3) 0.277745) 34.5))
  93.        (setq pt2 (polar pt4 (+ (angle pt4 pt3) 0.277745) 34.5))
  94.    )
  95.    (txt2)
  96. );end defun ins3
  97.    
  98. (defun ins4()
  99. (Setq old (Getvar "clayer"))
  100. (if (tblsearch "layer" "cab")(Setvar "clayer" "cab")
  101. (command "layer" "M" "cab" "C" "red" "" "")
  102. );end if
  103.    (command "insert" "NEW-ARROW" pt3 (getvar "ltscale") "" ( rtd ang3))
  104.    (command "insert" "NEW-ARROW" (polar pt3 (angle pt3 pt4) 12)
  105.        (getvar "ltscale") "" ( rtd ang3))
  106. (if (tblsearch "layer" "TICK22")(Setvar "clayer" "TICK22")
  107. (command "layer" "M" "TICK22" "C" "magenta" "" "")
  108. );end if
  109.    (command "insert" "TICK2" pt4 (getvar "ltscale") "" ( rtd ang3))
  110. (command "setvar" "clayer" old )
  111.    (if (> (- (angle pt3 pt4) (angle pt3 pt2)) 0)
  112.        (setq pt2 (polar pt3 (- (angle pt3 pt4) 0.277745) 34.5))
  113.        (setq pt2 (polar pt3 (+ (angle pt3 pt4) 0.277745) 34.5))
  114.    );end if
  115.    (txt2)
  116. );end defun ins4
  117. (defun txt1 ()
  118. (Setq old (Getvar "clayer"))
  119. (if (tblsearch "layer" "FPTEXT")(Setvar "clayer" "FPTEXT")
  120. (command "layer" "M" "FPTEXT" "C" "green" "" "")
  121. );end if
  122.   (if (/= (setq dis1 (/ (+ 18.51 (distance pt3 pt4)) 12)) (fix dis1))
  123.       (setq dis1 (+ (fix dis1) 1))
  124.    );end if
  125.   (setq dis2 (strcat "S-" (rtos dis1 2 0)))
  126. (command "text" "m" pt2 (* 0.125 (getvar "ltscale")) (rtd ang1) dis2)
  127. (command "setvar" "clayer" old )
  128. );end defun txt1
  129.                              
  130. (defun txt2 ()
  131. (Setq old (Getvar "clayer"))
  132. (if (tblsearch "layer" "FPTEXT")(Setvar "clayer" "FPTEXT")
  133. (command "layer" "M" "FPTEXT" "C" "green" "" "")
  134. );end if
  135.   (if (/= (setq dis1 (/ (+ 18.51 (distance pt3 pt4)) 12)) (fix dis1))
  136.       (setq dis1 (+ (fix dis1) 1))
  137.    );end if
  138.   (setq dis2 (strcat "S/B-" (rtos dis1 2 0)))
  139.   
  140.      (command "text" "m" pt2 (* 0.125 (getvar "ltscale")) (rtd ang1) dis2)
  141. (command "setvar" "clayer" old )
  142. );end defun txt2
回复

使用道具 举报

2

主题

15

帖子

13

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 17:49:41 | 显示全部楼层
我贴的代码是你想要的吗?
 
我认为txt函数在底部。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-13 14:20 , Processed in 0.492661 second(s), 58 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表