Visual studio DGML图形坐标的方向是什么?

Visual studio DGML图形坐标的方向是什么?,visual-studio,dgml,Visual Studio,Dgml,上下文 我正在尝试将DGML图形转换为SVG。我使用Javascript读取和解析DGML节点和链接,使用Jquery。我使用Visual Studio 2017创建了一个DGML图(它有一个交互式内置编辑器)。本质上,我需要在DGML图上的节点位置和生成的SVG之间创建一个映射。我已经成功地对节点和链接的每个属性进行了转换,除了名为边界的属性 <?xml version="1.0" encoding="utf-8"?> <DirectedGraph xmlns="http:/

上下文

我正在尝试将DGML图形转换为SVG。我使用Javascript读取和解析DGML节点链接,使用Jquery。我使用Visual Studio 2017创建了一个DGML图(它有一个交互式内置编辑器)。本质上,我需要在DGML图上的节点位置和生成的SVG之间创建一个映射。我已经成功地对节点和链接的每个属性进行了转换,除了名为边界的属性

<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="http://schemas.microsoft.com/vs/2009/dgml">
<Nodes>
<Node Id="Node1" Background="#FF000000" Bounds="289.142857142857,-914.285714285714,56.9200000000001,25.96" Label="node 1" UseManualLocation="True" />
<Node Id="Node2" Bounds="-99.1466388157435,-813.468571428572,56.9200000000001,25.96" Label="node 2" UseManualLocation="True" />
<Node Id="Node3" Bounds="165.353095238095,-821.948571428572,56.9200000000001,25.96" Label="node 3" UseManualLocation="True" />
<Node Id="Node4" Bounds="231.884895804269,-672.637129778181,56.92,25.96" Label="node 4" UseManualLocation="True" />
<Node Id="Node5" Bounds="126.293653230212,-514.368957318116,56.9200000000001,25.96" Label="node 5" UseManualLocation="True" />
<Node Id="Node6" Bounds="513.21231765747,-699.551714460973,56.9200000000001,25.96" Label="node 6" UseManualLocation="True" />
</Nodes>
<Links>
<Link Source="Node1" Target="Node2" Bounds="-33.5154810441621,-893.916239433358,322.658338187019,83.7763765262094" />
<Link Source="Node1" Target="Node3" Bounds="218.428553771979,-888.325714285714,81.7729515442388,60.9960031621974" />
<Link Source="Node2" Target="Node4" Bounds="-42.8686314368827,-788.653915128306,267.113829712029,113.638782142621" />
<Link Source="Node2" Target="Node5" Bounds="-60.9032254171191,-787.508586425781,200.456326731834,265.952512098603" />
<Link Source="Node3" Target="Node4" Bounds="199.596870550233,-795.988597412109,51.3011424145167,115.130629087374" />
<Link Source="Node4" Target="Node5" Bounds="168.40836594804,-646.677165527344,83.2767077301747,124.821483021298" />
<Link Source="Node4" Target="Node6" Bounds="288.80489440918,-682.991837277453,215.448314485295,20.6119078319973" />
<Link Source="Node6" Target="Node1" Bounds="337.645038336076,-882.098554229514,190.482965266866,182.54683792092" />
</Links>
<Properties>
<Property Id="Background" Label="Background" Description="The background color" DataType="System.Windows.Media.Brush" />
<Property Id="Bounds" DataType="System.Windows.Rect" />
<Property Id="Label" Label="Label" Description="Displayable label of an Annotatable object" DataType="System.String" />
<Property Id="UseManualLocation" DataType="System.Boolean" />
</Properties>
</DirectedGraph>

我在“Bounds”的属性标签中看到,数据类型是
System.Windows.Rect
,它有一个构造函数
Rect(Double, 双重的 双重的 双精度)
-初始化具有指定x坐标、y坐标、宽度和高度的Rect结构的新实例

由于所有节点都具有相同的大小,因此假设最后两个参数是宽度和高度是正确的

问题

DGML的图形坐标系是如何定位的?例如,SVG图形开始时与大多数CG坐标类似,即左上角原点;正X向右,正Y向下。我在DGML参考中找不到任何关于此的信息


看你的图表,我认为Y轴是倒转的(自上而下),X轴是经典的(从左到右)。坐标的起点在节点2和节点5之间,位于图表视图底部的某个位置。

My在“共享”工具栏项下提供了“另存为SVG”选项