本文整理汇总了C#中System.Drawing.Drawing2D.GraphicsPath.Triangulate方法的典型用法代码示例。如果您正苦于以下问题:C# GraphicsPath.Triangulate方法的具体用法?C# GraphicsPath.Triangulate怎么用?C# GraphicsPath.Triangulate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Drawing.Drawing2D.GraphicsPath
的用法示例。
在下文中一共展示了GraphicsPath.Triangulate方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FillPath
public override void FillPath(Brush brush, GraphicsPath path)
{
var solidBrush = (SolidBrush)brush;
var vertices = path.Triangulate(v => new GLPoint((float)v.X, (float)v.Y, 0.0f, solidBrush.Color));
_canvas.DrawTriangles(vertices.ToArray(), false);
}
示例2: FillPath
public override void FillPath(Brush brush, GraphicsPath path)
{
var vertices = path.Triangulate(v => new SharpDX.Vector2((float)v.X, (float)v.Y));
var triangles = new List<SharpDX.Direct2D1.Triangle>();
for (int i = 0; i < vertices.Count; i += 3)
{
SharpDX.Direct2D1.Triangle triangle = new SharpDX.Direct2D1.Triangle();
triangle.Point1 = vertices[i];
triangle.Point2 = vertices[i + 1];
triangle.Point3 = vertices[i + 2];
triangles.Add(triangle);
}
using (var mesh = new SharpDX.Direct2D1.Mesh(_renderTarget, triangles.ToArray()))
{
var oldMode = _renderTarget.AntialiasMode;
_renderTarget.AntialiasMode = SharpDX.Direct2D1.AntialiasMode.Aliased;
_renderTarget.FillMesh(mesh, new SharpDX.Direct2D1.SolidColorBrush(_renderTarget, ((SolidBrush)brush).Color.ToColor4()));
_renderTarget.AntialiasMode = oldMode;
}
}