问题描述
我使用yED软件在图形网络上工作,现在需要将其导出到QGIS和AutoCAD。
由于yED无法导出为.shp和.dwg之类的格式,因此我想构建一个.xls文件,该文件在一张纸中包含每个带有其坐标(x和y)的nodeID和一个带有其起始/结束nodeID的edgeID在另一张纸上。这在Excel中很容易做到,使用开发人员栏打开graphml文件(如其他问题所建议)。 问题在于,由mappingXML生成的树结构不会读取自定义属性的值,也不会读取我添加的标签,而不会读取nodeID和几何(以及其他我不需要的东西),因此我在yED中丢失了大部分工作
是否有更简便的方法将文件从.graphml转换为.dwg和.shp格式?
例如,在下面粘贴:部分来自mappingXML的嵌套结构和部分源graphml文件,如您所见,mappingXML识别自定义属性的名称(“ d3”,“ d4”等),但不能识别其值(> 1 161.22
nested structure from mappingXML
<node id="n0">
<data key="d3" xml:space="preserve">1</data>
<data key="d4" xml:space="preserve">161.22</data>
<data key="d5" xml:space="preserve">506812.504</data>
<data key="d6" xml:space="preserve">5044095.345</data>
<data key="d7" xml:space="preserve">-5044095.345</data>
<data key="d8">
<y:ShapeNode>
<y:Geometry height="10.0" width="10.0" x="506839.792" y="-5044044.282"/>
<y:Fill color="#008080" transparent="false"/>
<y:BorderStyle color="#000000" raised="false" type="line" width="1.0"/>
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.701171875" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="10.673828125" x="10.0" xml:space="preserve" y="-22.701171875">1<y:LabelModel><y:SmartNodeLabelModel distance="4.0"/></y:LabelModel><y:ModelParameter><y:SmartNodeLabelModelParameter labelRatioX="-0.5" labelRatioY="0.5" nodeRatioX="0.5" nodeRatioY="-0.5" offsetX="0.0" offsetY="-4.0" upX="0.0" upY="-1.0"/></y:ModelParameter></y:NodeLabel>
<y:Shape type="ellipse"/>
</y:ShapeNode>
</data>
希望这个问题也对其他用户也很有趣, 感谢您的任何建议。
编辑:事实证明FME可以不用Excel就能完成工作,在XMLreader的选项中映射对象,并且源文件的一部分将作为要素属性导入,作为文本字符串进行操作,并提取所需的信息,此处进一步:https://community.safe.com/s/question/0D54Q0000850KShSAM/build-network-graph-from-table-with-nodes-coordinates-and-start-nodeend-node
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)