はい、GraphicsPath.PathPoints
で可能ですが、GraphicsPath.PathTypes
の2番目の配列を理解する必要があります。すべてのポイントは、多分このように、ライン座標の簡単なポイントアレイとして追加されている場合のみ
:
List<Point> points = new List<Point>();
.. // add some points!
GraphicsPath gp = new GraphicsPath();
gp.AddLines(points.ToArray());
あなたは/使用多くの手間をかけずにポイントを変更することができるようになります。
あなたはを経由して、それらを追加した場合、形状を丸め..
gp.AddEllipse(ClientRectangle);
よう..youは、様々なタイプを理解する必要があります!あなたが定期的にポイントを得るが、
0を言うバイトのタイプとなりますgp.AddRectangle(ClientRectangle);
としてそれらを追加する場合は、他の曲線gp.AddCurves(points.ToArray());
としてそれらを追加するときも同様です - ポイントはスタートであることを示します数字の
だからあなたの場合には、あなたはこのようなあなたのポイントの第一の取得時:
ところで
Console.WriteLine(gp.PathPoints[1].ToString());
:GraphicsPath.Location
のようなものはありません。 - ポイントは、エンドポイントまたはコントロールポイントであることを示し
3:しかし、あなたは(!円弧と楕円を含む)すべての丸みを帯びた形状、実際には、ベジエ点ののみから構成されていることGraphicsPath.GetBounds()
便利..
ノートを見つけることができますPathPoints
であることを意味 立方ベジェスプライン
の端点及び制御点を交互。
出典
2016-08-07 16:30:49
TaW