WPF;在代码后面的路径标记语法和几何之间进行转换

时间:2014-10-11 09:10:28

标签: c# wpf geometry

我正在寻找路径标记和几何之间的转换。我找到了一个很好的post,展示了如何从路径标记中获取Geometry:

几何路径标记语法

string pathMarkup = "M 100,200 C 100,25 400,350 400,175 H 280";
Geometry myGeometry = Geometry.Parse(pathMarkup);

几何到路径标记语法

现在如果我想从现有几何体中获取路径标记怎么办?

Geometry myGeometry = //some geometry
string pathMarkup = ??

知道如何将几何转换为等效的路径标记吗?

2 个答案:

答案 0 :(得分:3)

怎么样?
Geometry myGeometry = //some geometry
string pathMarkup = myGeometry.ToString();

答案 1 :(得分:2)

扩展Hamlet Hakobyan's answer,遗憾的是ToString()方法仅适用于Path Geometries。因此,为了将其一般地应用于所有几何类型:

Geometry myGeometry = PathGeometry.Parse("M 8, 0 L 2,25 16,25 Z");
string pathString = myGeometry.ToString(); // Works only for PathGeometry

GeometryGroup geomGroup = new GeometryGroup();
geomGroup.Children.Add(myGeometry);
geomGroup.Transform = myTransform;

string pathString = PathGeometry.CreateFromGeometry(geomGroup).ToString();