你好@达维塔夫亚搏在线,
谢谢你,布里连解决方案!可能我的最后一个问题是,是否有可能在输出图形中保留与源图形中相同数量的属性?
我遇到的问题是,源文件中的块属性数与FME的输出文件中的块属性数不同。我可以在下面的图片上演示它:
以及从FME导出的具有不同数量属性的图形:
我需要的是导出块动态地具有与其源相同数量的属性,并且,我将向这个块添加一个新的(KKS)属性。
我附上了图纸,可以演示它。
非常感谢你的想法!
卢布
您好!@拉扎鲁博米尔,
工作区已设置为使用要素类型扇出将所有要素写回其相应的图层。动态模式更适用于GIS或数据库格式的属性模式。我附加了一个稍微修改过的版本,它将向所有块添加KKS属性。
你好@达维塔夫亚搏在线,
拜托,我还有一个关于块(插入)的问题。您提出的解决方案是否适用于动态模式的writer?
为了更好的想象-我画了很多块,我想把这些块导出到新的绘图中,保留所有的属性和每个块的值,从源绘图+我想添加一个我的用户定义的属性到每个块。我认为writer上的动态模式是通过编写一个用户定义的属性来解决的,但它不起作用:-(
我有许多具有包含不同属性的块定义的图形。
有人能帮我吗?
非常感谢!
卢布
你好@达维塔夫亚搏在线,
非常感谢你,这绝对是我需要的。我不清楚如何使用autocad_visible和autocad_invisible属性。
你好@达维塔夫亚搏在线,
是的,我明白。但我使用了建议的解决方案,正如您在附加的工作区中所看到的,但没有成功。你可以在数据中试试,我在上一篇文章中附上了。
原因很简单-源文件的模型空间中使用的块如下所示:
但这种类型的块定义如下:
这是由于块的图形没有通过ACAD中的ATTSYNC命令同步到块定义。
所以,如果我使用源文件作为writer的模板文件,block将如下所示:
有些部分是填充的,这取决于属性的内容。
我只需要两件事-导出的块应该看起来像上面第一张图片中的块(与块同步之前的源文件中的设计相同),而且我想为这个块创建新的属性。可以吗?
非常感谢!
卢布
您好!@拉扎鲁博米尔,
请将AutoCAD writer中的模板文件设置为源DWG文件。这样,当写出新的DWG文件时,它将使用所需的块定义。
对于没有正确模板文件的DWG->DWG转换,这也是一种很好的技术。
图层、线型和块定义将从源文件复制,而不是从数据本身复制,除非选择将“保留样板文件模型空间数据”设置为“是”。
你好@达维塔夫亚搏在线,
非常感谢您的回复。无论如何,我需要知道的是,如果FME desktop能够创建一个属性并将其导出到块,那么块定义与模型空间的设计是不同的。
我附上了压缩文件。有一个源文件-DWG,其中包含3个块,但它们的设计与块定义不同,因为它们的设计与当前块定义不同步。如果我使用test_2.fmw并尝试将源文件DWG转换为导出文件DWG,您可以在后缀为“_doplneni”的导出文件中看到,块的设计与源文件中的块完全不同。这是由模板文件引起的,模板文件与源文件相同,但块定义与模型空间中的块设计不同。但这对我不好,因为我需要在导出的文件3块与源文件相同的设计,但有一个新的属性。关键是积木的设计。。。请问,这个问题怎么解决?
非常感谢!
卢布
您好!@拉扎鲁博米尔,
FME的AutoCAD编写器将输出要素类型上定义的任何属性写入作为块放置的任何点。
如果功能属性已经在块上定义,FME只需填写该属性的值。如果功能属性未在块上定义,FME将使用功能属性值在块上创建一个新的不可见属性。默认情况下,此属性将位于块插入点。
可以使用其他格式属性控制FME创建的块属性的可见性和位置,详细信息请参见:https://docs.亚搏在线safe.com/fme/html/fme_Desktop_Documentation/fme_ReadersWriters/acad/Inserts.htm.
可以使用DWGStyler变换器将点要素转换为块以输出到AutoCAD。
此时,放置在层“0”上的块不能创建新属性,但所有其他层都可以。