乐筑天下

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

[编程交流] 编辑属性和视口

[复制链接]

1

主题

8

帖子

7

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 14:41:31 | 显示全部楼层 |阅读模式
早上/下午/晚上好。
我已经成为这里的会员几年了,但已经有一段时间不在这个行业了(也忘记了用户名),所以我把自己设置为一个新会员。
在过去的几个月里,我最近再次开始使用AutoCAD,我正在寻找一位对我刚刚学习的项目有更多了解的人。我需要改变2000(给予或采取一些)图纸到一个新的图纸集。属性几乎相同(从新图纸集中一起删除了一对属性)。是否有lisp允许我将属性从一个图纸集复制到新的?。
该公司还制定了一些标准,目前正在模型/图纸领域开展工作。原始图纸(包括图纸)在模型空间中绘制。
我现在已经准备好了图纸集,可以开始了,但是有没有办法让这个过程自动化?
主图纸模型中有两个视口。一个比例为1:1,另一个比例为5:1。我在一家塑料公司工作,所以个人资料通常很小。
如果有人能帮我解决这个问题,我会非常感激。我期待着您的回复(祈祷)
干杯

 
(附:如果我解释得不够清楚,请告诉我——我最大的问题是没有正确解释)
回复

使用道具 举报

20

主题

344

帖子

325

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
100
发表于 2022-7-6 14:49:00 | 显示全部楼层
有很多方法可以自动化重复的过程,有很多人经常参加这个论坛,他们对此非常精通。不管你在找什么,我相信你会在这里找到的。
 
我自己没有使用过图纸集,但有一个关于它们的帮助文件。也许你的答案就在那里?
 
如果没有,也许你可以解释一下你接受一份旧的工作的过程。dwg并将其更新为新标准。AutoCAD中的大多数命令都可以自动执行,如果只需运行一系列复杂的简单命令来确定一个模式,然后整合并运行该模式,这将稍微耗时,但最终值得一试。我们需要的只是一个命令列表,以及为什么调用它们、修改什么类型的对象等等的推理。
回复

使用道具 举报

1

主题

8

帖子

7

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 14:52:35 | 显示全部楼层
谢谢你的回复。
 
好的,我要做的第一个任务是从一张图纸中提取属性,并将其转移到新的图纸中。这些是,图纸的发起者,日期,修订等。我认为总共有10个。
第二个任务是在模型空间中创建轮廓。这些已在旧图纸中创建,但未标注1:1的尺寸。只有缩放版本。(根据轮廓的大小,每个图形有1:1和5:1或10:1)。
我已经用视口设置了新的图纸空间布局,我想知道是否可以采用缩放的轮廓(带有尺寸),并以1:1的比例传输到新图纸。
 
客户需要1:1模型(尺寸)。图纸空间视口将负责缩放。我会上传一张旧的表格和新的提案,这可能会让它更清楚一点。
如果有人能给我一个关于如何上传DWG的线索??
 
干杯
回复

使用道具 举报

20

主题

344

帖子

325

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
100
发表于 2022-7-6 14:56:08 | 显示全部楼层
展示。。这很棘手。。
 
将数据从一个文件传输到下一个文件可能需要一个中间文件。有很多方法可以做到这一点,我脑海中浮现的第一个方法是创建一个提取数据并写入文件的LISP,然后是一个单独的LISP或脚本,从该文件读取并输入数据。我知道有LISP可以读取块属性数据(一个真正的概要),然后可以将其导出到所述文件中,本论坛最近的一个主题讨论了创建脚本,然后将数据放回其所属位置。脚本文件是使用创建的。bat文件,但同样的事情可以直接在收集数据的LISP中完成。
 
第二个问题很棘手。它似乎需要复制1:1的配置文件(我假设这是在模型空间中?)并将其粘贴到新图形中。我肯定这是可以做到的,但尺寸标注可能很棘手。如果所有轮廓都以特定的方式设置,则可能只需从10:1的轮廓复制尺寸并将其缩小,这也可能是自动完成的。
 
