国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > 綜合 > 正文

C#繪制螞蟻線(xiàn)

2024-07-21 02:25:49
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
菜鳥(niǎo)學(xué)堂:

delegate void lineddaproc(int x, int y, intptr lpdata);
[dllimport("gdi32.dll")]
static extern int linedda(int nxstart, int nystart, int nxend, int nyend,
    lineddaproc lplinefunc, intptr lpdata);
 
private const byte pt_closefigure = 1;
private const byte pt_lineto = 2;
private const byte pt_bezierto = 4;
private const byte pt_moveto = 6;
 
[dllimport("gdi32.dll")]
static extern int setpixel(intptr hdc, int x, int y, int crcolor);
 
graphicspath graphicspath = new graphicspath();
private int counter = 0;
private intptr graphicshandle = intptr.zero;
//設(shè)計(jì)zswang 2007-04-30 wjhu111#21cn.com 尊重作者,轉(zhuǎn)貼請(qǐng)注明出處
 
private void button1_click(object sender, eventargs e)
{
    graphicspath.clearmarkers();
    graphicspath.addrectangle(new rectangle(10, 10, 100, 100));
    timer1.interval = 100;
    timer1.enabled = true;
}
 
private void movingdots(int x, int y, intptr lpdata)
{
    counter = (counter + 1) % 15;
    color vcolor;
    if (counter < 5)
        vcolor = color.white;
    else if (counter < 12)
        vcolor = color.red;
    else vcolor = color.blue;
    setpixel(graphicshandle, x, y, vcolor.r | vcolor.g << 8 | vcolor.b << 16);
}
 
private void timer1_tick(object sender, eventargs e)
{
    graphicshandle = graphics.fromhwnd(handle).gethdc();
    for (int i = 0; i < graphicspath.pathpoints.length; i++)
    {
        if (graphicspath.pathtypes[i] == (byte)(pt_closefigure | pt_lineto))
        {
            for (int j = i; j >= 0; j--)
            {
                if (graphicspath.pathtypes[j] == pt_moveto)
                {
                    linedda(
                        (int)graphicspath.pathpoints[i].x,
                        (int)graphicspath.pathpoints[i].y,
                        (int)graphicspath.pathpoints[j].x,
                        (int)graphicspath.pathpoints[j].y,
                        movingdots, intptr.zero);
                    break;
                }
            }
            continue;
        }
        if (i == graphicspath.pathpoints.length - 1)
            linedda(
                (int)graphicspath.pathpoints[i].x,
                (int)graphicspath.pathpoints[i].y,
                (int)graphicspath.pathpoints[0].x,
                (int)graphicspath.pathpoints[0].y,
                movingdots, intptr.zero);
        else
            linedda(
                (int)graphicspath.pathpoints[i].x,
                (int)graphicspath.pathpoints[i].y,
                (int)graphicspath.pathpoints[i + 1].x,
                (int)graphicspath.pathpoints[i + 1].y,
                movingdots, intptr.zero);
    }
}


 

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 武宁县| 哈巴河县| 惠安县| 龙井市| 都兰县| 固镇县| 社旗县| 和静县| 通海县| 宁海县| 将乐县| 成武县| 西乌| 湾仔区| 遵化市| 长沙市| 永顺县| 枣强县| 华容县| 普定县| 黑河市| 奉节县| 南涧| 将乐县| 惠安县| 峡江县| 清丰县| 临湘市| 分宜县| 徐州市| 灵璧县| 饶河县| 肃宁县| 芷江| 邵阳市| 福清市| 梧州市| 申扎县| 铁岭市| 阿荣旗| 新巴尔虎左旗|