CesarA 发表于 2022-7-5 18:10:55

其他纹理时自动编辑多行文字

我在autocad中有下表,其中每个元素都是单个对象
 

 
和Lx=Lx1+Lx2,其中它们的值显示为多行文字对象
 
是否可以将Lx列值配置为自动编辑其字符串,以便显示Lx1和Lx2的总和?就像excel表格一样。我不确定这在autolisp中是否可行,但欢迎提供任何提示。
 
非常感谢。

zaphod 发表于 2022-7-5 18:17:27

这可以用“fields”来完成,也许有一个lisp大师有更好的方法。

Lee Mac 发表于 2022-7-5 18:27:35

使用表格对象显示数据,然后使用公式字段(类似于Excel公式)。

CesarA 发表于 2022-7-5 18:33:22

所以我有两个表,一个用作excel,另一个用于绘制,其中每个文本对象都链接到excel,对吗?我试着直接用这个总数,但他不让我用。我认为这是因为他将文本值识别为字符串,而不是数字。

Lee Mac 发表于 2022-7-5 18:39:33

 
不,我建议您使用AutoCAD表格对象来显示数据,而不是“分解”表格(其中每个项目都是一个单独的对象)。
 
考虑到AutoCAD表格对象提供的广泛功能,我真的无法理解为什么会选择使用线条和文字显示表格数据。

CesarA 发表于 2022-7-5 18:45:33

老板并不是真的下命令,但我想把对我们使用的东西的影响降到最低。此外,autocad创建的表格也很可怕。
 
出于好奇,我尝试检查包含字段的文本对象的组码。然而,我找不到该字段的任何引用。该字段按我的计划链接到另一个表,并作为“table(8796083039968).D4”链接到整个autocad表。是否可以通过autolisp编辑此链接?
 
非常感谢。
 
没关系,我发现了这个:http://www.cadtutor.net/forum/showthread.php?44618-现场编辑或现场输入自动化
马上回来

Lee Mac 发表于 2022-7-5 18:52:50

 
为什么呢您可以很容易地配置表格样式,以显示与图像中的表格相同的AutoCAD表格。

CesarA 发表于 2022-7-5 18:56:27

稍后我会检查它,我准备好了编辑字段链接的挑战。
 
我发现这段代码是塔瓦特在2011年写的https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/autolisp-and-fields/td-p/3055356
 

(vla-addMText space
(vlax-3d-point pt) 4. (strcat "%<\\AcObjProp Object(%<\\_ObjId "(itoa (vla-get-ObjectID (vlax-ename->vla-object ss)))">%).Measurement \\f \"%lu6\">%")
)

 
显然,vla addMtext命令创建了一个具有我们想要的任何属性的多行文字,包括字段链接。难道不存在可以设置MTEXT或PUTMEXT的命令吗?
我有一个包含vl和vla命令列表的文件,但除了“add”之外,与mtext或dtext没有任何关系

Lee Mac 发表于 2022-7-5 19:02:47

vla put文本字符串

CesarA 发表于 2022-7-5 19:05:23

谢谢李,是时候打开一个新的线程了
页: [1] 2
查看完整版本: 其他纹理时自动编辑多行文字