GISdude 发表于 2022-7-6 06:39:42

提取并复制属性和

大家好,
我刚刚接到了所有任务的母亲。我有大约490个dwg文件,它们在模型空间中有一个标题栏,这是一个旧的标题栏,我被告知获取dwg编号并将其放置在模型空间中的X、Y位置。
据我所知,所有490个文件的标题栏是完全相同的,但是,图纸编号都不同。
我无法打开所有490张图纸,那会让我发疯。如果有人能为我指明正确的方向,那就太好了,否则。。。
 
我对伪代码有一个基本的想法,我正在脑海中制定一些代码,但如果有人有更好的想法。。。
 
非常感谢您的帮助,

pBe 发表于 2022-7-6 07:04:09

LM的ODBX包装器
 
LM属性函数
 
Afralisp AddTextMethod
 
欢迎来到CADTutor GISdude

GISdude 发表于 2022-7-6 07:31:07

pBE,我在看OBJECTDBX包装器的代码。注释说“需要参数的函数(VLA文档对象)。我假设该对象在MAP3D或vanilla AutoCAD中?
 
请求用户输入以浏览文件目录的代码太棒了!

pBe 发表于 2022-7-6 07:49:19

 
确实如此。这是我们的LM
 
 
其实不是这样,在这种情况下,只有一个参数的“函数”是VLA文档对象。通常,在打开/激活图形上运行的例程中,您会看到:
 
(setq aDoc(vla get ActiveDocument(vlax get acad object)))
 
现在,在非打开/非活动图形上检索此VLA文档的任务属于函数LM:ODBX。
 
它将为helper函数提供“doc”参数
 
(LM:ODBX
   '(lambda ( doc ) (vla-get-count (vla-get-layouts doc)))
      nil
      nil
   )
 

(defun _lockalllayers ( doc ); function with a single argument
       (vlax-for layer (vla-get-layers doc)
         (vla-put-lock layer :vlax-true)
       )
   )

   (LM:ODBX '_lockalllayers nil t)
 
知道了?
 
奥:我已经有一段时间没有访问LM的网站了。包装纸和我以前看到的完全不同。更干净、更具描述性。
页: [1]
查看完整版本: 提取并复制属性和