乐筑天下

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

[编程交流] 需要Lisp程序导出Le

[复制链接]
gS7

35

主题

244

帖子

212

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
180
发表于 2022-7-6 07:10:09 | 显示全部楼层 |阅读模式
嗨,兄弟们,
 
我需要一个Lisp程序将带有坐标的导出级别和代码导出到Excel文件
 
例子:
东距,北距,代码,电平
 
附加的文件
 
调查数据。图纸
回复

使用道具 举报

44

主题

542

帖子

502

银币

后起之秀

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

铜币
220
发表于 2022-7-6 07:17:38 | 显示全部楼层
为什么你没有一个观点或任何定义它们的东西?我假设文本的东、北坐标和其中的标高是快照?
 
您是否考虑过使用AutoCad的内置数据提取?
回复

使用道具 举报

29

主题

519

帖子

477

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
163
发表于 2022-7-6 07:25:14 | 显示全部楼层
在这种情况下,数据提取将不起作用,因为两个文本实体没有连接,但它们具有相同的插入点。图形中也没有点,所以我认为您希望文本的插入点作为坐标。此示例图形中的所有文字图元的Z值都为0.0,是否始终如此?如果是这样,可以省略Z值。
 
但在其他方面,编写LISP例程是一项相当简单的工作。你看过李的网站了吗?他有很多Lisp程序的例程,也许有一个可以做你想做的。
http://www.lee-mac.com/index.html
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-6 07:33:37 | 显示全部楼层
试试这个
 
  1. (defun c:NE2CSV  ( / ofl i e data j k lst coord)
  2. (vl-load-com)      
  3. (if (and (= 1 (getvar 'DwgTitled))
  4.       (setq data nil ss (ssget '((0 . "TEXT")))))
  5. (progn
  6. (setq fl  (Strcat (getvar 'Dwgprefix)
  7.                              (cadr (fnsplitl (getvar 'Dwgname)))
  8.                              ".csv")
  9.                    ofl (open fl "w"))
  10. (repeat (setq i (sslength ss))
  11.                      (setq e (vlax-ename->vla-object (ssname ss (setq i (1- i)))))
  12.               (setq data (cons
  13.                                    (mapcar '(lambda (d)
  14.                                                   (vlax-get e d))
  15.                                          '("TextString" "TextAlignmentPoint")) data)))
  16.         (setq data (vl-sort  data
  17.               '(lambda (a b)
  18.                      (setq a (cadr a) b (cadr b))
  19.                  (cond
  20.                    ((> (cadr a) (cadr b)) T)
  21.                    ((equal (cadr a) (cadr b) 0.1) (< (car a) (car b)))
  22.                  )
  23.                )
  24.             ))
  25.                (while (and (setq j (car data))
  26.                            (setq k (cdr data)))
  27.                      (setq lst (list j (car k))
  28.                            lst (if (numberp
  29.                                      (read (caar lst))) lst (reverse lst))
  30.                            coord (cadar lst))
  31.                 (write-line (strcat (rtos (cadr coord))
  32.                              "," (rtos (car coord))
  33.                              "," (caadr lst)
  34.                              "," (caar lst))
  35.                      ofl)
  36.                      (setq data (cdr k))
  37.                      )
  38.                (close ofl)
  39.        )
  40.    )
  41. (princ)
  42. )
回复

使用道具 举报

8

主题

1133

帖子

1164

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 07:39:17 | 显示全部楼层
 
一旦将数据输入Excel,快速排序将使其能够匹配坐标、标高和代码。
 
但我不确定AutoCAD的哪个版本首先进行了数据提取
回复

使用道具 举报

29

主题

519

帖子

477

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
163
发表于 2022-7-6 07:50:10 | 显示全部楼层
 
非常正确的eldon,但正如pBe用他的Lisp程序例程演示的那样,这一切都是一下子完成的。不错的一个pBe
回复

使用道具 举报

gS7

35

主题

244

帖子

212

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
180
发表于 2022-7-6 07:54:09 | 显示全部楼层
精彩的Pbe。。。。。。。
你救了我。。。。
你创建的很棒的lisp程序
非常感谢你
回复

使用道具 举报

8

主题

1133

帖子

1164

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 07:57:50 | 显示全部楼层
 
实际上,数据提取是在AutoCAD 2008中引入的。
 
我的观点是OP不需要lisp,因为该命令已经存在。然而,如果您不想让人们知道普通AutoCAD是如何工作的,请继续使用lisps。
回复

使用道具 举报

29

主题

519

帖子

477

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
163
发表于 2022-7-6 08:05:57 | 显示全部楼层
 
我不知道数据提取是什么时候引入的,谢谢你的信息。你说的“我的观点是OP不需要lisp”是对的,但有时,对于经验不足的用户来说,使用lisp例程更“舒适”。我很乐意让用户知道普通AutoCAD的工作原理,但我的经验是,普通用户对普通AutoCAD的工作原理不感兴趣。一个悲伤的事实,但却是真实的。你的贡献很有价值,我从来没有批评的意思。扔掉你的链条,如果你作为一个测量员知道我的意思。
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-6 08:15:30 | 显示全部楼层
 
很高兴为您服务。
 
干杯
 
 
 
谢谢你,小家伙。
 
继续编码
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-10 11:16 , Processed in 0.397987 second(s), 72 queries .

© 2020-2025 乐筑天下

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