乐筑天下

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

[编程交流] 帮助Lisp转换数据aut

[复制链接]

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 00:00:57 | 显示全部楼层 |阅读模式
寻求帮助,将lisp编写为附件,选择autocad中的数据字段“长度”、“宽度”、“面积”、“周长”切换到excel CAD到excel 2。pdf
文件excel Ex.xls
将autocad文件转换为excel Ex.dwg
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 00:11:49 | 显示全部楼层
您是否检查了内置的数据提取命令?
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 00:27:29 | 显示全部楼层
你好,Msasu
 
我试着提取数据,结果并不像预期的那样,如果你能做同样的这个附件?
 
如果你不懂我写的东西,请表示同情,因为我英语不好
 
当做
康阮
回复

使用道具 举报

1

主题

1069

帖子

1050

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
69
发表于 2022-7-6 00:39:53 | 显示全部楼层
这会让你开始,
逐个选择形状,
然后做你的休息工作:
  1. (defun c:exwr (/ ar del elist en ent filename fn hgt i maxp minp obj per pmax
  2. pmin rowdata wid  xldata )
  3. (setq i 0 )
  4. (setq xldata (cons
  5. (list "" "Length (mm)" "Width (mm)""Perimeter" "Area")xldata))
  6. (while
  7.    (setq ent (entsel "\nSelect a rectangle one by another,
  8. press Enter to stop loop: "))
  9.      (if
  10. (and
  11. (setq elist (entget (setq en (car ent))))
  12. (eq (cdr (assoc
  13. 0 elist)) "LWPOLYLINE")
  14. (= (cdr (assoc 70 elist)) 1)
  15. (and
  16. (> (cdr (assoc 90 elist)) 5)
  17.      (< (cdr
  18. (assoc 90 elist)) 13)
  19. )
  20. )
  21. (progn
  22.      (setq obj
  23. (vlax-ename->vla-object en))
  24. (vla-getboundingbox obj 'minp 'maxp)
  25.      (setq
  26. pmin (vlax-safearray->list minp)
  27.     pmax
  28. (vlax-safearray->list maxp))
  29.      (setq
  30. wid (abs (- (car pmax) (car pmin)))
  31. hgt (abs (- (cadr pmax) (cadr pmin)))
  32. per (vla-get-length obj)
  33.     ar (vla-get-area
  34. obj)
  35.     )
  36.      (setq
  37. rowdata (list
  38.        (itoa (setq i (1+
  39. i)))
  40.        (rtos wid 2
  41. 2)
  42.        (rtos hgt 2
  43. 2)
  44.        (rtos per 2
  45. 2)
  46.        (rtos ar 2
  47. 2)))
  48.      ;; gather data in a
  49. list
  50.      (setq xldata (append xldata (list
  51. rowdata)))
  52.      )     
  53.     (prompt "\nNothing or not closed pline
  54. selected.")
  55. )     
  56. )
  57. (if (> (length xldata)
  58. 1)
  59.   (progn
  60.     ;; put delimiter to suit:
  61.     (setq del "\t")
  62.     ;; build your text file path here:
  63.     (setq filename (strcat (getvar
  64. "dwgprefix")
  65.       (vl-filename-base (getvar
  66. "dwgname"))
  67. "_Dim.txt"))
  68.     (setq fn (open filename
  69. "w"))
  70.     ;; Write info to a file
  71.     (mapcar
  72. '(lambda (x)
  73.   (write-line
  74.     (apply
  75. 'strcat
  76.     (append (list (car
  77. x))
  78.      (mapcar '(lambda (y) (strcat del
  79. y))
  80.       (cdr
  81. x)
  82.       )
  83. )
  84.     )
  85. fn
  86.     )
  87. )
  88. xldata
  89.       )
  90.     (close
  91. fn)
  92.     (gc)
  93.     ;; just to see
  94. a result
  95.     (startapp "notepad"
  96. filename)
  97. )
  98.   )
  99. (alert "Open text file with Excel,\nthen save as
  100. .xls or .xlsx file")
  101. (princ)
  102. )
  103. (princ "\n\t***\tStart command
  104. with EXWR \t***")
  105. (princ)
  106. (or (vl-load-com)(princ))
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 00:46:24 | 显示全部楼层
尊敬的Fixo:
 
谢谢,但我从来都不知道lisp,这对我来说很难,我不知道如何和从哪里开始,我有科皮粘贴到记事本上面的代码,并保存文件。LSP,不用的时候,你可以指导我吗?,或者你可以完成的未完成的Lisp程序来帮助我?非常感谢你。
 
当做
康阮
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 01:00:38 | 显示全部楼层
您可能需要查看由Lee Mac编写的有关AutoLISP用法的本教程。
回复

使用道具 举报

1

主题

1069

帖子

1050

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
69
发表于 2022-7-6 01:03:05 | 显示全部楼层
我认为你在复制代码方面有问题,
请尝试附加lisp:
 
ExWr。LSP
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-10 21:09 , Processed in 0.567393 second(s), 66 queries .

© 2020-2025 乐筑天下

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