乐筑天下

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

[编程交流] 弯头autolisp项目。。someon公司

[复制链接]

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 23:55:20 | 显示全部楼层 |阅读模式
这是最终产品。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-6 00:02:25 | 显示全部楼层
两件事(dtr 0)是0.0,没有SW提示,因此没有pt1
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 00:07:53 | 显示全部楼层
我已经在您的代码中指出了一些错误:
  1. (defun C:Elbow [color=red](/IP[/color] P1 P2)             [color=red];add spaces
  2. [/color](defun newerr (msg)
  3. (princ ([color=red]strcar[/color] "\n *ERROR* : "msg))    [color=red];wrong function name - should be STRCAT
  4. [/color](setvar "MENUECHO" me)
  5. (setvar "CMDECHO" ce)
  6. (setvar "clayer" cl)
  7. (gc) (princ)
  8. )
  9. (setq acaderr *error*
  10. *error* newerr
  11. me (getvar "MENUECHO")
  12. ce (getvar "CMDECHO")
  13. cl (getvar "CLAYER"[color=red])                   ;missing parenthesis
  14. [/color])
  15. (setvar "menuecho" 0)
  16. (setvar "cmdecho" 0)
  17. (graphscr)
  18. (defun dtr (A)
  19. ([color=red]*PI[/color] (/ A 180.0))                      [color=red];missing space after function
  20. [/color][color=red])                                      ;missing parenthesis
  21. [/color](defun rtd (A)
  22. (/ (* A 180.0) PI)
  23. )
  24. (setq IP (getpoint "\nPick Insertion Point: "))
  25. (setq P1 (Polar IP (dtr 0) [color=red]SW[/color]))        [color=red];SW variable isn't defined
  26. [/color](setq CP (Polar P1 (dtr 0) 4))
  27. (setq P2 (Polar CP (dtr 90) 4))
  28. [color=red];OSMODE system variable must be disabled prior of calling commands
  29. [/color](command "line" IP P1 "")
  30. (command "arc" P2 "C" CP P1)
  31. (command "line" P2 P3 "")              [color=red];P3 variable isn't defined
  32. [/color][color=red]                                     ;wrong placed parenthesis
  33. [/color](setvar "MENUECHO" me)
  34. (setvar "CMDECHO" ce)
  35. (setq *error* acaderr)(gc)
  36. (princ)
  37. )

此外,请根据代码发布规则编辑您的帖子。
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 00:14:13 | 显示全部楼层
非常感谢你们的反馈。。我将应用所有内容并再次运行它。。祝我好运!
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 00:18:01 | 显示全部楼层
祝你好运让我们知道进展如何。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 00:26:09 | 显示全部楼层
试试这个简单的代码
 
  1. (defun c:Elbow (/ dtr w r p p1 p2 p3)
  2. (defun dtr (A)
  3.    (* PI (/ A 180.0))
  4. )
  5. (if (and (setq w (getdist "\n Specify the width :"))
  6.           (setq r (getdist "\n Specify the radius of small arc :"))
  7.           (setq p (getpoint "\nPick Insertion Point: "))
  8.      )
  9.    (progn
  10.      (setq p1 (Polar p pi w)
  11.            p2 (polar (polar p 0. r) (dtr 90.) (+ w r))
  12.            p3 (Polar p2 (dtr 270) w)
  13.      )
  14.      (command "_.line"
  15.               "_none"
  16.               p
  17.               "_none"
  18.               p1
  19.               ""
  20.               "_.arc"
  21.               "_none"
  22.               p2
  23.               "_E"
  24.               p1
  25.               "_a"
  26.               90.
  27.               "_.line"
  28.               "_none"
  29.               p2
  30.               "_none"
  31.               p3
  32.               ""
  33.               "_.arc"
  34.               "_none"
  35.               p3
  36.               "_e"
  37.               p
  38.               "_a"
  39.               90.
  40.      )
  41.    )
  42. )
  43. (princ)
  44. )
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 00:31:34 | 显示全部楼层
再次出现了一些错位/括号缺失;SW变量仍未定义;您忽略了我关于OSMODE系统变量的建议。
  1. (defun C:Elbow (/ IP P1 P2)
  2. (defun newerr (msg)
  3. (princ (STRCAT "\n *ERROR* : "msg))
  4. (setvar "MENUECHO" me)
  5. (setvar "CMDECHO" ce)
  6. (setvar "clayer" cl)
  7. (gc) (princ)
  8. )
  9. (setq acaderr *error*
  10. *error* newerr
  11. me (getvar "MENUECHO")
  12. ce (getvar "CMDECHO")
  13. cl (getvar "CLAYER")
  14. )
  15. (setvar "menuecho" 0)
  16. (setvar "cmdecho" 0)
  17. (graphscr)
  18. (defun dtr (A)
  19. (* PI (/ A 180.0))
  20. )
  21. (defun rtd (A)
  22. (/ (* A 180.0) PI)
  23. )
  24. (setq IP (getpoint "\nPick Insertion Point: "))
  25. (setq P1 (Polar IP (dtr 0) SW))
  26. (getpoint "\nPick the second point: ")[color=red][s])[/s][/color]
  27. (setq CP (Polar P1 (dtr 0) 4))
  28. (setq P2 (Polar CP (dtr 90) 4))
  29. (setq P3 (Polar P2 (dtr 0))[color=red])[/color]
  30. (command "line" IP P1 "")
  31. (command "arc" P2 "C" CP P1)
  32. (command "line" P2 P3 "")
  33. (setvar "MENUECHO" me)
  34. (setvar "CMDECHO" ce)
  35. (setq *error* acaderr)(gc)
  36. (princ)
  37. )

我们的新朋友Tharwat正在学习AutoLISP课程,如第一篇文章所述;我相信,如果一个人指出他/她的错误,而不是提供一个功能性的例行程序,他/她将受益更多。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 00:37:08 | 显示全部楼层
 
可以
*SW代表什么?
*带有getpoint的函数没有稍后使用的变量,否则它目前没有任何意义
*点3没有距离值
 
希望这有帮助
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 00:41:12 | 显示全部楼层
观察得好,塔尔瓦!
 
塔托法斯塔,你现在行动。
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 00:47:56 | 显示全部楼层
因此,我修改了原始代码以定义SW,并插入了OSMODE命令。。它成功了!!我用了你们两个的建议,形成了一个全新的功能肘。。非常感谢你们;-)
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-16 14:41 , Processed in 0.293647 second(s), 72 queries .

© 2020-2025 乐筑天下

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