附加一些示例将非常有用,我相信可以从中编写一些代码。回复帖子时,在论坛帖子窗口的顶部,一张笑脸旁边有一个回形针。你应该能够通过它连接。
回复

使用道具 举报

1

主题

8

帖子

7

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 15:00:37 | 显示全部楼层
好的,我已经开始研究其中的一些,我马上就看到了可能阻碍我的事情。
 
旧格式图纸的尺寸标注在“尺寸”层上。
新型图纸的尺寸标注在“dim”层上。
 
由于新格式具有正确的线宽和笔设置,因此旧样式表需要对应。
 
在一些早期的DRG上,一些尺寸被分解,尺寸线被打断。
 
这里有几个例子。。。。旧风格和新风格。
 
为迄今为止的建议干杯。
 
哦,我不得不清除新的图纸,这样所有预设的线型和块都会丢失。但校长仍然在那里。在完成这个测试drg后,我意识到仍然需要大量的手动工作来配置视口和DIM。我看不出有什么办法。
A450-C.dwg
新建Dwg图纸。图纸
回复

使用道具 举报

2

主题

60

帖子

65

银币

初来乍到

Rank: 1

铜币
7
发表于 2022-7-6 15:05:21 | 显示全部楼层
你好
 
为了从外部图形中检索数据(不使用bat或脚本),我给出了两个lisp作为示例。
 
这里和这里
 
@+
回复

使用道具 举报

1

主题

8

帖子

7

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 15:09:27 | 显示全部楼层
谢谢你的回答,帕特里克,我的法语不太好,所以我可能需要一些翻译,我的lsp知识也很少。我会看看我能用这些做些什么。非常感谢。
 
回复

使用道具 举报

2

主题

60

帖子

65

银币

初来乍到

Rank: 1

铜币
7
发表于 2022-7-6 15:10:39 | 显示全部楼层
我的英语也很差。
目标不是翻译lisp,而是理解如何使用objectdbx响应您的请求
 
你们两个例子。
 
@+
回复

使用道具 举报

20

主题

344

帖子

325

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
100
发表于 2022-7-6 15:17:24 | 显示全部楼层
吴,很抱歉耽搁了,我的同事和我正在使用Excel LISP以及。。嗯,实际工作
 
