乐筑天下

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

[编程交流] 寻找一个Lisp程序的人

[复制链接]

51

主题

481

帖子

457

银币

后起之秀

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

铜币
262
发表于 2022-7-5 16:18:09 | 显示全部楼层 |阅读模式
是否有lisp在每个层中绘制一条线并添加带有层名称的文本?
 
附上一张显示我请求的图片
171815amtc1xbtbltxtiwc.jpg
回复

使用道具 举报

LCE

1

主题

29

帖子

28

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 16:21:52 | 显示全部楼层
可以在vba甚至vb中实现。如果可以接受的话。
如果你特别想要lisp,那么你必须等待其他人。
 
干杯
回复

使用道具 举报

51

主题

481

帖子

457

银币

后起之秀

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

铜币
262
发表于 2022-7-5 16:24:53 | 显示全部楼层
两者都可以
 
该文件可以是ocx吗?我试图避免加载宏
 
thanx LCE
回复

使用道具 举报

3

主题

16

帖子

15

银币

初来乍到

Rank: 1

铜币
16
发表于 2022-7-5 16:28:33 | 显示全部楼层
试试这个。。。
  1. Code in post below
回复

使用道具 举报

LCE

1

主题

29

帖子

28

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 16:32:52 | 显示全部楼层
拔出连接的拉链。
在acad类型中-vbarun
然后输入“directory\DrawLays.dvb!DrawLays”
其中directory是您将dvb提取到的目录
 
如果你有任何问题,请告诉我。
 
我还没有添加任何错误处理,所以如果你取消,它将给出一个错误。
 
干杯
回复

使用道具 举报

51

主题

481

帖子

457

银币

后起之秀

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

铜币
262
发表于 2022-7-5 16:35:43 | 显示全部楼层
Arch_Eric
 
我没弄明白
 
它是AutoCAD命令还是什么
回复

使用道具 举报

3

主题

16

帖子

15

银币

初来乍到

Rank: 1

铜币
16
发表于 2022-7-5 16:37:33 | 显示全部楼层
我把代码搞砸了。。。这是修订版。。。
  1. (defun c:layerlegend (/ osm ortho clayer celtype cecolor start-point line-length text-height *error*)
  2. (defun *error* (msg)
  3. (setvar "osmode" osm)
  4. (setvar "orthomode" ortho)
  5. (setvar "clayer" clayer)
  6. (setvar "celtype" celtype)
  7. (setvar "cecolor" cecolor)
  8. (princ msg)
  9. )
  10. (defun mfp (pt pa) (list (+ (car pt) (car pa)) (+ (cadr pt) (cadr pa)) (+ (caddr pt) (caddr pa))))
  11. (setq osm (getvar "osmode"))
  12. (setq ortho (getvar "orthomode"))
  13. (setq clayer (getvar "clayer"))
  14. (setq celtype (getvar "celtype"))
  15. (setq cecolor (getvar "cecolor"))
  16. (setq start-point (getpoint "\nSelect point to start legend: "))
  17. (setvar "orthomode" 1)
  18. (setq line-length (getdist start-point "\nEnter length of line or click end point: "))
  19. (setq text-height (cdr (assoc 40 (tblsearch "style" (getvar "textstyle")))))
  20. (setvar "osmode" 0)
  21. (setvar "clayer" (cdr (assoc 2 (tblnext "Layer" T))))
  22. (setvar "celtype" "ByLayer")
  23. (setvar "cecolor" "ByLayer")
  24. (command "_line" start-point (mfp start-point (list line-length 0 0)) "")
  25. (command "-text" (mfp start-point (list 0 1 0)) "0" (getvar "clayer"))
  26. (while (setq layer (tblnext "Layer"))
  27. (setvar "clayer" (cdr (assoc 2 layer)))
  28. (setq start-point (mfp start-point (list 0 (- 0 (+ text-height 4)) 0)))
  29. (command "_line" start-point (mfp start-point (list line-length 0 0)) "")
  30. (command "-text" (mfp start-point (list 0 1 0)) "0" (getvar "clayer"))
  31. )
  32. (setvar "osmode" osm)
  33. (setvar "orthomode" ortho)
  34. (setvar "clayer" clayer)
  35. (setvar "celtype" celtype)
  36. (setvar "cecolor" cecolor)
  37. )
回复

使用道具 举报

3

主题

16

帖子

15

银币

初来乍到

Rank: 1

铜币
16
发表于 2022-7-5 16:42:03 | 显示全部楼层
代码假设样式中有默认的文字高度。
回复

使用道具 举报

LCE

1

主题

29

帖子

28

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 16:45:00 | 显示全部楼层
见附件。
错误处理添加了一些其他调整。
回复

使用道具 举报

51

主题

481

帖子

457

银币

后起之秀

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

铜币
262
发表于 2022-7-5 16:48:26 | 显示全部楼层
Thanx LCE先生,这就是我锁定的原因。
 
Arch_Eric一开始很抱歉,我的母语是阿拉伯语
Lisp程序的第二个thanx
lisp可以,但它仅对当前层有效,而不是对所有层有效
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-14 21:06 , Processed in 0.519174 second(s), 75 queries .

© 2020-2025 乐筑天下

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