本文整理汇总了C#中Graphics.LineTo方法的典型用法代码示例。如果您正苦于以下问题:C# Graphics.LineTo方法的具体用法?C# Graphics.LineTo怎么用?C# Graphics.LineTo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Graphics
的用法示例。
在下文中一共展示了Graphics.LineTo方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestLineCap
protected void TestLineCap(Graphics g)
{
for (int i = 0; i < 3; i++)
{
g.MoveTo(10, i * 4);
g.LineTo(18, i * 4);
g.StrokeColor = new ScenicColor(0.2f, 1.0f, 0.8f, 1.0f);
g.LineWidth = 0.1f;
g.LineJoin = LineJoinStyle.ROUND_JOIN;
if (i == 0)
g.EndCap = LineCapStyle.BUTT_CAP;
else if (i == 1)
g.EndCap = LineCapStyle.ROUND_CAP;
else
g.EndCap = LineCapStyle.SQUARE_CAP;
g.Stroke();
}
}
示例2: drawEnd
public void drawEnd(Graphics g)
{
if (_sampleNum < 2) return;
else if (_sampleNum == 2)
{
g.MoveTo(_x0, _y0);
g.LineTo(_x1, _y1);
return;
}
// 最後の1点まで線を引くために、前回計算した係数の値をそのまま利用する。
float dx = _x2 - _x1;
float dy = _y2 - _y1;
float dt10 = _t1 - _t0;
float dt21 = _t2 - _t1;
int n = ((int)(0.5f * Mathf.Sqrt(dx * dx + dy * dy)) | 0) + 1;
g.MoveTo(_x1, _y1);
for (int i = 1; i <= n; i++)
{
float tt = dt10 + (dt21 * i / n);
float tt2 = tt * tt;
float tt3 = tt2 * tt;
float xt = _ax * tt3 + _bx * tt2 + _u0 * tt + _x0;
float yt = _ay * tt3 + _by * tt2 + _v0 * tt + _y0;
g.LineTo(xt, yt);
}
}
示例3: draw
public void draw(Graphics g, Color color)
{
if (_sampleNum < 3) return; // 線が引けない
float dx1 = _x1 - _x0;
float dy1 = _y1 - _y0;
float dt1 = _t1 - _t0;
// 曲線の分割数 直線距離ピクセル数の半分とした
// int n = ( (int)(0.5f * Mathf.Sqrt(dx1 * dx1 + dy1 * dy1)) | 0) + 1;
int n = ( (int)(0.25f * Mathf.Sqrt(dx1 * dx1 + dy1 * dy1)) | 0) + 1;
// n *= 2;
g.MoveTo(_x0, _y0, 0, color, 20);
for (int i = 1; i <= n; i++)
{
float tt = dt1 * i / n;
float tt2 = tt * tt;
float tt3 = tt2 * tt;
float xt = _ax * tt3 + _bx * tt2 + _u0 * tt + _x0;
float yt = _ay * tt3 + _by * tt2 + _v0 * tt + _y0;
g.LineTo(xt, yt, 0, color, 20);
}
}
示例4: TestLineColor
protected void TestLineColor(Graphics g)
{
Random rand = new Random(0);
for (int i = 0; i < 10; i++)
{
g.MoveTo(0, i * 2);
g.LineTo(8, i * 2);
g.StrokeColor = new ScenicColor((float)rand.NextDouble(), (float)rand.NextDouble(), (float)rand.NextDouble(), 1.0f);
g.LineWidth = 0.1f;
g.LineJoin = LineJoinStyle.ROUND_JOIN;
g.EndCap = LineCapStyle.BUTT_CAP;
g.Stroke();
}
}
示例5: TestLineWith
protected void TestLineWith(Graphics g)
{
Random rand = new Random(0);
for (int i = 0; i < 10; i++)
{
g.MoveTo(30, i * 2);
g.LineTo(38, i * 2);
g.StrokeColor = new ScenicColor(0.5f, 0.5f, 1.0f, 1.0f);
g.LineWidth = (i+0.1f)/10.0f;
g.LineJoin = LineJoinStyle.ROUND_JOIN;
g.EndCap = LineCapStyle.BUTT_CAP;
g.Stroke();
}
}
示例6: TestLineJoin
protected void TestLineJoin(Graphics g)
{
for (int i = 0; i < 3; i++)
{
g.MoveTo(20, i * 4);
g.LineTo(24, i * 4+2);
g.LineTo(28, i * 4);
g.StrokeColor = new ScenicColor(0.8f, 1.0f, 0.2f, 1.0f);
g.LineWidth = 0.1f;
g.EndCap = LineCapStyle.BUTT_CAP;
if (i == 0)
g.LineJoin = LineJoinStyle.BEVEL_JOIN;
else if (i == 1)
g.LineJoin = LineJoinStyle.MITER_JOIN;
else
g.LineJoin = LineJoinStyle.ROUND_JOIN;
g.Stroke();
}
}