我不能创造一个神奇的“为你做一切”Lisp程序,但我确实解决了一些事情,应该节省一些时间。
 
  1. ; Coba utilities
  2. ; by Mark Mercier, 04-30-09
  3. (defun c:cobaGet()
  4. (getBlkAttsFile "C:\\ttlblk.txt")
  5. (copyMSpace)
  6. )
  7. (defun c:cobaPut()
  8. (giveBlkAtts)
  9. (pasteMSpace)
  10. )
  11. (defun copyMSpace( / ss)
  12. (if (setq ss (ssget "X" (list (cons 410 "Model") (cons 2 "IPCSHT")))) (command "erase" ss ""))
  13. (if (setq ss (ssget "X" (list (cons 410 "Model") (cons 2 "DRGSHEET")))) (command "erase" ss ""))
  14. (command "copyclip" (ssget "X" (list (cons 410 "Model"))) "")
  15. (command "undo" 2)
  16. (princ)
  17. )
  18. (defun pasteMSpace()
  19. (setvar "tilemode" 1)
  20. (command "pasteclip" (list 0 0 0))
  21. )
  22. (defun getBlkAttsFile(file / ent file)
  23. (setq ent (car(entsel)))
  24. (setq file (open file "W"))
  25. (if (= (cdr (assoc 66 (entget ent))) 1)
  26.    (progn
  27.      (setq ent (entnext ent))
  28.      (while (/= (cdr (assoc 0 (entget ent))) "SEQEND")
  29.        (if ent (write-line (strcat (cdr (assoc 2 (entget ent))) "\n" (cdr (assoc 1 (entget ent)))) file))
  30.        (setq ent (entnext ent))
  31.        )
  32.      )
  33.    )
  34. (close file)
  35. (princ)
  36. )
  37. (defun giveBlkAtts( / )
  38. (setq getFrm (open "C:\\ttlblk.txt" "R"))
  39. (setq linChk 1)
  40. (while linChk
  41.    (if (and (setq line1 (read-line getFrm))
  42.         (setq line2 (read-line getFrm))
  43.         )
  44.      (progn
  45.    (setq ssAtBk (ssget "X" (list (cons 66 1))))
  46.    (setq ssVar 0)
  47.    (repeat (sslength ssAtBk)
  48.      (setq getBkN (ssname ssAtBk ssVar))
  49.      (setq ent (entnext getBkN))
  50.      (while (/= (cdr (assoc 0 (entget ent))) "SEQEND")
  51.        (setq attLst (entget ent))
  52.        (if (= (cdr (assoc 2 attLst)) line1)
  53.          (progn
  54.          (princ line2)
  55.            (setq attLst (subst (cons 1 line2) (assoc 1 attLst) attLst))
  56.            (entmod attLst)
  57.            (entupd ent)
  58.        )
  59.          )
  60.        (setq ent (entnext ent))
  61.        )
  62.      (setq ssVar (1+ ssVar))
  63.      )
  64.    )
  65.      (setq linChk nil)
  66.      )
  67.    )
  68. (close getFrm)
  69. (princ)
  70. )

 
我假设你有很多文件和一个模板,或者至少有其他一些新文件,可以将旧文件中的所有数据放入其中。
 
保存并加载我刚刚发布的代码后,打开旧文件,运行“COBAGET”。这将把一些东西复制到你的剪贴板,并在你的“C:\”目录中创建一个文本文件。
 
打开新文件,将所有内容放在其中,然后运行“COBAPUT”。这应该会将一堆东西粘贴到你的模型空间中,并更新标题栏中的许多信息。我不确定它是否能得到所有东西,甚至它是否能正常工作,因为我不在你们的终端和所有的爵士乐。但是,希望Lisp程序的魔力能够显现出来。
 
让我知道它是否有效,或者它是否节省了一些时间^^
回复

使用道具 举报

1

主题

8

帖子

7

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 15:21:21 | 显示全部楼层
 
非常感谢您的回复,根据您的指示,我从lisp获得以下信息。(从命令窗口复制)。
 
cobaget;
 
选择对象:M.GOODWIN
五十、 格里斯利
2.5:1
2.5:1
DRG公司
A107号
描述
箭头切口详图
COBA公司
各种
毫米
毫米
K、 D.READ阅读
K、 D.阅读
材料
见A100
黑色/灰色
见A100
模具
; 错误:错误的参数类型:streamp nil
命令:
 
cobaput;
 
coba。lsp已成功加载。
 
命令:
命令:
命令:cobaput
; 错误:错误的参数类型:FILE nil
命令:
 
我可以在命令窗口中看到属性结果,这就是我要找的。
 
还需要尝试将实际尺寸配置文件放入新的Drgsheet模型空间。今天和他们坐下来后,我现在已经设置好了表单,因此所有纸张选项卡都有视口/笔层等。我甚至为轮廓设置了一个中心点,这意味着每张纸都有一个漂亮的中心轮廓。我再次清除了它,所以所有层都不正确。
 
我们之前考虑过是否可以打开目录a101-a、102-c等a456-f(所有随机修订)中的每个文件,然后创建一个新图形(从新的coba模板)并将其命名为a101-a*??
 
真的需要用lisps重新开始,只做了几个简单的,那是在90年代初
 
干杯
 
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-5 00:05 , Processed in 0.325815 second(s), 72 queries .

© 2020-2025 乐筑天下

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