zoukankan      html  css  js  c++  java
  • c#窗体程序绘制简单心形

    分析思路:

      

      两个圆形和一个矩形如图叠加再逆时针旋转45°,就能得到一个极其简陋的心。

    我们只需要将圆心放在矩形上边中点和右边中点即可。

    代码如下:

     

     1         private void button1_Click(object sender, EventArgs e)
     2         {
     3             //因为是在panel控件中绘制的,所以在panel中创建画布,这个看个人喜好
     4             Graphics gh = panel1.CreateGraphics();//创建画布
     5             Pen p = new Pen(Color.Red, 3);//创建画笔
     6             SolidBrush sb = new SolidBrush(Color.Red);//创建一个上色用的刷子
     7             int x=25,y=50,a=100,h=a;//定义矩形的初始坐标,边长和高
     8             gh.RotateTransform(-45);//将画布逆时针旋转45度
     9             gh.TranslateTransform(0, 200);//将整体坐标向下移动200像素
    10             gh.DrawRectangle(p,x,y,a,h);//使用画笔绘制矩形
    11             gh.DrawEllipse(p, x + a / 2, y, a, h);//绘制第一个圆形
    12             gh.DrawEllipse(p, x, y-h / 2, a, h);//绘制第二个圆形
    13             
    14 
    15             //用刷子分别给三个图形上色
    16             gh.FillRectangle(sb, x, y, a, h);
    17             gh.FillEllipse(sb, x + a / 2, y, a, h);
    18             gh.FillEllipse(sb, x, y - h / 2, a, h);
    19         }

    点击按钮进行绘制。

    颜色可以自己修改,也可以绘制渐变色。闪人,跑路回宿舍,万一被锁在教学楼就尴尬了,哈哈。(可以加工加工给妹子看,但是过于简陋,所以有风险,三思后行。)

  • 相关阅读:
    ZOJ 2601 Warehouse Keeper
    POJ 2175 Evacuation Plan
    NYIST 1108 最低的惩罚
    二进制 与 十进制 互转
    javascript学习(9)——[设计模式]单例
    2013 Changsha Regional 一样的木板一样的气球
    muduo简化(1):Reactor的关键结构
    Oracle 11g New 热补丁
    跳转表实例
    [置顶] android 心跳包的分析
  • 原文地址:https://www.cnblogs.com/wangxiao666/p/12088431.html
Copyright © 2011-2022 走看看