在AutoC中创建图纸列表
大家好,我在一家结构工程公司工作,我们的很多工作都有100多张图纸。通常我们会创建一个图纸登记簿,在Excel中显示我们所有的图纸及其修订版,但我们也希望在头版上有一个图纸列表,这样当人们收到我们的图纸时,他们不需要查看登记簿来找到每个图纸。过去,我们曾尝试将excel电子表格链接到Autocad,但效果并不理想。我所希望的是一个宏/lisp,它将从特定文件夹中读取DWG名称,并在autocad中创建文本,以放置在我们的第一个图形上。例如,我们希望01号图纸上有图纸列表。我们的DWG文件的命名类似于以下内容:200902-A-Level 1 Plan。dwg(作业编号修订图纸名称。我希望有某种方式可以提取信息(减去作业编号)并将其输入到第一张图纸的文本中。或者它可以从标题栏中读取图纸名称和修订。显然,宏只能从该作业文件夹中读取。
还有其他人做过类似的事情吗?还是有更好的选择?正如我所说,iver尝试将excel电子表格导出到第一张图纸中,但我们在尺寸、裁剪等方面存在问题。
谢谢你的帮助 您没有插入excel,而是考虑将数据处理到AutoCAD。
打开excel工作表
突出显示数据
使用CTRL+C或“编辑副本”或任何用于复制到剪贴板的工具
在AutoCAD中,转到“编辑”菜单并选择“过去特殊”
在对话框中,从列表中选择AutoCAD图元
单击“确定”并将其停驻。
需要全部10秒。 是的,这是真的,但比起任何时候我们发布图纸,我们必须这样做,我们每天都发布图纸。我想要的东西,我不必打开excel,我宁愿只发行autocad图纸,而不担心任何其他程序。然后,我还必须将任何新的绘图添加到excel中,这意味着将它们打印出来并添加修订;但是我确信有一种方法可以让电脑帮我做这件事。 你考虑过使用“SheetSet”吗?使用图纸集选项可以轻松完成此操作,但进入该阶段将非常耗时,必须重新创建使用的标题栏(插入字段而不是属性),然后在处理项目时,将所有图形(可以在现有图形中链接)链接到图纸集。这样,您可以选择将“自动填充”图形列表(以及其中的一系列其他选项)创建为表格格式。此表可以通过右键单击并使用“自动更新数据链接”轻松更新。
在不太超前的情况下,您可能希望查看“Sheetset”。 我会花时间设置图纸集,但这应该可以让你开始。。。
(defun c:Dir2Text (/ #Pnt1 #Pnt2 #List #String)
(cond
((and (setq #Pnt1 (getpoint "\nSpecify first corner: "))
(setq #Pnt2 (getcorner #Pnt1 "\nSpecify opposite corner: "))
) ;_ and
(setq #List (vl-sort (vl-remove-if-not
'(lambda (x) (wcmatch x "*.dwg"))
(vl-directory-files (getvar 'dwgprefix))
) ;_ vl-remove-if-not
'<
) ;_ vl-sort
#String ""
) ;_ setq
(foreach x #List (setq #String (strcat #String (vl-filename-base x) "\\P")))
(AT:MText #Pnt1 #String (abs (- (car #Pnt1) (car #Pnt2))) nil 1)
)
) ;_ cond
(princ)
) ;_ defun
您将需要此子例程来创建文本:http://www.cadtutor.net/forum/showpost.php?p=278945&postcount=40 @加扎尔普:
我完全明白你的意思!我到处寻求帮助,但并没有真正得到答案。所以我想试试我自己的。
首先是图纸集:它的工作方式与您和我想要的不同。我们需要一张rgister表,从标题栏中收集所有信息。
示例(只是一个简单的想法):
编号描述。日期大小
01-04一楼01-10-2009 ISOA1
02-04二楼01-10-2009 ISOA1
03-04三楼01-10-2009 ISOA1
04-04 4楼01-10-2009 ISOA1
每当修改其中一个标题栏时,应在寄存器中进行更改。
这就是你的意思,我说的对吗?
我的猜测是,这可以通过Autocad中的“eattext”命令来完成。在我的情况下它已经起作用了,只是有些问题我无法解决。(排序表等)
现在,我不能给你一个真正的解决方案,但你应该尝试使用这个命令。请随时问我,因为我只是需要你来解决这个问题。
也可以用关键词“eattext”或“drawinglist”搜索论坛。
听着,我一直在努力
http://www.cadtutor.net/forum/showthread.php?t=37813&highlight=eattext&page=3 球童学家-我研究过其他东西的床单套装,我不能说我是他们的粉丝。他们需要花很多时间来适应,然后我又找了20个人来教,所以我认为这不是最好的解决方案。不过谢谢你。
Alanjt-这个lisp到底做什么?我该如何合并它?
马可-你是对的,这就是我想要的,但它不一定要从标题栏中阅读。我们的图纸名称还包括图纸编号、标题和版本,因此如果可能,可以从图纸名称中读取。我很快就会使用eattext命令,谢谢 马可,我玩过eattext,效果很好。我发现了几个你可能知道如何克服的问题:
我从标题栏中提取,我们的图纸名称超过两行。因此,属性为“图纸标题线1”和“图纸标题线2”。提取此信息时,autocad将其放入表格中,但带有行“绘图标题行1”和“绘图标题行2”,而我更喜欢在表格中仅称为“绘图标题”,两个标题都位于该行下。关于如何解决这个问题有什么想法吗?
2.到目前为止,我唯一的另一个问题是,例如,我这样做是为了一份工作,然后再添加一张图纸。而不是再次执行此命令,或手动键入新图形,有方法更新吗?也就是说,只需将一张图纸按顺序添加到此表中?如果我第一次选择要从中提取的图形时,可以选择整个作业目录,那就太好了。这样以后,当我选择表格并“刷新”时,它会添加我添加的任何其他图形,因为它知道从目录中更新。 我会尽量在今晚或者明天发布反应。(现在没有时间这么做……)
有一个问题,你来自(国家)哪里? 你真的试过吗?
页:
[1]
2