2014-10-11 38 views
2

我正在尋找路徑標記和幾何之間的轉換。我找到了一個好post顯示如何從路徑標記得到幾何:WPF;在代碼之後的代碼中轉換路徑標記語法和幾何

路徑標記語法幾何體

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 = ?? 

任何想法如何將幾何轉換爲其等價的路徑標記?

回答

3

什麼

Geometry myGeometry = //some geometry 
string pathMarkup = myGeometry.ToString(); 
2

擴展在Hamlet Hakobyan's answer,可惜的ToString()方法只與路徑幾何的作品。因此,爲了將這一般應用於所有幾何類型:

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();