关闭

GDI+ 画箭头线的方法

标签: gdi+float
4640人阅读 评论(0) 收藏 举报

有两种方法,一种是以float做参数的,一种是以int做参数的。

 private void DrawTrigon(Graphics g,Pen pen,float x1,float x2,float y1,float y2,float arrowWidth,float ArrowLength)
        {
            pen.EndCap = System.Drawing.Drawing2D.LineCap.ArrowAnchor;
            pen.CustomEndCap = new AdjustableArrowCap(arrowWidth, ArrowLength, true);
            //pen.StartCap = LineCap.Custom;
            //pen.EndCap = LineCap.Custom;
            g.DrawLine(pen, x1, x2, y1, y2);
           
        }
        private void DrawTrigon(Graphics g, Pen pen, float x1, float x2, float y1, float y2)
        {
            DrawTrigon(g, pen, x1, x2, y1, y2, 3, 4);
        }

 

 


        //
        private void DrawArrow(Graphics g, Pen linepen, int x1, int x2, int y1, int y2)
        {
            g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

            linepen.CustomEndCap = new System.Drawing.Drawing2D.AdjustableArrowCap((float)(linepen.Width * 3), (float)(linepen.Width * 4), true);
            g.DrawLine(linepen, new Point(x1,  x2), new Point( y1,y2));
        }
        private void DrawArrow(Graphics g, Pen linepen, int x1, int x2, int y1, int y2, float arrowWidth, float ArrowLength)
        {
            g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

            linepen.CustomEndCap = new System.Drawing.Drawing2D.AdjustableArrowCap((float)(linepen.Width * arrowWidth), (float)(linepen.Width * ArrowLength), true);
            g.DrawLine(linepen, new Point( + x1,  x2), new Point( y1, y2));
        } 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:318978次
    • 积分:4104
    • 等级:
    • 排名:第7793名
    • 原创:79篇
    • 转载:44篇
    • 译文:2篇
    • 评论:88条
    最新评论